public IActionResult ResetMyPassword(ResetMyPasswordModel model) { string msg = string.Empty; bool flag = false; if (model.NewPassword.Length < 6 || model.NewPassword.Length > 16) { ModelState.AddModelError("newpassword", T["user_password_lengthrange"]); } if (!model.NewPassword.IsCaseInsensitiveEqual(model.ConfirmPassword)) { ModelState.AddModelError("newpassword", T["user_password_notequal"]); } var user = _userService.FindById(CurrentUser.SystemUserId); string password = SecurityHelper.MD5(model.OriginalPassword + user.Salt); if (!password.IsCaseInsensitiveEqual(user.Password)) { ModelState.AddModelError("OriginalPassword", T["user_originalpassword_invalid"]); } if (ModelState.IsValid) { string newPassword = SecurityHelper.MD5(model.NewPassword + user.Salt); bool result = _userService.Update(x => x .Set(n => n.Password, newPassword) .Where(n => n.SystemUserId == CurrentUser.SystemUserId) ); flag = result; if (flag) { msg = T["updated_success"]; } else { msg = T["updated_error"]; } return(JsonResult(flag, msg)); } msg = GetModelErrors(ModelState); return(JsonResult(flag, msg)); }
public async Task <ActionResult> ResetMyPassword(ResetMyPasswordModel model) { if (ModelState.IsValid) { var UserId = User.Identity.GetUserId(); string code = await UserManager.GeneratePasswordResetTokenAsync(UserId); //bool aa = UserManager.CheckPasswordAsync(UserId, model.OldPassword); //var user = UserManager.Find(UserId, model.OldPassword); //if(user!=null) { var result = await UserManager.ResetPasswordAsync(UserId, code, model.NewPassword); if (result.Succeeded) { return(Content(true.ToString())); } } } return(Content(false.ToString())); }
public IActionResult ResetMyPassword() { ResetMyPasswordModel model = new ResetMyPasswordModel(); return(View(model)); }