1- use crate :: repositories:: UserRepository ;
1+ use crate :: repositories:: user_repository :: UserRepository ;
22use diesel:: prelude:: * ;
3- use payego_primitives:: error:: ApiError ;
4- use payego_primitives:: models:: entities:: verification_token:: { NewVerificationToken , VerificationToken } ;
3+ use payego_primitives:: error:: { ApiError , AuthError } ;
4+ use payego_primitives:: models:: entities:: verification_token:: {
5+ NewVerificationToken , VerificationToken ,
6+ } ;
57use payego_primitives:: schema:: verification_tokens;
68use uuid:: Uuid ;
79
@@ -15,7 +17,7 @@ impl VerificationRepository {
1517 diesel:: insert_into ( verification_tokens:: table)
1618 . values ( & new_token)
1719 . get_result ( conn)
18- . map_err ( |e| ApiError :: Database ( e . to_string ( ) ) )
20+ . map_err ( ApiError :: Database )
1921 }
2022
2123 pub fn find_by_token (
@@ -26,25 +28,30 @@ impl VerificationRepository {
2628 . filter ( verification_tokens:: token_hash. eq ( token_hash) )
2729 . first :: < VerificationToken > ( conn)
2830 . optional ( )
29- . map_err ( |e| ApiError :: Database ( e . to_string ( ) ) )
31+ . map_err ( ApiError :: Database )
3032 }
3133
3234 pub fn delete_for_user ( conn : & mut PgConnection , user_id : Uuid ) -> Result < ( ) , ApiError > {
3335 diesel:: delete ( verification_tokens:: table. filter ( verification_tokens:: user_id. eq ( user_id) ) )
3436 . execute ( conn)
3537 . map ( |_| ( ) )
36- . map_err ( |e| ApiError :: Database ( e . to_string ( ) ) )
38+ . map_err ( ApiError :: Database )
3739 }
3840
3941 pub fn consume_token (
4042 conn : & mut PgConnection ,
4143 token_hash : & str ,
4244 ) -> Result < VerificationToken , ApiError > {
43- let token = Self :: find_by_token ( conn, token_hash) ?
44- . ok_or_else ( || ApiError :: Auth ( "Invalid or expired verification token" . into ( ) ) ) ?;
45+ let token = Self :: find_by_token ( conn, token_hash) ?. ok_or_else ( || {
46+ ApiError :: Auth ( AuthError :: VerificationError (
47+ "Invalid or expired verification token" . into ( ) ,
48+ ) )
49+ } ) ?;
4550
4651 if token. expires_at < chrono:: Utc :: now ( ) . naive_utc ( ) {
47- return Err ( ApiError :: Auth ( "Verification token has expired" . into ( ) ) ) ;
52+ return Err ( ApiError :: Auth ( AuthError :: VerificationError (
53+ "Verification token has expired" . into ( ) ,
54+ ) ) ) ;
4855 }
4956
5057 // Verify user and delete token
0 commit comments