public void PostEdit() { MockUserService service = new MockUserService(); UserController controller = GetUserController(service); User user = service.Users[0]; var model = new UserViewModel() { Id = user.UserId, Name = "New " + user.Name, Email = "new" + user.Email }; ActionResult result = controller.Edit(user.UserId, model); Assert.IsNotNull(result); Assert.IsInstanceOfType(result, typeof(RedirectToRouteResult)); RedirectToRouteResult redirectResult = (RedirectToRouteResult)result; Assert.AreEqual("Details", redirectResult.RouteValues["action"]); Assert.AreEqual(user.UserId, redirectResult.RouteValues["id"]); Assert.IsNotNull(service.UpdatedUser); Assert.AreEqual(service.UpdatedUser.Name, model.Name); Assert.AreEqual(service.UpdatedUser.Email, model.Email); }
public ActionResult Edit(Guid id, UserViewModel model) { if (!this.ModelState.IsValid) { return View(model); } User user = new User { UserId = id, Name = model.Name, Email = model.Email, Inactive = model.Status == 0 ? false : true }; try { this.userService.UpdateUser(user); } catch (Exception ex) { this.ModelState.AddModelError("Email", ex.Message); return View(model); } return RedirectToAction("Details", new { id = id }); }
public ActionResult Edit(Guid id) { User user = this.userService.RetrieveUserById(id); var model = new UserViewModel() { Id = user.UserId, Name = user.Name, OriginalName = user.Name, Email = user.Email, Status = user.Inactive ? 1 : 0 }; return View(model); }
public ActionResult Details(Guid id) { User user = this.userService.RetrieveUserById(id); var model = new UserViewModel() { User = user }; List<Role> roles = this.roleService.GetRoles().ToList(); roles.RemoveAll(r => model.User.Roles.FirstOrDefault(ur => ur.RoleId == r.RoleId) != null); var items = new List<SelectListItem>(); foreach (var role in roles) { items.Add(new SelectListItem() { Text = role.RoleName, Value = role.RoleId.ToString() }); } model.Roles = items; model.IsMe = this.userService.IsMe(user); return View(model); }
public ActionResult Create(UserViewModel model, FormCollection form) { if (!this.ModelState.IsValid) { model.RoleNames = this.roleService.GetRoles().OrderBy(r => r.RoleName).Select(r => r.RoleName); return View(model); } var roles = this.roleService.GetRoles().OrderBy(r => r.RoleName).ToList(); User user = new User() { Name = model.Name, Email = model.Email }; try { this.userService.CreateUser(user); } catch (Exception ex) { this.ModelState.AddModelError("CustomErrors", ex.Message); model.RoleNames = this.roleService.GetRoles().OrderBy(r => r.RoleName).Select(r => r.RoleName); return View(model); } int k = 1; foreach (var role in roles) { if (!string.IsNullOrEmpty(form["Role" + k]) && form["Role" + k].Contains("true")) { this.roleService.AddUserToRole(role, user); } k++; } var invitationLink = this.GetInvitationPage(); var expiration = DateTime.UtcNow.AddDays(30); this.invitationService.InviteUser(user, invitationLink, expiration, model.PersonalMessage, false); return RedirectToAction("Details", new { id = user.UserId }); }
public ActionResult Create() { var model = new UserViewModel(); model.RoleNames = this.roleService.GetRoles().OrderBy(r => r.RoleName).Select(r => r.RoleName); return View(model); }