public ActionResult PasswordReset(AccountViewModel model) { var validator = new PasswordResetValidator(model.PasswordConfirm).Validate(model.Customer); if (validator.IsValid) { var user = _unitOfWork.GetRepo <Customer>().GetObject(x => x.PasswordResetToken == model.Customer.PasswordResetToken); user.Password = model.Customer.Password; user.PasswordResetToken = null; _unitOfWork.GetRepo <Customer>().Update(user); } var sonuc = _unitOfWork.Commit(); if (sonuc) { TempData["IsSuccess"] = sonuc; TempData["ModelState"] = ModelState; TempData["Message"] = "Şifre sıfırlama işlemi başarıyla gerçekleştirildi. Aşağıdan giriş yapabilirsiniz."; return(RedirectToAction("SignIn")); } TempData["IsSuccess"] = sonuc; validator.Errors.ToList().ForEach(a => { ModelState.AddModelError("Customer." + a.PropertyName, a.ErrorMessage); }); TempData["ModelState"] = ModelState; TempData["Message"] = "Şifre sıfırlama işlemi gerçekleştirilemedi. Lütfen tekrar deneyiniz."; return(RedirectToAction("PasswordReset", new { token = model.Customer.PasswordResetToken })); }
public ActionResult PasswordEdit(ProfileViewModel model) { var modelCustomer = new Customer { Password = model.Password }; var validator = new PasswordResetValidator(model.PasswordConfirm).Validate(modelCustomer); var user = _unitOfWork.GetRepo <Customer>().GetObject(x => x.Email == User.Identity.Name); if (validator.IsValid) { user.Password = _encryptor.Hash(model.Password); _unitOfWork.GetRepo <Customer>().Update(user); } var isSuccess = _unitOfWork.Commit(); TempData["IsSuccess"] = isSuccess; validator.Errors.ToList().ForEach(a => { ModelState.AddModelError(a.PropertyName, a.ErrorMessage); }); TempData["ModelState"] = ModelState; TempData["Message"] = isSuccess ? "Şifre güncelleme işlemi başarılı bir şekilde gerçekleştirildi." : "Şifre güncelleme işlemi gerçekleştirilemedi lütfen tekrar deneyiniz."; return(RedirectToAction("MyAccount")); }