22 lines
554 B
Go
22 lines
554 B
Go
package services
|
|
|
|
import (
|
|
"GoMembership/internal/constants"
|
|
"GoMembership/internal/models"
|
|
)
|
|
|
|
func (s *UserService) HandlePasswordChangeRequest(user *models.User) (token string, err error) {
|
|
// Deactivate user and reset Verification
|
|
if err := s.SetUserStatus(user.ID, constants.DisabledStatus); err != nil {
|
|
return "", err
|
|
}
|
|
|
|
if err := s.RevokeVerification(&user.ID, constants.VerificationTypes.Password); err != nil {
|
|
return "", err
|
|
}
|
|
|
|
// Generate a token
|
|
return s.SetVerificationToken(&user.ID, &constants.VerificationTypes.Password)
|
|
|
|
}
|