public async Task ResetPassword(ResetPasswordModel model) { var user = Entities.Users.FirstOrDefault(u => u.UID == model.UID); if (user == null) { throw new ArgumentException(Strings.InvalidUserId); } var hash = Security.HashSHA1(model.Password); user.PasswordHash = hash; await Entities.SaveChangesAsync(); }
public ActionResult ResetPassword(Guid? uid) { if (Request.IsAuthenticated) { return RedirectToAction("Index", "Video"); } if (!uid.HasValue) { return RedirectToAction("Login"); } var model = new ResetPasswordModel(); model.UID = uid.Value; return View(model); }
public async Task<ActionResult> ResetPassword(ResetPasswordModel model) { if (!model.UID.HasValue) { return RedirectToAction("Login"); } if (!ModelState.IsValid) { model.IsValid = false; model.ErrorMessage = Strings.FixValidationErrors; return View(model); } try { await _security.ResetPassword(model); } catch (ArgumentException ex) { model.IsValid = false; model.ErrorMessage = ex.Message; return View(model); } catch (Exception) { model.IsValid = false; model.ErrorMessage = Strings.ErrorOccured; return View(model); } return RedirectToAction("Login"); }