/// <summary> /// Updates the role to users assignment. /// </summary> /// <param name="userGroup">The user.</param> /// <param name="ids">The ids.</param> /// <param name="selids">The selected ids.</param> /// <returns></returns> public static bool UpdateUserGroupToUsersAssignment(UserGroup userGroup, IEnumerable<String> ids, IEnumerable<String> selids) { var userGroupService = ServiceLocator.Current.GetInstance<IUserGroupService>(); var userService = ServiceLocator.Current.GetInstance<IUserService>(); var notselids = ids.Where(t => !selids.Contains(t)).ToList(); var noselected = userGroup.Users.Where(t => notselids.Contains(t.Id.ToString())).ToList(); foreach (var user in noselected) { userGroup.Users.Remove(user); } foreach (var selid in selids) { String selid1 = selid; if (!userGroup.Users.Any(t => t.Id.ToString() == selid1)) { long selectedID; if (long.TryParse(selid1, out selectedID)) { userGroup.Users.Add(userService.Find(selectedID)); } } } return userGroupService.Save(userGroup); }
/// <summary> /// Builds the user assignment model. /// </summary> /// <param name="userGroup">The user group for assignment.</param> /// <param name="user">The user for binding.</param> /// <returns>User assignment model.</returns> public static AssignedUserModel BuildUserAssignmentModel(UserGroup userGroup, User user) { return new AssignedUserModel { Id = user.Id, Name = user.Username, Assigned = userGroup.Users.Contains(user) }; }
/// <summary> /// Builds the role assignment model. /// </summary> /// <param name="user">The user.</param> /// <param name="userGroup">The user group.</param> /// <returns></returns> public static AssignedUserGroupModel BuildRoleAssignmentModel(User user, UserGroup userGroup) { return new AssignedUserGroupModel { Id = userGroup.Id, Name = userGroup.Name, Assigned = user.UserGroups.Contains(userGroup) }; }
/// <summary> /// Builds the assignment model. /// </summary> /// <param name="userGroup">The user group for assignment.</param> /// <returns>User to user group assignment model.</returns> public static UserToUserGroupAssignmentModel BuildAssignmentModel(UserGroup userGroup) { var userService = ServiceLocator.Current.GetInstance<IUserService>(); var allUsers = userService.GetAll(); return new UserToUserGroupAssignmentModel { UserGroup = new UserGroupViewModel().MapFrom(userGroup), Users = allUsers.Select(user => BuildUserAssignmentModel(userGroup, user)).ToArray() }; }
/// <summary> /// Updates the user group to users assignment. /// </summary> /// <param name="userGroup">The user group to update.</param> /// <param name="model">The assignment model.</param> /// <returns> /// <c>true</c> if reassignment is OK; <c>false</c> otherwise. /// </returns> public static bool UpdateUserGroupToUsersAssignment(UserGroup userGroup, UserToUserGroupAssignmentModel model) { var userGroupService = ServiceLocator.Current.GetInstance<IUserGroupService>(); var userService = ServiceLocator.Current.GetInstance<IUserService>(); userGroup.Users.Clear(); foreach (var user in model.Users) { if (user.Assigned) { userGroup.Users.Add(userService.Find(user.Id)); } } return userGroupService.Save(userGroup); }
public static String GetUserGroupRoles(UserGroup userGroup) { return String.Join("; ", userGroup.Roles.Select(role => role.Name)); }
public virtual ActionResult Create(UserGroupViewModel userGroupView) { if (ModelState.IsValid) { var userGroup = new UserGroup(); userGroupView.MapTo(userGroup); userGroupService.Save(userGroup); Success(Translate("Messages.RoleCreated")); return RedirectToAction(MVC.Admin.UserGroup.Users(userGroup.Id)); } Error(Translate("Messages.ValidationError")); return View("New", userGroupView); }
/// <summary> /// Builds the user group assignment model. /// </summary> /// <param name="role">The role for assignment.</param> /// <param name="userGroup">The user group.</param> /// <returns>User group assignment model.</returns> public static AssignedUserGroupModel BuildUserGroupAssignmentModel(Role role, UserGroup userGroup) { return new AssignedUserGroupModel { Id = userGroup.Id, Name = userGroup.Name, Assigned = role.UserGroups.Contains(userGroup) }; }