public async Task <IActionResult> PasswordResetEmail([FromBody] PasswordEmailModel model) { if (string.IsNullOrEmpty(model.Email)) { return(BadRequest(new { message = "Email must be provided to reset password." })); } await _userService.SendPasswordReset(model.Email); return(Ok()); }
public ActionResult <PasswordEmailModel> SendPasswordEmail([FromBody] PasswordEmailModel passwordEmailModel) { User user; try { user = _userService.GetByEmail(passwordEmailModel.Email); } catch (RequestException) { return(BadRequest(new { message = "Email is not found" })); } TokenCreationParams tokenCreationParams = _tokenCreatorValidator.CreateToken(user.Id, 30); user.RecoverySalt = tokenCreationParams.SaltBytes; _userService.Update(user); MailSender.SendRecoveryMail(user, tokenCreationParams.TokenStr); return(Ok(new PasswordEmailModel(user.Email))); }