Exemplo n.º 1
0
        public ActionResult ManageUserProjects(string userId)
        {
            var myProjects = projectHelper.ListUserProjects(userId);

            ViewBag.Projects = new MultiSelectList(db.Projects.ToList(), "Id", "Name", myProjects);
            return(View());
        }
Exemplo n.º 2
0
        // GET: Users/Edit/5
        public ActionResult Edit(string id)
        {
            if (id == null)
            {
                return(RedirectToAction("Oops5", "Home", null));
            }
            ApplicationUser applicationUser = db.Users.Find(id);

            if (applicationUser == null)
            {
                return(RedirectToAction("Oops5", "Home", null));
            }

            // Setup A selectlist for the users to select
            var occupiedRoles = rolesHelper.ListUserRoles(id).FirstOrDefault();

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

            var myProjectIds = new List <int>();
            var myProjects   = projectHelper.ListUserProjects(id);

            foreach (var project in myProjects)
            {
                myProjectIds.Add(project.Id);
            }
            ViewBag.Projects = new MultiSelectList(db.Projects, "Id", "Name", myProjectIds);

            return(View(applicationUser));
        }
Exemplo n.º 3
0
        // GET: MyTickets
        public ActionResult MyTickets()
        {
            {
                var userId    = User.Identity.GetUserId();
                var myProject = projectHelper.ListUserProjects(userId);
                var myTickets = ticketHelper.GetProjectTickets(userId).ToList();

                return(View(myTickets));
            }
        }
Exemplo n.º 4
0
        //Get:
        public ActionResult MyProjects()
        {
            var userId     = User.Identity.GetUserId();
            var myProjects = projectHelper.ListUserProjects(userId);

            if (User.IsInRole("Admin"))
            {
                myProjects = db.Projects.ToList();
            }

            return(View(myProjects));
        }
Exemplo n.º 5
0
        public ActionResult Create()
        {
            var userId = User.Identity.GetUserId();

            if (userId == null)
            {
                RedirectToAction("Index");
            }
            ViewBag.ProjectId        = new SelectList(projHelp.ListUserProjects(userId), "Id", "Name");
            ViewBag.TicketPriorityId = new SelectList(db.TicketPriorities, "Id", "Name");
            ViewBag.TicketTypeId     = new SelectList(db.TicketTypes, "Id", "Name");
            return(View());
        }
Exemplo n.º 6
0
        public ActionResult Create()
        {
            var userId = User.Identity.GetUserId();

            //remove when authorize is activated
            if (userId == null)
            {
                return(RedirectToAction("Index"));
            }
            ViewBag.ProjectId        = new SelectList(projectHelper.ListUserProjects(userId), "Id", "Name");
            ViewBag.TicketPriorityId = new SelectList(db.TicketPriorities, "Id", "Name");
            ViewBag.TicketTypeId     = new SelectList(db.TicketTypes, "Id", "Name");
            return(View());
        }
Exemplo n.º 7
0
        public ActionResult AssignUsers(AssignProjects model, string userId)
        {
            ProjectHelper projectHelp = new ProjectHelper();

            model.user = db.Users.Where(u => u.Id == userId).FirstOrDefault();

            foreach (var project in projectHelp.ListUserProjects(userId))
            {
                Projects projectDel = db.projects.Find(project.Id);
                projectDel.projectUsers.Remove(model.user);
                db.Entry(projectDel).State = EntityState.Modified;
                db.SaveChanges();
            }

            if (model.selectedProjects == null)
            {
                return(RedirectToAction("ManageUsers"));
            }

            for (int index = 0; index < model.selectedProjects.Length; index++)
            {
                var projId = model.selectedProjects[index];
                model.user.Projects.Add(db.projects.Find(projId));
            }

            db.SaveChanges();
            return(RedirectToAction("ManageUsers"));
        }
Exemplo n.º 8
0
        public ActionResult Assigned()
        {
            var userId     = User.Identity.GetUserId();
            var myProjects = projHelper.ListUserProjects(userId);

            return(View(myProjects.ToList()));
        }
Exemplo n.º 9
0
        public ActionResult ManageProjectUsers()
        {
            ViewBag.Projects   = new MultiSelectList(db.Projects, "Id", "Name");
            ViewBag.Developers = new MultiSelectList(roleHelper.UsersInRole("Developer"), "Id", "DisplayName");
            ViewBag.Submitters = new MultiSelectList(roleHelper.UsersInRole("Submitter"), "Id", "DisplayName");

            if (User.IsInRole("Admin") | User.IsInRole("Administrator"))
            {
                ViewBag.ProjectManagerId = new SelectList(roleHelper.UsersInRole("ProjectManager"), "Id", "DisplayName");
            }


            var myData = new List <UserProjectListViewModel>();
            UserProjectListViewModel userVm = null;

            foreach (var user in db.Users.ToList())
            {
                userVm = new UserProjectListViewModel
                {
                    Name         = $"{user.FirstName}, {user.LastName}",
                    ProjectNames = projectHelper.ListUserProjects(user.Id).Select(p => p.Name).ToList()
                };

                if (userVm.ProjectNames.Count() == 0)
                {
                    userVm.ProjectNames.Add("N/A");
                }

                myData.Add(userVm);
            }

            return(View(myData));
        }
Exemplo n.º 10
0
        public ActionResult AssignProject()
        {
            var Pm = roleHelper.UsersInRole("Project Manager");

            ViewBag.ProjectManager = new SelectList(Pm, "Id", "Email");

            var Dev = roleHelper.UsersInRole("Developer");

            ViewBag.Developers = new MultiSelectList(Dev, "Id", "Email");

            var Sub = roleHelper.UsersInRole("Submitter");

            ViewBag.Submitters = new MultiSelectList(Sub, "Id", "Email");

            if (Pm == null)
            {
                User.Identity.GetUserId();
            }

            //I want to load a Viewbag that holds each of the Projects in the system
            var user       = User.Identity.GetUserId();
            var myProjects = projHelper.ListUserProjects(user);

            if (User.IsInRole("Admin"))
            {
                ViewBag.Project = new SelectList(db.Projects, "Id", "Name");
            }
            else
            {
                ViewBag.Project = new SelectList(myProjects, "Id", "Name");
            }


            return(View());
        }
Exemplo n.º 11
0
        public ActionResult MyProjects(List <int> projects, string userId)
        {
            foreach (var project in projHelper.ListUserProjects(userId).ToList())
            {
                projHelper.ListUserProjects(userId);
            }

            /*
             * if (projects != null)
             * {
             *  foreach (var projectId in projects)
             *  {
             *      projHelper.AddUserToProject(userId, projectId);
             *  }
             * }
             */
            return(View());
        }
Exemplo n.º 12
0
        public ActionResult Dashboard()
        {
            var projects     = new List <Project>();
            var userProjects = new List <Project>();
            var tickets      = new List <Ticket>();
            var userTickets  = new List <Ticket>();
            var userView     = new DashboardVM();

            if (User.IsInRole("Admin") || User.IsInRole("ProjectManager"))
            {
                var userId = User.Identity.GetUserId();
                projects     = db.Projects.ToList();
                tickets      = db.Tickets.ToList();
                userProjects = projectHelper.ListUserProjects(userId);
                userTickets  = ticketHelper.ListUsersTickets(userId);
                userView     = new DashboardVM()
                {
                    Projects           = projects,
                    UserProjects       = userProjects,
                    Tickets            = tickets,
                    UserTickets        = userTickets,
                    Managers           = roleHelper.UsersInRole("ProjectManager").ToList(),
                    Developers         = roleHelper.UsersInRole("Developer").ToList(),
                    Submitters         = roleHelper.UsersInRole("Submitter").ToList(),
                    UnassignedProjects = projectHelper.ListUnassignedProjects(),
                    UnassignedTickets  = ticketHelper.ListUnassignedTickets(),
                    UnassignedDevs     = userHelper.ListUnassignedDevs(),
                    NoTicketDevs       = userHelper.ListDevWithoutTicket(),
                    UnassignedSubs     = userHelper.ListUnassignedSubmitters()
                };
            }
            else
            {
                var userId = User.Identity.GetUserId();
                userProjects = projectHelper.ListUserProjects(userId);
                userTickets  = ticketHelper.ListUsersTickets(userId);
                userView     = new DashboardVM()
                {
                    UserProjects = userProjects,
                    UserTickets  = userTickets
                };
            }
            return(View(userView));
        }
Exemplo n.º 13
0
        // GET: Projects
        public ActionResult Index()
        {
            if (projectHelper.CanViewAllProjects())
            {
                ViewBag.AllProjects = new List <Project>(db.Projects.ToList().OrderByDescending(p => p.Created).ToList());
            }


            return(View(projectHelper.ListUserProjects(User.Identity.GetUserId())));
        }
Exemplo n.º 14
0
        public ActionResult AssignPMs(/*[Bind(Include = "Id,ProjectId")]*/ List <int> Projects, string PMs)
        {
            if (ModelState.IsValid)
            {
                //Assign the user to the selected role
                //Determine if the user currently occupies a role, and if so remove them form it
                foreach (var project in projectHelper.ListUserProjects(PMs))
                {
                    projectHelper.RemoveUserFromProject(PMs, project.Id);
                }

                foreach (var projectId in Projects)
                {
                    projectHelper.AddUserToProject(PMs, projectId);
                }

                return(RedirectToAction("Index", "Home"));
            }
            return(View());
        }
Exemplo n.º 15
0
 // GET: Projects
 public ActionResult Index()
 {
     if (User.IsInRole("Admin") || User.IsInRole("ProjectManager"))
     {
         var userView = new ProjectIndexVM()
         {
             Projects     = db.Projects.ToList(),
             UserProjects = projHelp.ListUserProjects(HttpContext.User.Identity.GetUserId())
         };
         return(View(userView));
     }
     else
     {
         var userView = new ProjectIndexVM()
         {
             UserProjects = projHelp.ListUserProjects(HttpContext.User.Identity.GetUserId())
         };
         return(View(userView));
     }
 }
        public ActionResult ManageUser(string userId)
        {
            var user  = userHelper.getUser(userId);
            var model = new ManageUserVM();

            model.UserId           = user.Id;
            model.FirstName        = user.FirstName;
            model.LastName         = user.LastName;
            model.Email            = user.Email;
            model.PhoneNumber      = user.PhoneNumber;
            model.FullName         = user.FullName;
            model.AvatarPath       = user.AvatarPath;
            model.userRole         = roleHelper.ListUserRoles(userId).FirstOrDefault();
            ViewBag.UserProjects   = new MultiSelectList(projectHelper.ListUserProjects(userId), "Id", "Name");
            ViewBag.ListOfProjects = new MultiSelectList(projectHelper.ListUserNotOnProjects(userId), "Id", "Name");

            //model.FirstName = projectHelper.ListUserProjects(userId).ToList();
            //model.NotUserProjects = projectHelper.ListUserNotOnProjects(userId).ToList();
            ViewBag.RoleName = new SelectList(db.Roles, "Name", "Name", model.userRole);
            return(View(model));
        }
Exemplo n.º 17
0
        public ActionResult Create()
        {
            var userId     = User.Identity.GetUserId();
            var myProjects = projHelper.ListUserProjects(userId);


            ViewBag.OwnerUserId      = new SelectList(db.Users, "Id", "FirstName");
            ViewBag.ProjectId        = new SelectList(myProjects, "Id", "Name");
            ViewBag.TicketPriorityId = new SelectList(db.TicketPriorities, "Id", "Name");
            ViewBag.TicketStatusId   = new SelectList(db.TicketStatuses, "Id", "Name");
            ViewBag.TicketTypeId     = new SelectList(db.TicketTypes, "Id", "Name");

            if (User.IsInRole("Submitter"))
            {
                return(View());
            }
            else
            {
                TempData["SubOnly"] = "I'm Sorry, You must be assigned the role of Submitter to create a ticket.";
                return(RedirectToAction("Index", "Home"));
            }
        }
Exemplo n.º 18
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));
        }
Exemplo n.º 19
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));
            }
        }
Exemplo n.º 20
0
        public ActionResult Index()
        {
            if (User.IsInRole("Submitter") || User.IsInRole("Developer"))
            {
                var proj    = ProjectHelper.ListUserProjects(User.Identity.GetUserId());
                var userId  = User.Identity.GetUserId();
                var tickets = archivedHelper.GetYourActiveTickets(User.Identity.GetUserId());

                var model = new DashboardMod {
                    Projects = archivedHelper.GetMyActiveProjects(userId), Users = db.Users, Tickets = tickets
                };
                return(View(model));
            }
            else
            {
                var model = new DashboardMod {
                    Projects = archivedHelper.GetActiveProjects(), Users = db.Users, Tickets = archivedHelper.GetActiveTickets()
                };
                return(View(model));
            }
        }
        public ActionResult Index(int?filterState, bool?includeClosed)
        {
            IEnumerable <Ticket> tickets = new List <Ticket>();

            if (includeClosed == true)
            {
                tickets = db.Tickets
                          .Include(t => t.AssignedUser)
                          .Include(t => t.OwnerUser)
                          .Include(t => t.Priority)
                          .Include(t => t.Project)
                          .Include(t => t.Status)
                          .Include(t => t.Type)
                          .ToList();
                ViewBag.includeClosedTkts = true;
            }
            else
            {
                tickets = db.Tickets
                          .Include(t => t.AssignedUser)
                          .Include(t => t.OwnerUser)
                          .Include(t => t.Priority)
                          .Include(t => t.Project)
                          .Include(t => t.Status)
                          .Include(t => t.Type)
                          .ToList()
                          .Where(t => t.Closed == false);
                ViewBag.includeClosedTkts = false;
            }

            var userid = User.Identity.GetUserId();

            switch (filterState)
            {
            //DEFAULTS. All tickets shown
            case null:
                ViewBag.Filtered = false;
                return(View(tickets));

            case 0:
                ViewBag.Filtered = false;
                return(View(tickets));

            //PROJECT FILTER. only tickets that belong to projects user is assigned to are returned
            case 1:
                ViewBag.Filtered = true;
                ProjectHelper helper = new ProjectHelper();
                var           projs  = helper.ListUserProjects(User.Identity.GetUserId());
                return(View(tickets.Where(t => projs.Select(p => p.Id).Contains(t.ProjectId))));

            //DEV FILTER. only tickets user assigned to are returned
            case 2:
                ViewBag.Filtered = true;
                return(View(tickets.Where(t => t.AssignedUserId == userid)));

            //SUBMITTER FILTER. only tickets user owns are returned
            case 3:
                ViewBag.Filtered = true;
                return(View(tickets.Where(t => t.OwnerUserId == userid)));
            }
            return(HttpNotFound());
        }