private List <dtoActivityCompletion> ParseAssignments(List <dtoActivityCompletion> assignments, List <dtoResource> resources, Boolean allowEdit)
 {
     foreach (dtoActivityCompletion assignment in assignments)
     {
         dtoResource resource = resources.Where(r => r.IdResource == assignment.IdResource).FirstOrDefault();
         if (resource != null)
         {
             assignment.IdPerson    = resource.IdPerson;
             assignment.DisplayName = resource.LongName;
             assignment.AllowEdit   = allowEdit;
         }
     }
     return(assignments);
 }
Beispiel #2
0
        public void InitView()
        {
            dtoProjectContext cContext = new dtoProjectContext()
            {
                IdCommunity = View.PreloadIdCommunity, isPersonal = View.PreloadIsPersonal, isForPortal = View.PreloadForPortal
            };

            InitializeContext(cContext);

            if (UserContext.isAnonymous)
            {
                View.DisplaySessionTimeout();
            }
            else
            {
                Person p = CurrentManager.GetPerson(UserContext.CurrentUserID);
                View.SetProjectsUrl(Service.GetBackUrl(View.PreloadFromPage, View.PreloadIdContainerCommunity, 0));
                List <lm.Comol.Core.Wizard.NavigableWizardItem <dtoProjectManagementStep> > steps = Service.GetAvailableSteps(WizardProjectStep.Settings, 0); //new List<Core.Wizard.NavigableWizardItem<dtoProjectManagementStep>>();   //'Service.GetAvailableSteps(0, WizardTemplateStep.Settings, ownerInfo.Type);
                View.LoadWizardSteps(0, cContext.IdCommunity, cContext.isPersonal, cContext.isForPortal, steps);
                if (!cContext.isForPortal && !cContext.isValid)
                {
                    View.DisplayNotAvailableComunity();
                }
                else
                {
                    ModuleProjectManagement mPermission = Service.GetModulePermissions(cContext.IdCommunity);
                    if (cContext.isPersonal && !mPermission.CreatePersonalProject)
                    {
                        View.DisplayNotAvailableForAddPersonalProject();
                        View.SendUserAction(cContext.IdCommunity, CurrentIdModule, 0, ModuleProjectManagement.ActionType.ProjectTryToAdd);
                    }
                    else if (!cContext.isPersonal && !mPermission.CreatePublicProject)
                    {
                        if (cContext.IdCommunity > 0)
                        {
                            View.DisplayNotAvailableForAddCommunityProject();
                        }
                        else
                        {
                            View.DisplayNotAvailableForAddPortalProject();
                        }
                        View.SendUserAction(cContext.IdCommunity, CurrentIdModule, 0, ModuleProjectManagement.ActionType.ProjectTryToAdd);
                    }
                    else if (p != null && (mPermission.CreatePublicProject || mPermission.CreatePersonalProject))
                    {
                        View.AllowAdd = true;
                        dtoProject project = new dtoProject();
                        project.IdCommunity            = cContext.IdCommunity;
                        project.isPersonal             = cContext.isPersonal;
                        project.isPortal               = cContext.isPersonal;
                        project.Name                   = View.GetDefaultProjectName() + DateTime.Now.Date.ToShortDateString();
                        project.StartDate              = DateTime.Now.Date;
                        project.Status                 = ProjectItemStatus.notstarted;
                        project.Availability           = ProjectAvailability.Draft;
                        project.AllowEstimatedDuration = true;
                        project.AllowMilestones        = true;
                        project.AllowSummary           = true;
                        List <ProjectAvailability> items = new List <ProjectAvailability>();
                        items.Add(ProjectAvailability.Draft);
                        dtoResource resource = new dtoResource()
                        {
                            IdResource = 0, LongName = p.SurnameAndName, ShortName = GetPersonShortName(p), IdPerson = p.Id, ProjectRole = ActivityRole.ProjectOwner
                        };
                        project.Resources = new List <dtoResource>();
                        project.Resources.Add(resource);
                        View.InitializeProject(project, resource, items, ProjectAvailability.Draft, 10);
                        View.SendUserAction(cContext.IdCommunity, CurrentIdModule, 0, ModuleProjectManagement.ActionType.ProjectStartAdding);
                    }
                    else
                    {
                        View.DisplayNoPermission(cContext.IdCommunity, CurrentIdModule);
                    }
                }
            }
        }