예제 #1
0
        public async Task <IActionResult> ChangeCurrentUserPassword(
            [FromBody] ChangeCurrentUserPasswordRequest passwordRequest)
        {
            var user = await _userManager.GetUserAsync(HttpContext.User);

            if (user == null)
            {
                return(NotFound());
            }

            var result =
                await _userManager.ChangePasswordAsync(user, passwordRequest.OldPassword, passwordRequest.NewPassword);

            if (result.Succeeded)
            {
                _logger.Info($"Password updated successfully - {user.Email}.");
                return(NoContent());
            }

            return(BadRequest());
        }
예제 #2
0
 public IActionResult ChangePassword(ChangeCurrentUserPasswordRequest r) =>
 Repo
 .ChangePassword(ActualUser.Id, r.OldPassword, r.NewPassword)
 .ToActionResult(x => new { Message = "User password changed" });