public virtual async Task <BaseModel> ChangePassword(ClaimsPrincipal User, ChgPasswordModel model) { //ApplicationUser user = await _userManager.FindByEmailAsync(model.Email); var user = await _userManager.GetUserAsync(User); if (user == null) { return(new ProfileModel { Succeeded = false, StatusMessage = $"Unable to load user with ID '{_userManager.GetUserId(User)}'." }); } var result = await _userManager.ChangePasswordAsync(user, model.OldPassword, model.NewPassword); if (!result.Succeeded) { return(new BaseModel { Succeeded = false, StatusMessage = AddErrors(result) }); } return(new BaseModel { Succeeded = true, StatusMessage = "Succeeded" }); }
public async Task <IActionResult> ChangePassword([FromBody] ChgPasswordModel model) { if (!ModelState.IsValid) { return(BadRequest(new { message = AddErrors() })); } var result = await _userEngine.ChangePassword(User, model); if (!result.Succeeded) { return(BadRequest(new { message = result.StatusMessage })); } return(Ok(result)); }