public IHttpActionResult ChangePasswordWithToken([FromBody] ChangePasswordWithTokenModel model) { using (var dbContext = new DataContext()) { var credentialResetToken = dbContext.CredentialResetTokens.SingleOrDefault(f => f.Token == model.Token); if (credentialResetToken == null) { return(this.BadRequestEx(Error.TokenDoesNotExist)); } if (credentialResetToken.ExpiryTimestamp <= DateTime.Now) { return(this.BadRequestEx(Error.TokenExpired)); } var credential = credentialResetToken.Credential; if (credential.EntityType != Data.Enums.EntityType.Company && credential.EntityType != Data.Enums.EntityType.User) { return(this.BadRequestEx(Error.CredentialInvalidEntityType)); } credential.Password = model.NewPassword; dbContext.SaveChanges(); return(Ok()); } }
public void ChangePasswordWithToken(ChangePasswordWithTokenModel model) { var request = new RestRequest("/api/User/PasswordWithToken", Method.PUT); request.AddJsonBody(model); var response = RestClient.Execute(request); if (response.StatusCode != HttpStatusCode.OK) { throw CreateException(response); } }
public ActionResult ChangePasswordWithToken(ChangePasswordWithTokenModel model) { if (!ModelState.IsValid) { return(View(model)); } try { var userService = new UserService(); userService.ChangePasswordWithToken(model); return(RedirectToAction("ConfirmChangePasswordWithToken")); } catch (Exception ex) { ModelState.AddModelError(string.Empty, ex.Message); return(View(model)); } }