public Result MemberChangePassword(MemberChangePasswordDto dto) { var result = _memberChangePasswordValidator.ValidateResult(dto); if (!result.Success) { return(result); } Member member = _memberRepository.AsNoTracking .FirstOrDefault(s => s.ForgotPasswordToken == dto.Token && s.IsActive); MemberChangePasswordSave(dto.NewPassword, member); return(new Result().SetSuccess(Messages.PasswordUpdated).Clear()); }
public Result ResetPassword(MemberChangePasswordDto dto) { var validator = new MemberChangePasswordValidator(); var result = validator.ValidateResult(dto); if (!result.Success) { return(result); } var member = _memberRepository.AsNoTracking.FirstOrDefault(w => w.ForgotPasswordToken == dto.Token && w.IsActive); if (member == null) { return(new Result().SetError("Invalid forgot password token or token already expired.").SetBlankRedirect()); } SetNewPassword(member, dto.NewPassword); return(new Result().SetBlankRedirect() .SetSuccess("Your password has been updated successfully. Please login with your new password.")); }