Added seret password starter

This commit is contained in:
CHIEFSOFT\ameye
2025-08-02 06:29:03 -04:00
parent 73a1839f92
commit a385954ef6
2 changed files with 100 additions and 1 deletions
+84
View File
@@ -63,7 +63,91 @@ class LoginService(BaseService):
db.session.rollback()
return ResponseHelper.internal_server_error()
@staticmethod
def verify_reset(data):
try:
with db.session.begin():
validated_data = LoginService.validate_data(data, ResetPassStart())
username = validated_data.get('username')
member = Members.get_member_by_username(username)
if not member:
invalid_data = {
"error_message": "You will get email to continue the process if the account is valid",
"reset_message": "",
"message_key": "invalid_username_or_password",
}
return ResponseHelper.success(data=invalid_data)
reset_data = PasswordReset.create_reset(username=username)
BaseService.send_resetpass_mail(member.email, str(member.uid), member.id, "FF",
"LL") # pending_uid, pending_id, firstname, lastname
response_data = {
"error_message": "",
"reset_message": "Check your email to continue password reset.",
"message_key": "check_your_email_message",
}
return ResponseHelper.success(data=response_data)
except ValidationError as err:
logger.error(f"Validation Error: {getattr(err, 'messages', str(err))}")
db.session.rollback()
return ResponseHelper.unprocessable_entity(result_description="Validation exception")
except ValueError as err:
logger.error(f"{getattr(err, 'messages', str(err))}")
db.session.rollback()
return ResponseHelper.error(result_description=str(err))
except Exception as e:
logger.error(f"An error occurred: {str(e)}", exc_info=True)
db.session.rollback()
return ResponseHelper.internal_server_error()
@staticmethod
def complete_reset(data):
try:
with db.session.begin():
validated_data = LoginService.validate_data(data, ResetPassStart())
username = validated_data.get('username')
member = Members.get_member_by_username(username)
if not member:
invalid_data = {
"error_message": "You will get email to continue the process if the account is valid",
"reset_message": "",
"message_key": "invalid_username_or_password",
}
return ResponseHelper.success(data=invalid_data)
reset_data = PasswordReset.create_reset(username=username)
BaseService.send_resetpass_mail(member.email, str(member.uid), member.id, "FF",
"LL") # pending_uid, pending_id, firstname, lastname
response_data = {
"error_message": "",
"reset_message": "Check your email to continue password reset.",
"message_key": "check_your_email_message",
}
return ResponseHelper.success(data=response_data)
except ValidationError as err:
logger.error(f"Validation Error: {getattr(err, 'messages', str(err))}")
db.session.rollback()
return ResponseHelper.unprocessable_entity(result_description="Validation exception")
except ValueError as err:
logger.error(f"{getattr(err, 'messages', str(err))}")
db.session.rollback()
return ResponseHelper.error(result_description=str(err))
except Exception as e:
logger.error(f"An error occurred: {str(e)}", exc_info=True)
db.session.rollback()
return ResponseHelper.internal_server_error()
@staticmethod
def process_request(data):