@@ -56,14 +56,11 @@ func LoginUsingGooleOneTap(c *fiber.Ctx) (models.User, string, error) {
5656 db .Preload ("RoleUser.Role" ).Find (& user , "email = ?" , email )
5757
5858 if user .ID == 0 {
59- // Remove all reset password token
60- db .Unscoped ().Where ("user_id = ?" , user .ID ).Where ("type = ?" , "reset_password" ).Delete (& models.UserToken {})
61-
6259 return user , "" , fmt .Errorf ("credential cannot be found" )
6360 }
6461
6562 // Remove all reset password token
66- db . Unscoped (). Where ( "user_id = ?" , user .ID ). Where ( "type = ?" , "reset_password" ). Delete ( & models. UserToken {} )
63+ removeResetPasswordTokens ( fmt . Sprint ( user .ID ))
6764
6865 return GenerateJwt (& user )
6966}
@@ -98,7 +95,7 @@ func Login(c *fiber.Ctx) (models.User, string, error) {
9895
9996 // Remove all reset password token
10097 go func () {
101- db . Unscoped (). Where ( "user_id = ?" , user .ID ). Where ( "type = ?" , "reset_password" ). Delete ( & models. UserToken {} )
98+ removeResetPasswordTokens ( fmt . Sprint ( user .ID ))
10299 }()
103100
104101 return GenerateJwt (& user )
@@ -206,7 +203,7 @@ func ResetPassword(c *fiber.Ctx) (string, error) {
206203 Password : password ,
207204 })
208205 // Remove all reset password token
209- db . Unscoped (). Where ( "user_id = ?" , user .ID ). Where ( "type = ?" , "reset_password" ). Delete ( & models. UserToken {} )
206+ removeResetPasswordTokens ( fmt . Sprint ( user .ID ))
210207 }
211208
212209 return "success" , nil
@@ -825,3 +822,8 @@ func UpdateEmailAddress(c *fiber.Ctx, id string) (models.User, error) {
825822
826823 return user , nil
827824}
825+
826+ func removeResetPasswordTokens (id string ) {
827+ db := database .DB
828+ db .Unscoped ().Where ("user_id = ?" , id ).Where ("type = ?" , "reset_password" ).Delete (& models.UserToken {})
829+ }
0 commit comments