public void ResetPassword(int userId, Guid passwordResetToken, string newPassword) { var membership = MembershipBiz.ReadSingleOrDefault(m => m.Id == userId && m.PasswordResetToken == passwordResetToken); if (membership == null) { throw new BusinessException("InvalidPasswordLink"); } membership.Password = newPassword.ComputeSha256Hash(); membership.LastPasswordChangedDate = DateTime.Now; membership.PasswordResetToken = null; // Invalidate Password Reset Token UnitOfWork.SaveChanges(); }
public void ActivateAccount(int userId, Guid verificationCode) { var membership = MembershipBiz.ReadSingleOrDefault(m => m.Id == userId && m.VerificationCode == verificationCode); if (membership == null || membership.IsApproved) { throw new BusinessException("InvalidAccountActivationInfo".Localize()); } if (membership.VerificationCodeSendDate < DateTime.Now.AddDays(-7)) { throw new BusinessException("AccountActivationLinkHasExpired".Localize()); } membership.IsApproved = true; UnitOfWork.SaveChanges(); }