예제 #1
0
        public ActionResult EditUserRoles(string id)
        {
            var model = new EditUserRolesViewModel();
            var user  = bugTrackerHelper.GetUserById(id);

            model.UserId      = id;
            model.DisplayName = user.DisplayName;
            model.UserName    = user.UserName;

            var allRoles    = bugTrackerHelper.GetAllRolesNames();
            var userRolesId = user.Roles.Select(role => role.RoleId).ToList();

            for (var i = 0; i < DbContext.Roles.Count(); i++)
            {
                Role role = new Role();

                role.RoleName = allRoles[i];

                if (UserManager.IsInRole(id, allRoles[i]))
                {
                    role.IsChecked = true;
                }
                else
                {
                    role.IsChecked = false;
                }
                model.UserRoles.Add(role);
            }

            return(View(model));
        }
예제 #2
0
        private ActionResult ManageUser(int?projectId, string userId, bool add)
        {
            if (projectId == null)
            {
                return(RedirectToAction(nameof(ProjectController.AllProjects)));
            }

            if (userId == null)
            {
                return(RedirectToAction(nameof(ProjectController.EditMembers), new { id = projectId }));
            }

            var project = bugTrackerHelper.GetProjectById(projectId);
            var user    = bugTrackerHelper.GetUserById(userId);

            if (project == null || user == null)
            {
                return(RedirectToAction(nameof(ProjectController.AllProjects)));
            }

            if (add)
            {
                project.Users.Add(user);
            }
            else
            {
                project.Users.Remove(user);
            }

            DbContext.SaveChanges();

            return(RedirectToAction(nameof(ProjectController.EditMembers), new { id = projectId }));
        }