// GET: Projects
        public ActionResult Index()
        {
            //creates instance of viewmodel
            ProjectIndexVM projectIndex = new ProjectIndexVM();
            var            userId       = User.Identity.GetUserId();


            //project managers and admins see all projects and projects assigned to them
            if (User.IsInRole("Admin") || User.IsInRole("ProjectManager"))
            {
                foreach (var project in db.Projects.ToList())
                {
                    projectIndex.AllProjects.Add(new ProjectDetailsVM
                    {
                        ProjectId          = project.Id,
                        ProjectName        = project.Name,
                        ProjectDescription = project.Description,
                        ProjectManager     = project.ProjectManagerId.Any() ? db.Users.Find(project.ProjectManagerId).FullName : "",
                        Created            = project.Created,
                        Updated            = project.Updated,
                        TicketCount        = project.Tickets.Count()
                    });
                }

                var myProjects = db.Projects.Where(p => p.ProjectManagerId == userId).ToList();
                foreach (var project in myProjects)
                {
                    projectIndex.MyProjects.Add(new ProjectDetailsVM
                    {
                        ProjectId          = project.Id,
                        ProjectName        = project.Name,
                        ProjectDescription = project.Description,
                        ProjectManager     = project.ProjectManagerId.Any() ? db.Users.Find(project.ProjectManagerId).FullName : "",
                        Created            = project.Created,
                        Updated            = project.Updated,
                        TicketCount        = project.Tickets.Count()
                    });
                }

                return(View(projectIndex));
            }

            //submitters and developers only see projects assigned to them
            foreach (var project in projHelper.ListUserProjects(userId).ToList())
            {
                projectIndex.MyProjects.Add(new ProjectDetailsVM
                {
                    ProjectId          = project.Id,
                    ProjectName        = project.Name,
                    ProjectDescription = project.Description,
                    ProjectManager     = project.ProjectManagerId.Any() ? db.Users.Find(project.ProjectManagerId).FullName : "",
                    Created            = project.Created,
                    Updated            = project.Updated,
                    TicketCount        = project.Tickets.Count()
                });
            }


            return(View(projectIndex));
        }
        // GET: Project
        public ActionResult Index()
        {
            try
            {
                List <Project> temp = new List <Project>();
                temp = (List <Project>)Repository.GetAllProjects().data;
                List <User>           userIds = new List <User>();
                List <ProjectIndexVM> index   = new List <ProjectIndexVM>();

                foreach (Project project in temp)
                {
                    ProjectIndexVM projectIndexVM = new ProjectIndexVM();
                    projectIndexVM._name        = project.name;
                    projectIndexVM._Id          = project.Id;
                    projectIndexVM._beginDate   = project.beginDate;
                    projectIndexVM._hoursLogged = (double)Repository.getTotalHoursLoggedIntoProject(project.Id).data;
                    userIds = (List <User>)TimeSheet.GetUsersbyTimeSheetFilters(project.Id, 0).data;
                    projectIndexVM._numVolunteers = userIds.Count();
                    index.Add(projectIndexVM);
                }

                return(View(index));
            }
            catch
            {
                return(View("Error"));
            }
        }
Beispiel #3
0
        public override HttpHandlerResult Get()
        {
            var vm = new ProjectIndexVM(this);

            vm.Build();

            return(Response.View("Project\\Index.html", vm));
        }
Beispiel #4
0
        public override HttpHandlerResult Get()
        {
            var vm = new ProjectIndexVM();

            try {
                vm.Build();
            }
            catch (Exception error) {
                vm.Errors.Add(error);
            }

            return(Response.View("Projects\\Index.html", vm));
        }
 // 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));
     }
 }