Example #1
0
        public async Task <IActionResult> ForgotPasswordConfirmation([FromBody] ForgotPasswordVerifyModel request)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }
            var user = await _userManager.FindByEmailAsync(request.Email);

            if (user == null)
            {
                return(NoContent());
            }
            var result = await _userManager.ResetPasswordAsync(user, request.Token, request.NewPassword);

            if (!result.Succeeded)
            {
                return(BadRequest(result.Errors.AsValidationProblemDetails()));
            }
            return(NoContent());
        }
Example #2
0
        public async Task <IActionResult> ForgotPasswordConfirmation([FromBody] ForgotPasswordVerifyModel request)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }
            var user = await _userManager.FindByEmailAsync(request.Email);

            if (user == null)
            {
                return(NoContent());
            }
            var result = await _userManager.ResetPasswordAsync(user, request.Token, request.NewPassword);

            if (!result.Succeeded)
            {
                return(BadRequest(result.Errors.ToValidationProblemDetails()));
            }
            var @event = new PasswordChangedEvent(SingleUserInfo.FromUser(user));
            await _eventService.Publish(@event);

            return(NoContent());
        }