Пример #1
0
        public ActionResult Edit(string id)
        {
            var                 user       = db.Users.Find(id);
            UserRolesHelper     helper     = new UserRolesHelper();
            AdminViewRolesModel adminModel = new AdminViewRolesModel {
                Roles         = new MultiSelectList(db.Roles, "Name", "Name", helper.ListUserRoles(id)),
                SelectedRoles = helper.ListUserRoles(user.Id).ToArray(),
                User          = user
            };

            if (user == null)
            {
                return(HttpNotFound());
            }

            return(View(adminModel));
        }
Пример #2
0
        public ActionResult Edit(string id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            ApplicationUser applicationUser = db.Users.Find(id);

            if (applicationUser == null)
            {
                return(HttpNotFound());
            }

            var currentRole = roleHelper.ListUserRoles(id).FirstOrDefault();

            ViewBag.Roles = new SelectList(db.Roles, "Name", "Name", currentRole);
            return(View(applicationUser));
        }
Пример #3
0
        public ActionResult RolesAssigned(string userId)
        {
            var roleHelp     = new UserRolesHelper();
            var userAssigned = roleHelp.ListUserRoles(userId);

            ViewBag.Roles = new MultiSelectList(db.Roles, "Name", "Name", userAssigned);

            return(View(db.Users.Find(userId)));
        }
Пример #4
0
        // GET: Charts
        public JsonResult GetRealChartData()
        {
            var data = new ChartJsBarData();

            var userId = User.Identity.GetUserId();                         //First Get the Id of the logged in user

            var myRole = roleHelper.ListUserRoles(userId).FirstOrDefault(); //then get the roles they occupy
                                                                            //firstordefault Returns the first                   element of a sequence, or a default value if no element is found

            var myTickets = new List <Ticket>();

            switch (myRole)//then based on the role name - push different data into the view
            {
            case "Developer":
                myTickets = db.Tickets.Where(t => t.AssignedToUserId == userId).ToList();
                break;

            case "Submitter":
                myTickets = db.Tickets.Where(t => t.OwnerUserId == userId).ToList();
                break;

            case "Project Manager":
                myTickets = db.Users.Find(userId).Projects.SelectMany(t => t.Tickets).ToList();
                break;
            }

            foreach (var status in db.TicketStatuses)
            {
                data.Labels.Add(status.Name);
                data.Values.Add(myTickets.Where(t => t.TicketStatusId == status.Id).Count());
            }
            //var data = new ChartJsBarData();

            //foreach(var ticketStatus in db.TicketStatuses.ToList())
            //{
            //    var value = db.TicketStatuses.Find(ticketStatus.Id).Tickets.Count();

            //    data.Labels.Add(ticketStatus.Name);
            //    data.Values.Add(value);
            //}
            return(Json(data));
        }
        //GET: EditUserRoles
        public ActionResult EditUserRoles(string id)
        {
            var user   = db.Users.Find(id);
            var helper = new UserRolesHelper();
            var model  = new AdminUserViewModels();

            model.User          = user;
            model.AssignedRoles = helper.ListUserRoles(id).ToArray();
            model.Roles         = new MultiSelectList(db.Roles, "Name", "Name", model.AssignedRoles);
            return(View(model));
        }
Пример #6
0
        public ActionResult Index()
        {
            List <UsersInRoleModel> users = new List <UsersInRoleModel>();

            foreach (var user in db.Users.ToList())
            {
                //var x = db.Users.Find(Id);
                var temp = new UsersInRoleModel();
                var role = new UsersInRoleModel();
                temp.user     = user;
                temp.roles    = roleHelper.ListUserRoles(user.Id).ToList();
                role.roleList = new MultiSelectList(db.Roles, "Name", "Name", role.selectedRoles);
                //role.firstName = x.FirstName;
                //role.lastName = x.LastName;
                //role.selectedRoles = roleHelper.ListUserRoles(x.Id).ToArray();
                users.Add(temp);
            }

            return(View(users));
        }
Пример #7
0
        public ActionResult Details(string id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }

            UserRolesViewModel uservm = new UserRolesViewModel();
            ApplicationUser    user   = db.Users.Find(id);

            uservm.User             = user;
            TempData["CurrentUser"] = user;
            uservm.SelectedRoles    = helper.ListUserRoles(id).ToArray();
            uservm.RolesList        = new MultiSelectList(db.Roles.OrderBy(p => p.Name), "Name", "Name", uservm.SelectedRoles);

            if (uservm == null)
            {
                return(HttpNotFound());
            }
            return(View(uservm));
        }
Пример #8
0
        // GET: Admin



        public ActionResult UserIndex()
        {
            var projects = db.Projects.ToList();
            var roles    = db.Roles.ToList();
            var users    = db.Users.Select(u => new UserIndexViewModel
            {
                Id          = u.Id,
                FullName    = u.LastName + ", " + u.FirstName,
                DisplayName = u.DisplayName,
                AvatarURL   = u.AvatarURL,
                Email       = u.Email,
                ActiveRole  = u.ActiveRole
            }).ToList();

            foreach (var user in users)
            {
                user.CurrentRole     = new SelectList(roles, "Name", "Name", roleHelper.ListUserRoles(user.Id).FirstOrDefault());
                user.CurrentProjects = new MultiSelectList(projects, "Id", "Name", projectHelper.ListUserProjects(user.Id).Select(u => u.Id));
            }

            foreach (var user in users)
            {
                user.ActiveRole = roleHelper.GetUserRole(user.Id)
                ;
            }
            return(View(users));
        }
Пример #9
0
        // GET: Admin
        public ActionResult ManageRoles()
        {
            ViewBag.UsersIds  = new MultiSelectList(db.Users, "Id", "FullName");
            ViewBag.Role      = new SelectList(db.Roles, "Name", "Name");
            ViewBag.Developer = db.Users.ToList();
            var users = new List <ManageRolesViewModel>();

            foreach (var user in db.Users.ToList())
            {
                users.Add(new ManageRolesViewModel
                {
                    UserName = $"{ user.LastName},{ user.FirstName}",
                    RoleName = roleHelper.ListUserRoles(user.Id).FirstOrDefault(),
                    email    = user.Email
                });
            }
            return(View(users));
        }
Пример #10
0
 public ActionResult ManageRoles(List <string> users, string roleName)
 {
     if (users != null)
     {
         //Lets iterate over the incoming list of users that were selected from the form
         // and remove each of them from whatever role they occupy
         foreach (var userId in users)
         {
             //Remove them from any role they occupy
             foreach (var role in roleHelper.ListUserRoles(userId))
             {
                 roleHelper.RemoveUserFromRole(userId, role);
             }
             if (!string.IsNullOrEmpty(roleName))
             {
                 roleHelper.AddUserToRole(userId, roleName); //call the 'AddUserToRole' method from the 'helper' object and pass it the userid
                                                             //and the specified 'role'.
             }
         }
     }
     return(RedirectToAction("ManageRoles"));
 }
Пример #11
0
        // GET: EditUser
        public ActionResult EditUser(string id)
        {
            var user = db.Users.Find(id);
            AdminUserViewModel AdminModel = new AdminUserViewModel();
            UserRolesHelper    helper     = new UserRolesHelper(db);
            var selected = helper.ListUserRoles(id);

            AdminModel.Roles = new MultiSelectList(db.Roles, "Name", "Name", selected);
            AdminModel.Id    = user.Id;
            AdminModel.Name  = user.FullName;

            return(View(AdminModel));
        }
Пример #12
0
        public ActionResult EditUser(string id)
        {
            var user = db.Users.Find(id);
            AdminUserViewModel AdminModel = new AdminUserViewModel();
            UserRolesHelper    helper     = new UserRolesHelper(db);
            var currentRoles = helper.ListUserRoles(id);
            var absentRoles  = helper.ListAbsentUserRoles(id);

            AdminModel.AbsentRoles = new MultiSelectList(absentRoles);
            AdminModel.Roles       = new MultiSelectList(currentRoles);
            AdminModel.User        = user;

            return(View(AdminModel));
        }
Пример #13
0
        public ActionResult Index()
        {
            List <UserRolesViewModel> userList = new List <UserRolesViewModel>();

            foreach (var users in db.Users.ToList())
            {
                var userCollection = new UserRolesViewModel();
                userCollection.User  = users;
                userCollection.Roles = helper.ListUserRoles(users.Id).ToList();
                userList.Add(userCollection);
            }

            return(View(userList));
        }
Пример #14
0
        //private UserProfileViewModel userProfile = new UserProfileViewModel();

        // GET: Admin
        public ActionResult UserIndex()
        {
            var roles    = db.Roles.ToList();
            var projects = db.Projects;

            var users = db.Users.Select(u => new UserProfileViewModel
            {
                Id          = u.Id,
                FirstName   = u.FirstName,
                LastName    = u.LastName,
                DisplayName = u.DisplayName,
                AvatarUrl   = u.AvatarUrl,
                Email       = u.Email
            }).ToList();

            //Listing every user's role and projects on the index
            foreach (var user in users)
            {
                user.CurrentRole     = new SelectList(roles, "Name", "Name", roleHelper.ListUserRoles(user.Id).FirstOrDefault());
                user.CurrentProjects = new MultiSelectList(projects, "Id", "Name", projHelper.ListUserProjects(user.Id).Select(p => p.Id));
            }

            return(View(users));
        }
Пример #15
0
        // GET: Admin
        public ActionResult Index()
        {
            List <AdminUserViewModels> users  = new List <AdminUserViewModels>();
            UserRolesHelper            helper = new UserRolesHelper();

            foreach (var user in db.Users.ToList())
            {
                var eachUser = new AdminUserViewModels();
                eachUser.User          = user;
                eachUser.AssignedRoles = helper.ListUserRoles(user.Id).ToArray();
                users.Add(eachUser);
            }

            return(View(users.OrderBy(u => u.User.LastName).ToList()));
        }
Пример #16
0
        //GET: UserIndex
        public ActionResult UserIndex()
        {
            UserRolesHelper           helper = new UserRolesHelper(db);
            List <UserRolesViewModel> model  = new List <UserRolesViewModel>();

            foreach (var user in db.Users.ToList())
            {
                UserRolesViewModel UserModel = new UserRolesViewModel();
                UserModel.Roles = helper.ListUserRoles(user.Id).ToList();
                UserModel.User  = user;
                model.Add(UserModel);
            }
            ;
            return(View(model));
        }
Пример #17
0
        // GET: Admin/ManageRoles/5

        public ActionResult ManageRoles(string id)
        {
            var             user     = db.Users.Find(id);
            var             roleUser = new UserRolesViewModel();
            UserRolesHelper helper   = new UserRolesHelper();

            roleUser.Id            = user.Id;
            roleUser.FirstName     = user.FirstName;
            roleUser.LastName      = user.LastName;
            roleUser.DisplayName   = user.FirstName + " " + user.LastName;
            roleUser.SelectedRoles = helper.ListUserRoles(user.Id).ToArray();
            roleUser.UserRoles     = new MultiSelectList(db.Roles, "Name", "Name", roleUser.SelectedRoles);

            return(View(roleUser));
        }
Пример #18
0
        public ActionResult AdminIndex()
        {
            List <UserRolesViewModel> model  = new List <UserRolesViewModel>();
            UserRolesHelper           helper = new UserRolesHelper();

            var users = db.Users.ToList();

            foreach (var u in users)
            {
                var urvm = new UserRolesViewModel();
                urvm.User  = u;
                urvm.Roles = helper.ListUserRoles(u.Id);
                model.Add(urvm);
            }
            return(View(model));
        }
Пример #19
0
        public ActionResult Index()
        {
            var userId  = User.Identity.GetUserId();
            var th      = new TicketsHelper(urh, db);
            var myRoles = urh.ListUserRoles(userId).ToList();
            var ticket  = th.GetUserTickets(User.Identity.GetUserId());

            if (myRoles.Any(role => role == "Admin,Project Manager"))
            {
                var tickets = db.Ticket.ToList();
                return(View(tickets));
            }
            else
            {
                return(View(ticket));
            }
        }
Пример #20
0
        public ActionResult Index()
        {
            var userId  = User.Identity.GetUserId();
            var ph      = new ProjectHelper();
            var myRoles = urh.ListUserRoles(userId).ToList();
            var project = ph.ListUserProjects(User.Identity.GetUserId());

            if (myRoles.Any(role => role == "Admin,Project Manager"))
            {
                var projects = db.Project.ToList();
                return(View(projects));
            }
            else
            {
                return(View(project));
            }
        }
Пример #21
0
        public ActionResult Edit(string UserId)
        {
            // ApplicationDbContext db = new ApplicationDbContext();
            IList <IdentityRole> userRoles = db.Roles.ToList();
            var helper      = new UserRolesHelper();
            var ListOfRoles = db.Roles.OrderBy(r => r.Name).ToList().Select(rr => rr.Name.ToString()).ToList();

            RolesViewModels myRole = new RolesViewModels();

            myRole.UserId = UserId;
            var user = db.Users.Find(UserId);

            myRole.UserName = user.Email;

            var ListOfCurrentRoles = helper.ListUserRoles(UserId);

            IList <Roles> allRoles = new List <Roles>();

            foreach (var role in ListOfCurrentRoles)
            {
                if (role == "Admin")
                {
                    myRole.AdminRoleSelected = true;
                }
                if (role == "Developer")
                {
                    myRole.DeveloperRoleSelected = true;
                }
                if (role == "Project Manager")
                {
                    myRole.ProjectManagerRoleSelected = true;
                }
                if (role == "Submitter")
                {
                    myRole.SubmitterRoleSelected = true;
                }

                bool  roleEn  = helper.IsUserInRole(UserId, role);
                Roles myRoles = new Roles(role, roleEn);
                //if (helper.IsUserInRole(user.Id, role)) { myRoles = new Roles(role, true); }
                //else { myRoles = new Roles(role, false); }
                allRoles.Add(myRoles);
            }
            return(View(myRole));
        }
Пример #22
0
        // *****************************************************************************************************************
        // GET: /Manage/UpdateProfile
        public ActionResult UpdateProfile()
        {
            var myUserId = User.Identity.GetUserId();
            ProjectAssignHelper    projecthelper = new ProjectAssignHelper();
            UserRolesHelper        rolehelper    = new UserRolesHelper(db);
            UpdateProfileViewModel profile       = new UpdateProfileViewModel
            {
                NewFirstName   = db.Users.Find(User.Identity.GetUserId()).FirstName,
                NewLastName    = db.Users.Find(User.Identity.GetUserId()).LastName,
                NewDisplayName = db.Users.Find(User.Identity.GetUserId()).DisplayName
            };

            // Get Project Assignments
            profile.UserProjects = projecthelper.ListProjectsForUser(myUserId);
            // Get Role Assignments
            profile.UserRoles = rolehelper.ListUserRoles(myUserId).ToArray();

            return(View(profile));
        }
Пример #23
0
        public ActionResult Index()
        {
            UserRolesHelper helper = new UserRolesHelper();

            var            adminModelList    = new List <AdminViewRolesModel>();
            IList <string> selected          = new List <string>();
            var            usersLessInactive = db.Users.Where(u => u.FullName != "[Leave Unassigned]");

            foreach (var u in usersLessInactive)
            {
                AdminViewRolesModel adminModel = new AdminViewRolesModel {
                    SelectedRoles = helper.ListUserRoles(u.Id).ToArray(),
                    User          = u
                };

                adminModelList.Add(adminModel);
            }
            return(View(adminModelList));
        }
Пример #24
0
        public ActionResult AssignRole(string users, string roles)
        {
            if (ModelState.IsValid)
            {
                var currentUser  = db.Users.Find(users).Id;
                var currentRoles = roleHelper.ListUserRoles(users);
                foreach (var role in currentRoles)
                {
                    //Removes users from all and any role they occupy
                    roleHelper.RemoveUserFromRole(currentUser, role);
                }

                if (!string.IsNullOrEmpty(roles))
                {
                    roleHelper.AddUserToRole(currentUser, roles);
                }
            }
            return(RedirectToAction("Index", "Users"));
        }
Пример #25
0
        public ActionResult ChangeMember(int id)
        {
            var project = Db.Projects.FirstOrDefault(p => p.Id == id);

            var Allusers = Db.Users.Select(n => new UserListViewModel
            {
                Id         = n.Id,
                ScreenName = n.ScreenName,
                Roles      = (from userRoles in n.Roles
                              join roles in Db.Roles on userRoles.RoleId equals roles.Id
                              select roles.Name).ToList(),
            }).ToList();

            project.Users.ForEach(p => p.AssignRoles = rolehelper.ListUserRoles(p.Id).ToList());

            ViewBag.Allusers = Allusers;

            return(View(project));
        }
        public ActionResult Index()
        {
            var userRoles = new List <AdminUserViewModel>();

            foreach (ApplicationUser user in db.Users)
            {
                var             myUser = new AdminUserViewModel();
                UserRolesHelper helper = new UserRolesHelper();
                myUser.UserId       = user.Id;
                myUser.UserName     = user.FirstName + " " + user.LastName;
                myUser.FirstName    = user.FirstName;
                myUser.LastName     = user.LastName;
                myUser.UserEmail    = user.Email;
                myUser.CurrentRoles = helper.ListUserRoles(user.Id);
                userRoles.Add(myUser);
            }
            var sortedUsers = userRoles.OrderBy(x => x.LastName).ThenBy(p => p.FirstName).ToList();

            return(View(sortedUsers));
        }
Пример #27
0
        public ActionResult ChooseRolePartial(string username)
        {
            var helper = new UserRolesHelper();
            //ApplicationDbContext UserDb = new ApplicationDbContext();
            var ListOfRoles = db.Roles.OrderBy(r => r.Name).ToList().Select(rr => rr.Name.ToString()).ToList();

            var userRoles = helper.ListUserRoles(username);
            var roles     = ListOfRoles.Select(x => new SelectListItem
            {
                Value    = x,
                Text     = x,
                Selected = userRoles.Contains(x)
            }).ToArray();

            var model = new ChooseRoleModel {
                Roles = roles, Username = username
            };

            return(PartialView("Partials/ChooseRolePartial", model));
        }
Пример #28
0
        public ActionResult Index()
        {
            var userId    = User.Identity.GetUserId();
            var myIndexVM = new IndexVM();
            var myRoles   = urh.ListUserRoles(userId).ToList();

            if (myRoles.Any(role => role == "Admin"))
            {
                myIndexVM.Projects            = db.Project.ToList();
                myIndexVM.Tickets             = db.Ticket.ToList();
                myIndexVM.TicketNotifications = db.Users.Where(u => u.Id == userId).SelectMany(tn => tn.TicketNotification).ToList();
                //myIndexVM.TicketComments = db.Users.Where(u => u.Id == userId).SelectMany(tc => tc.TicketComment).ToList();
            }

            else if (myRoles.Any(role => role == "Project Manager"))
            {
                myIndexVM.Projects            = db.Project.ToList();
                myIndexVM.Tickets             = db.Users.Where(u => u.Id == userId).SelectMany(t => t.Tickets).ToList();
                myIndexVM.TicketNotifications = db.Users.Where(u => u.Id == userId).SelectMany(tn => tn.TicketNotification).ToList();
                //myIndexVM.TicketComments = db.Users.Where(u => u.Id == userId).SelectMany(tc => tc.TicketComment).ToList();
            }

            else if (myRoles.Any(role => role == "Developer"))
            {
                myIndexVM.Projects            = db.Users.Where(u => u.Id == userId).SelectMany(p => p.Projects).ToList();
                myIndexVM.Tickets             = db.Users.Where(u => u.Id == userId).SelectMany(t => t.Tickets).ToList();
                myIndexVM.TicketNotifications = db.Users.Where(u => u.Id == userId).SelectMany(tn => tn.TicketNotification).ToList();
                //myIndexVM.TicketComments = db.Users.Where(u => u.Id == userId).SelectMany(tc => tc.TicketComment).ToList();
            }

            else if (myRoles.Any(role => role == "Submitter"))
            {
                myIndexVM.Projects            = db.Users.Where(u => u.Id == userId).SelectMany(p => p.Projects).ToList();
                myIndexVM.Tickets             = db.Users.Where(u => u.Id == userId).SelectMany(t => t.Tickets).ToList();
                myIndexVM.TicketNotifications = db.Users.Where(u => u.Id == userId).SelectMany(tn => tn.TicketNotification).ToList();
                //myIndexVM.TicketComments = db.Users.Where(u => u.Id == userId).SelectMany(tn => tn.TicketComment).ToList();
            }


            return(View(myIndexVM));
        }
Пример #29
0
        public bool HasTicketPermission(string userId, int ticketId)
        {
            var             user      = db.Users.Find(userId);
            var             ticket    = db.Tickets.Find(ticketId);
            UserRolesHelper helper    = new UserRolesHelper(db);
            var             userRoles = helper.ListUserRoles(userId);

            if (userRoles.Contains("Admin"))
            {
                return(true);
            }
            else if (userRoles.Contains("Project Manager") && user.Projects.SelectMany(p => p.Tickets).ToList().Contains(ticket))
            {
                return(true);
            }
            else if (userRoles.Contains("Submitter") && userRoles.Contains("Developer"))
            {
                if (ticket.AssigneeId == userId || ticket.OwnerId == userId)
                {
                    return(true);
                }
                else
                {
                    return(false);
                }
            }
            else if (userRoles.Contains("Developer") && ticket.AssigneeId == userId)
            {
                return(true);
            }
            else if (userRoles.Contains("Submitter") && ticket.OwnerId == userId)
            {
                return(true);
            }
            else
            {
                return(false);
            }
        }
Пример #30
0
        //
        // GET: /Admin/ListUsers
        public ActionResult ListUsers()
        {
            UsersListViewModel UserModel = new UsersListViewModel();
            UserRolesHelper    helper    = new UserRolesHelper(db);
            var users = db.Users.ToList();

            UserModel.Users = new List <UsersViewModel>();
            foreach (var user in users)
            {
                var id       = user.Id;
                var name     = user.FirstName + " " + user.LastName;
                var roles    = helper.ListUserRoles(id);
                var projects = new List <string>();
                foreach (var project in user.Projects)
                {
                    projects.Add(project.Title);
                }
                UserModel.Users.Add(new UsersViewModel(id, name, roles, projects));
            }

            return(View(UserModel));
        }