public async Task <IActionResult> EditPassword(ChangePasswordModelView mv, string id) { if (ModelState.IsValid) { var user = _userManager.Users.SingleOrDefault(s => s.Id.Equals(id)); if (user == null) { return(RedirectToAction(nameof(Login))); } var result = await _userManager.ChangePasswordAsync(user, mv.CurrentPassword, mv.NewPassword); if (!result.Succeeded) { foreach (var error in result.Errors) { ModelState.AddModelError(string.Empty, error.Description); } return(View()); } await _signInManager.RefreshSignInAsync(user); ViewBag.alertMsg = "تمت ألعملية بنجاح"; return(View()); } return(View()); }
public async Task <IActionResult> ChangePasswordAjax(ChangePasswordModelView model) { Employee employee = await _userManager.GetUserAsync(User); if (ModelState.IsValid) { var result = await _userManager.ChangePasswordAsync(employee, model.CurrentPassword, model.NewPassword); if (result.Succeeded) { employee.OnTimePassword = false; employee.PasswordState = PasswordStates.Normal; _db.Entry(employee).State = EntityState.Modified; await _db.SaveChangesAsync(); return(Json(true)); } } return(BadRequest()); }