public async Task <IActionResult> Edit([Bind("UserName, RoleID, Email, Password, PasswordConfirm, FullName")] UserEditFormViewModel item) { ViewBag.Roles = new MultiSelectList(roleManager.Roles.ToList(), "Id", "Name"); if (ModelState.IsValid) { ApplicationUser user = await userManager.FindByNameAsync(item.UserName); user.Email = item.Email; user.FullName = item.FullName; var existingRoles = await userManager.GetRolesAsync(user); IdentityResult result = await userManager.UpdateAsync(user); if (result.Succeeded) { result = await userManager.RemoveFromRolesAsync(user, existingRoles); if (result.Succeeded) { result = await userManager.AddToRolesAsync(user, item.RoleID); if (result.Succeeded) { return(RedirectToAction("Index")); } } } } return(View()); }
public ActionResult Edit(UserEditFormViewModel editViewModel, string permissions1) { if (!ModelState.IsValid) { ViewBag.Error = "Please check the entered values. "; var userEdit = _userRepository.UserToEdit(editViewModel.Id); return(View(userEdit)); } try { string[] ids = PermissionsSplit(permissions1); editViewModel.Permissions = _userRepository.GetPermissionsByArray(ids); //pendiente poner en el controlador de permissions var viewModel = Mapper.Map <UserEditFormViewModel, UserFormViewModel>(editViewModel); _userRepository.SaveUser(viewModel, "Edit"); return(RedirectToAction("Details", "Partners", new { id = viewModel.PartnerId })); } catch (Exception ex) { ViewBag.Error = ex.Message; var userFormViewModel = Mapper.Map <UserEditFormViewModel, UserFormViewModel>(editViewModel); var userFormViewModel2 = _userRepository.InitializeNewFormViewModel(userFormViewModel); var userEdit = Mapper.Map <UserFormViewModel, UserEditFormViewModel>(userFormViewModel2); return(View(userEdit)); } }
public IActionResult Edit(string id) { ViewBag.Roles = new SelectList(db.Roles.ToList(), "RoleID", "RoleName"); var user = db.Users.SingleOrDefault(p => p.UserName.Equals(id)); UserEditFormViewModel item = new UserEditFormViewModel(); item.UserName = user.UserName; item.RoleID = user.RoleID; item.Email = user.Email; item.Fullname = user.Fullname; return(View(item)); }
public async Task <IActionResult> Edit(string id) { ViewBag.Roles = new MultiSelectList(roleManager.Roles.ToList(), "Id", "Name"); var user = await userManager.FindByNameAsync(id); UserEditFormViewModel item = new UserEditFormViewModel(); item.UserName = user.UserName; item.Email = user.Email; item.FullName = user.Fullname; var roles = await userManager.GetRolesAsync(user); item.RoleID = roles.ToArray(); return(View(item)); }
public UserEditFormViewModel UserToEdit(int id) { try { var result = Table.Where(x => x.Id == id) .Include(m => m.Permissions) .Include(x => x.Partner) .Single(c => c.Id == id); if (result == null) { throw new Exception("User not found. "); } { var userEdit = new UserEditFormViewModel() { Email = result.Email, Id = result.Id, IsLocked = result.IsLocked, LastName = result.LastName, Name = result.Name, PartnerId = result.PartnerId, Partner = result.Partner, Partners = Context.Partners.Where(x => (x.Id == result.PartnerId || x.ParentId == result.PartnerId) && !x.Deleted).ToList(), Permissions = result.Permissions, Phone = result.Phone, Status = result.Status, UserName = result.UserName }; return(userEdit); } } catch (Exception ex) { throw new Exception(ex.Message + "User not found. "); } }
public IActionResult Edit([Bind("UserName, RoleID, Email, Password, PasswordConfirm, Fullname")] UserEditFormViewModel item) { ViewBag.Roles = new SelectList(db.Roles.ToList(), "RoleID", "RoleName"); if (ModelState.IsValid) { User user = db.Users.SingleOrDefault(p => p.UserName.Equals(item.UserName)); user.UserName = item.UserName; user.RoleID = item.RoleID; user.Email = item.Email; if (!String.IsNullOrEmpty(item.Password)) { user.Password = EncryptString(item.Password, key); } user.Fullname = item.Fullname; db.Update(user); db.SaveChanges(); return(RedirectToAction("Index")); } return(View()); }