public RelationshipTypeGridSpec(bool hasManagePermissions, List <OrganizationType> allOrganizationTypes)
        {
            var basicsColumnGroupCount = 5;

            if (hasManagePermissions)
            {
                Add(string.Empty, x => DhtmlxGridHtmlHelpers.MakeDeleteIconAndLinkBootstrap(x.DeleteUrl, true, x.CanDelete(), true), 30, DhtmlxGridColumnFilterType.None);
                Add(string.Empty, a => DhtmlxGridHtmlHelpers.MakeLtInfoEditIconAsModalDialogLinkBootstrap(new ModalDialogForm(SitkaRoute <OrganizationAndRelationshipTypeController> .BuildUrlFromExpression(t => t.EditRelationshipType(a)),
                                                                                                                              $"Edit {Models.FieldDefinition.ProjectRelationshipType.GetFieldDefinitionLabel()} \"{a.RelationshipTypeName}\"")),
                    30, DhtmlxGridColumnFilterType.None);
                basicsColumnGroupCount += 2;
            }

            Add($"{Models.FieldDefinition.ProjectRelationshipType.GetFieldDefinitionLabel()} Name", a => a.RelationshipTypeName, 240);
            Add($"Can Steward {Models.FieldDefinition.Project.GetFieldDefinitionLabelPluralized()}?", a => a.CanStewardProjects.ToCheckboxImageOrEmptyForGrid(), 90);
            Add("Serves as Primary Contact?", a => a.IsPrimaryContact.ToCheckboxImageOrEmptyForGrid(), 90);
            Add($"Must be Related to a {Models.FieldDefinition.Project.GetFieldDefinitionLabel()} Once?", a => a.CanOnlyBeRelatedOnceToAProject.ToCheckboxImageOrEmptyForGrid(), 90);
            Add($"Show on {Models.FieldDefinition.Project.GetFieldDefinitionLabel()} Fact Sheet", a => a.ShowOnFactSheet.ToCheckboxImageOrEmptyForGrid(), 90);

            foreach (var organizationType in allOrganizationTypes)
            {
                Add(organizationType.OrganizationTypeName, a => a.IsAssociatedWithOrganiztionType(organizationType).ToCheckboxImageOrEmptyForGrid(), 90);
            }

            GroupingHeader =
                BuildGroupingHeader(new ColumnHeaderGroupingList
            {
                { "", basicsColumnGroupCount },
                { $"Applicable to the following {Models.FieldDefinition.OrganizationType.GetFieldDefinitionLabelPluralized()}:", allOrganizationTypes.Count }
            });
        }
        public AttachmentTypeGridSpec(bool hasManagePermissions)
        {
            var basicsColumnGroupCount = 5;

            if (hasManagePermissions)
            {
                Add(string.Empty, x => DhtmlxGridHtmlHelpers.MakeDeleteIconAndLinkBootstrap(x.GetDeleteUrl(), true, x.CanDelete()), 30, DhtmlxGridColumnFilterType.None);
                Add(string.Empty, a => DhtmlxGridHtmlHelpers.MakeLtInfoEditIconAsModalDialogLinkBootstrap(new ModalDialogForm(SitkaRoute <AttachmentTypeController> .BuildUrlFromExpression(t => t.EditAttachmentType(a)),
                                                                                                                              $"Edit {FieldDefinitionEnum.AttachmentType.ToType().GetFieldDefinitionLabel()} \"{a.AttachmentTypeName}\"")),
                    30, DhtmlxGridColumnFilterType.None);
                basicsColumnGroupCount += 2;
            }

            Add($"{FieldDefinitionEnum.AttachmentType.ToType().GetFieldDefinitionLabel()} Name", a => a.AttachmentTypeName, 240);
            Add($"{FieldDefinitionEnum.AttachmentType.ToType().GetFieldDefinitionLabel()} Description", a => a.AttachmentTypeDescription, 240);
            Add($"Allowed File Types", a => a.AttachmentTypeFileResourceMimeTypes.GetFileResourceMimeTypeDisplayNamesAsCommaDelimitedList(), 240);
            if (MultiTenantHelpers.IsTaxonomyLevelTrunk())
            {
                Add(
                    $"Applicable to the following {FieldDefinitionEnum.TaxonomyTrunk.ToType().GetFieldDefinitionLabel()}",
                    a => a.AttachmentTypeTaxonomyTrunks.GetTaxonomyTrunkNamesAsCommaDelimitedList(), 240);
            }

            Add("# of Allowed Attachments", a => a.NumberOfAllowedAttachments, 80);
            Add("Maximum File Size", a => a.MaxFileSizeForDisplay, 140);
        }
Example #3
0
 public CustomPageGridSpec(bool hasManagePermissions)
 {
     if (hasManagePermissions)
     {
         Add(string.Empty, x => DhtmlxGridHtmlHelpers.MakeDeleteIconAndLinkBootstrap(x.DeleteUrl, true, true, true), 30, DhtmlxGridColumnFilterType.None);
         Add(string.Empty, a => DhtmlxGridHtmlHelpers.MakeLtInfoEditIconAsModalDialogLinkBootstrap(new ModalDialogForm(SitkaRoute <CustomPageController> .BuildUrlFromExpression(t => t.Edit(a)),
                                                                                                                       "Edit")),
             30, DhtmlxGridColumnFilterType.None);
         Add(string.Empty, a => DhtmlxGridHtmlHelpers.MakeModalDialogLink("<span>Edit Content</span>",
                                                                          SitkaRoute <CustomPageController> .BuildUrlFromExpression(y => y.EditInDialog(a)),
                                                                          800,
                                                                          $"Edit Content for {a.CustomPageDisplayName}",
                                                                          true,
                                                                          "Save",
                                                                          "Cancel",
                                                                          new List <string> {
             "gridButton"
         },
                                                                          null,
                                                                          null), 80, DhtmlxGridColumnFilterType.None);
     }
     Add("Page Name", a => a.CustomPageDisplayType != CustomPageDisplayType.Disabled ? UrlTemplate.MakeHrefString(a.AboutPageUrl, a.CustomPageDisplayName) : new HtmlString($"{a.CustomPageDisplayName}"), 180, DhtmlxGridColumnFilterType.Text);
     Add("Has Content", a => a.HasPageContent.ToYesNo(), 85, DhtmlxGridColumnFilterType.SelectFilterStrict);
     Add(Models.FieldDefinition.CustomPageDisplayType.ToGridHeaderString(), a => a.CustomPageDisplayType.CustomPageDisplayTypeDisplayName, 110, DhtmlxGridColumnFilterType.SelectFilterStrict);
     Add("Navigation Section", a => a.CustomPageNavigationSection.CustomPageNavigationSectionName, 110, DhtmlxGridColumnFilterType.SelectFilterStrict);
     Add("CustomPageID", a => a.CustomPageID, 0);
 }
Example #4
0
 public CustomPageGridSpec(bool hasManagePermissions)
 {
     if (hasManagePermissions)
     {
         Add(string.Empty, x => DhtmlxGridHtmlHelpers.MakeDeleteIconAndLinkBootstrap(x.GetDeleteUrl(), true, true), 30, DhtmlxGridColumnFilterType.None);
         Add(string.Empty, a => DhtmlxGridHtmlHelpers.MakeLtInfoEditIconAsModalDialogLinkBootstrap(new ModalDialogForm(SitkaRoute <CustomPageController> .BuildUrlFromExpression(t => t.Edit(a)),
                                                                                                                       850, "Edit")),
             30, DhtmlxGridColumnFilterType.None);
         Add(string.Empty, a => DhtmlxGridHtmlHelpers.MakeModalDialogLink("<span>Edit Content</span>",
                                                                          SitkaRoute <CustomPageController> .BuildUrlFromExpression(y => y.EditInDialog(a)),
                                                                          800,
                                                                          $"Edit Content for {a.CustomPageDisplayName}",
                                                                          true,
                                                                          "Save",
                                                                          "Cancel",
                                                                          new List <string> {
             "gridButton"
         },
                                                                          null,
                                                                          null), 80, DhtmlxGridColumnFilterType.None);
     }
     Add("Menu", a => a.FirmaMenuItem.GetFirmaMenuItemDisplayName(), 110, DhtmlxGridColumnFilterType.Text);
     Add("Page Name", a => !a.IsDisabled() ? UrlTemplate.MakeHrefString(a.GetAboutPageUrl(), a.CustomPageDisplayName) : new HtmlString($"{a.CustomPageDisplayName}"), 180, DhtmlxGridColumnFilterType.Text);
     Add("Has Content", a => a.HasPageContent().ToYesNo(), 85, DhtmlxGridColumnFilterType.SelectFilterStrict);
     Add(FieldDefinitionEnum.CustomPageViewableBy.ToType().ToGridHeaderString(), a => a.GetViewableRolesAsListOfStrings(), 400, DhtmlxGridColumnFilterType.Text);
     Add("CustomPageID", a => a.CustomPageID, 0);
 }
Example #5
0
 public NeptunePageGridSpec(bool hasManagePermissions)
 {
     if (hasManagePermissions)
     {
         Add(string.Empty, a => DhtmlxGridHtmlHelpers.MakeLtInfoEditIconAsModalDialogLinkBootstrap(new ModalDialogForm(SitkaRoute <NeptunePageController> .BuildUrlFromExpression(t => t.EditInDialog(a)),
                                                                                                                       $"Edit Intro Content for '{a.NeptunePageType.NeptunePageTypeDisplayName}'")),
             30);
     }
     Add("Page Name", a => a.NeptunePageType.NeptunePageTypeDisplayName, 180);
     Add("Has Content", a => a.HasNeptunePageContent().ToYesNo(), 85, DhtmlxGridColumnFilterType.SelectFilterStrict);
     Add("NeptunePageID", a => a.NeptunePageID, 0);
 }
Example #6
0
 public FirmaPageGridSpec(bool hasManagePermissions)
 {
     if (hasManagePermissions)
     {
         Add(string.Empty, a => DhtmlxGridHtmlHelpers.MakeLtInfoEditIconAsModalDialogLinkBootstrap(new ModalDialogForm(SitkaRoute <FirmaPageController> .BuildUrlFromExpression(t => t.EditInDialog(a)),
                                                                                                                       $"Edit Intro Content for '{a.FirmaPageType.FirmaPageTypeDisplayName}'")),
             30);
     }
     Add("Page Name", a => UrlTemplate.MakeHrefString(a.FirmaPageType.GetViewUrl(), a.FirmaPageType.FirmaPageTypeDisplayName), 180, DhtmlxGridColumnFilterType.Text);
     Add("Has Content", a => a.HasPageContent.ToYesNo(), 85, DhtmlxGridColumnFilterType.SelectFilterStrict);
     Add("Type", a => a.FirmaPageType.FirmaPageRenderType.FirmaPageRenderTypeDisplayName, 110, DhtmlxGridColumnFilterType.SelectFilterStrict);
     Add("FirmaPageID", a => a.FirmaPageID, 0);
 }
        public OrganizationTypeGridSpec(bool hasManagePermissions)
        {
            if (hasManagePermissions)
            {
                Add(string.Empty, x => DhtmlxGridHtmlHelpers.MakeDeleteIconAndLinkBootstrap(x.DeleteUrl, true, !x.HasDependentObjects(), true), 30, DhtmlxGridColumnFilterType.None);
                Add(string.Empty, a => DhtmlxGridHtmlHelpers.MakeLtInfoEditIconAsModalDialogLinkBootstrap(new ModalDialogForm(SitkaRoute <OrganizationAndRelationshipTypeController> .BuildUrlFromExpression(t => t.EditOrganizationType(a)),
                                                                                                                              $"Edit {Models.FieldDefinition.OrganizationType.GetFieldDefinitionLabel()} '{a.OrganizationTypeName}'")),
                    30, DhtmlxGridColumnFilterType.None);
            }

            Add($"{Models.FieldDefinition.OrganizationType.GetFieldDefinitionLabel()} Name", a => a.OrganizationTypeName, 240);
            Add("Abbreviation", a => a.OrganizationTypeAbbreviation, 200);
            Add("Is Default?", a => a.IsDefaultOrganizationType.ToCheckboxImageOrEmptyForGrid(), 80);
            Add("Is Funding Type?", a => a.IsFundingType.ToCheckboxImageOrEmptyForGrid(), 80);
            Add($"Show on {Models.FieldDefinition.Project.GetFieldDefinitionLabel()} Map?", a => a.ShowOnProjectMaps.ToCheckboxImageOrEmptyForGrid(), 150);
            Add("Legend Color", a => ToLegendColor(a), 90, DhtmlxGridColumnFilterType.None);
        }
Example #8
0
        public ContactRelationshipTypeGridSpec(bool hasManagePermissions)
        {
            var basicsColumnGroupCount = 5;

            if (hasManagePermissions)
            {
                Add(string.Empty, x => DhtmlxGridHtmlHelpers.MakeDeleteIconAndLinkBootstrap(x.GetDeleteUrl(), true, x.CanDelete()), 30, DhtmlxGridColumnFilterType.None);
                Add(string.Empty, a => DhtmlxGridHtmlHelpers.MakeLtInfoEditIconAsModalDialogLinkBootstrap(new ModalDialogForm(SitkaRoute <ContactRelationshipTypeController> .BuildUrlFromExpression(t => t.EditContactRelationshipType(a)),
                                                                                                                              $"Edit {FieldDefinitionEnum.ProjectContactRelationshipType.ToType().GetFieldDefinitionLabel()} \"{a.ContactRelationshipTypeName}\"")),
                    30, DhtmlxGridColumnFilterType.None);
                basicsColumnGroupCount += 2;
            }

            Add($"{FieldDefinitionEnum.ProjectContactRelationshipType.ToType().GetFieldDefinitionLabel()} Name", a => a.ContactRelationshipTypeName, 240);
            Add(FieldDefinitionEnum.ContactRelationshipTypeAcceptsMultipleValues.ToType().ToGridHeaderString(), a => a.ContactRelationshipTypeAcceptsMultipleValues.ToCheckboxImageOrEmptyForGrid(), 120);
            Add(FieldDefinitionEnum.IsContactRelationshipTypeRequired.ToType().ToGridHeaderString(), a => a.IsContactRelationshipTypeRequired.ToCheckboxImageOrEmptyForGrid(), 120);
            Add(FieldDefinitionEnum.CanContactTypeManageProject.ToType().ToGridHeaderString(), a => a.CanManageProject.ToCheckboxImageOrEmptyForGrid(), 120);
            Add("If Contact Relationship Type is required, Minimum Project Stage to require by", a => a.IsContactRelationshipRequiredMinimumProjectStage != null ? a.IsContactRelationshipRequiredMinimumProjectStage.ProjectStageDisplayName : string.Empty, 300);
        }
        public ProjectAttachmentGridSpec(bool hasManagePermissions)
        {
            var projectFieldDefinitionLabel        = FieldDefinitionEnum.Project.ToType().GetFieldDefinitionLabel();
            var attachmentTypeFieldDefinitionLabel = FieldDefinitionEnum.AttachmentType.ToType().GetFieldDefinitionLabel();

            if (hasManagePermissions)
            {
                Add(string.Empty, x => DhtmlxGridHtmlHelpers.MakeDeleteIconAndLinkBootstrap(x.GetDeleteUrl(), true, true), 30, DhtmlxGridColumnFilterType.None);
                Add(string.Empty, a => DhtmlxGridHtmlHelpers.MakeLtInfoEditIconAsModalDialogLinkBootstrap(new ModalDialogForm(a.GetEditUrl(),
                                                                                                                              $"Edit Attachment \"{a.ProjectAttachmentDisplayName}\"")),
                    30, DhtmlxGridColumnFilterType.None);
            }

            Add($"Attachment Name", a => UrlTemplate.MakeHrefString(a.GetFileResourceUrl(), a.ProjectAttachmentDisplayName + " " + BootstrapHtmlHelpers.MakeGlyphIcon("glyphicon-download"), new Dictionary <string, string> {
                { "target", "_blank" }
            }), 240);
            Add($"Attachment Description", a => a.ProjectAttachmentDescription, 240);

            Add($"{projectFieldDefinitionLabel} Name", a => UrlTemplate.MakeHrefString(a.GetProjectDetailUrl(), a.ProjectName), 240, DhtmlxGridColumnFilterType.Text);
            Add($"{attachmentTypeFieldDefinitionLabel}", a => a.AttachmentTypeName, 240, DhtmlxGridColumnFilterType.SelectFilterStrict);
            Add($"File Type", a => FileResourceMimeType.AllLookupDictionary[a.FileResourceMimeTypeID].FileResourceMimeTypeName, 240, DhtmlxGridColumnFilterType.SelectFilterStrict);
        }