public Result <int> UpdateResult(ResetPasswordViewModel model) { Result <int> result = new Result <int>(); try { AppUserManager.RemovePassword(Common.CurrentUser.Id); AppUserManager.AddPassword(Common.CurrentUser.Id, model.Password); Users user = AppUserManager.FindById(Common.CurrentUser.Id); user.TempPassword = null; AppUserManager.Update(user); var identity = new ClaimsIdentity(HttpContext.Current.User.Identity); var ctx = _iOwinContext; AuthenticationManager.AuthenticationResponseGrant = new AuthenticationResponseGrant (new ClaimsPrincipal(identity), new AuthenticationProperties { IsPersistent = true }); } catch (Exception ex) { result.success = false; result.AddError(ex.Message); } return(result); }
public async Task <ActionResult> ChangeCustomerPassword(ChangeCustomerPasswordViewModel model, String id) { String userid = model.UserID; if (!ModelState.IsValid) { return(View(model)); } String userID = model.UserID; UserManager.RemovePassword(id); UserManager.AddPassword(id, model.NewPassword); return(RedirectToAction("ManageCustomers", "Accounts")); }
public IHttpActionResult PutApplicationUser(string id, UserHttpResponse applicationUser) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } if (id != applicationUser.Id) { return(BadRequest()); } var user = AppUserManager.FindById(applicationUser.Id); if (user == null) { return(BadRequest("User Not Found")); } user.FirstName = applicationUser.FirstName; user.LastName = applicationUser.LastName; user.Email = applicationUser.Email; user.UserName = applicationUser.Email; user.Timezone = applicationUser.Timezone; user.CVLink = applicationUser.CVLink; user.Webex = applicationUser.Webex; AppUserManager.Update(user); foreach (var role in user.Roles.ToList()) { if (!applicationUser.RoleIds.Any(i => i == role.RoleId)) { AppUserManager.RemoveFromRole(user.Id, AppRoleManager.FindById(role.RoleId).Name); } } foreach (var roleId in applicationUser.RoleIds) { if (!user.Roles.Any(i => i.RoleId == roleId)) { AppUserManager.AddToRole(user.Id, AppRoleManager.FindById(roleId).Name); } } using (var db = AppDb.Database.BeginTransaction()) { try { if (!String.IsNullOrEmpty(applicationUser.Password)) { var result1 = AppUserManager.RemovePassword(user.Id); if (!result1.Succeeded) { return(GetErrorResult(result1)); } var result2 = AppUserManager.AddPassword(user.Id, applicationUser.Password); if (!result2.Succeeded) { return(GetErrorResult(result2)); } } db.Commit(); } catch (Exception) { db.Rollback(); } } return(StatusCode(HttpStatusCode.NoContent)); }
public IHttpActionResult PutUserInfo(UserInfoViewModel item) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } var currentUser = AppUserManager.FindById(User.Identity.GetUserId()); if (currentUser == null) { return(NotFound()); } if (currentUser.Email != item.Email) { var existingEmail = AppUserManager.FindByEmail(item.Email); if (existingEmail != null) { return(BadRequest("Email is already in use")); } currentUser.UserName = item.Email; currentUser.Email = item.Email; } currentUser.FirstName = item.FirstName; currentUser.LastName = item.LastName; currentUser.Phone = item.Phone; currentUser.Company = item.Company; currentUser.Position = item.Position; currentUser.LinkedInProfile = item.LinkedInProfile; currentUser.WorkExperience = item.WorkExperience; currentUser.ABN = item.ABN; currentUser.Address = item.Address; currentUser.Timezone = item.Timezone; currentUser.CVLink = item.CVLink; AppUserManager.Update(currentUser); if (!String.IsNullOrEmpty(item.Password)) { using (var db = AppDb.Database.BeginTransaction()) { try { var result1 = AppUserManager.RemovePassword(currentUser.Id); if (!result1.Succeeded) { return(GetErrorResult(result1)); } var result2 = AppUserManager.AddPassword(currentUser.Id, item.Password); if (!result2.Succeeded) { return(GetErrorResult(result2)); } db.Commit(); } catch (Exception) { db.Rollback(); } } } return(StatusCode(HttpStatusCode.NoContent)); }