private void PopulateModel() { model = new Models.AdminMenuPage { PageTitle = Resource.AdvancedToolsHeading, PageHeading = Resource.AdvancedToolsHeading }; if (isAdmin || isContentAdmin || isSiteEditor) { model.Links.AddRange(new List <ContentAdminLink> { new ContentAdminLink { ResourceFile = "Resource", ResourceKey = "AdminMenuUrlManagerLink", Url = SiteRoot + "/Admin/UrlManager.aspx", CssClass = "adminlink-advanced-urls", IconCssClass = "fa fa-link", SortOrder = 10 }, new ContentAdminLink { ResourceFile = "Resource", ResourceKey = "RedirectManagerLink", Url = SiteRoot + "/Admin/RedirectManager.aspx", CssClass = "adminlink-advanced-redirects", IconCssClass = "fa fa-reply", SortOrder = 15 }, }); } if (isAdmin && siteSettings.IsServerAdminSite) { model.Links.AddRange(new List <ContentAdminLink> { new ContentAdminLink { ResourceFile = "Resource", ResourceKey = "AdminMenuBannedIPAddressesLabel", Url = SiteRoot + "/Admin/BannedIPAddresses.aspx", CssClass = "adminlink-advanced-bannedip", IconCssClass = "fa fa-ban", SortOrder = 20 }, new ContentAdminLink { ResourceFile = "Resource", ResourceKey = "AdminMenuFeatureModulesLink", Url = SiteRoot + "/Admin/ModuleAdmin.aspx", CssClass = "adminlink-advanced-modules", IconCssClass = "fa fa-star", SortOrder = 25 }, }); if ((!WebConfigSettings.DisableTaskQueue) && (isAdmin || WebUser.IsNewsletterAdmin)) { model.Links.Add(new ContentAdminLink { ResourceFile = "Resource", ResourceKey = "TaskQueueMonitorHeading", Url = SiteRoot + "/Admin/TaskQueueMonitor.aspx", CssClass = "adminlink-advanced-queue", IconCssClass = "fa fa-clock-o", SortOrder = 30 }); } if (WebConfigSettings.EnableDeveloperMenuInAdminMenu) { model.Links.Add(new ContentAdminLink { ResourceFile = "DevTools", ResourceKey = "DevToolsHeading", Url = SiteRoot + "/DevAdmin/Default.aspx", CssClass = "adminlink-advanced-devtools", IconCssClass = "fa fa-wrench", SortOrder = 35 }); } } //Supplemental Links model.Links.AddRange(supplementalLinks.AdminLinks.Where(l => l.Parent.ToLower() == "advancedtools").ToList()); //BreadCrumbs model.BreadCrumbs = new Models.BreadCrumbs { CrumbArea = Models.BreadCrumbArea.Admin, Crumbs = { new BreadCrumb { Text = Resource.AdminMenuLink, Url = SiteRoot + "/Admin/AdminMenu.aspx", SortOrder = -1, SystemName = "AdminMenu", Parent = "root" }, new BreadCrumb { Text = Resource.AdvancedToolsLink, Url = SiteRoot + "/Admin/AdvancedTools.aspx", IsCurrent = true, SortOrder = 0, SystemName = "AdvancedTools", Parent = "AdminMenu" } } }; //Sort the whole thing (allows mixing Supplemental Links with system links instead of them always being at the bottom) model.Links.Sort((a, b) => a.SortOrder.CompareTo(b.SortOrder)); }
private void PopulateModel() { model = new Models.AdminMenuPage { PageTitle = Resource.AdminMenuHeading, PageHeading = Resource.AdminMenuHeading }; //Site Settings if (IsAdminOrContentAdmin || isSiteEditor) { model.Links.Add(new ContentAdminLink { ResourceFile = "Resource", ResourceKey = "AdminMenuSiteSettingsLink", Url = SiteRoot + "/Admin/SiteSettings.aspx", CssClass = "adminlink-sitesettings", IconCssClass = "fa fa-cog", SortOrder = -1 }); } //Site List if (WebConfigSettings.AllowMultipleSites && siteSettings.IsServerAdminSite && IsAdmin) { model.Links.Add(new ContentAdminLink { ResourceFile = "Resource", ResourceKey = "SiteList", Url = SiteRoot + "/Admin/SiteList.aspx", CssClass = "adminlink-sitelist", IconCssClass = "fa fa-list", SortOrder = 10 }); } //Security Advisor if (IsAdmin && siteSettings.IsServerAdminSite) { var needsAttention = !securityAdvisor.UsingCustomMachineKey() || securityAdvisor.DefaultAdmin().userExists; model.Links.Add(new ContentAdminLink { ResourceFile = "Resource", ResourceKey = needsAttention ? "SecurityAdvisorNeedsAttention" : "SecurityAdvisor", Url = SiteRoot + "/Admin/SecurityAdvisor.aspx", CssClass = needsAttention ? "adminlink-securityadvisor text-danger" : "adminlink-securityadvisor", IconCssClass = needsAttention ? "fa fa-shield text-danger" : "fa fa-shield", SortOrder = 15 }); } //Role Admin if (WebUser.IsRoleAdmin || IsAdmin) { var addLink = true; if (WebConfigSettings.UseRelatedSiteMode && WebConfigSettings.RelatedSiteModeHideRoleManagerInChildSites && siteSettings.SiteId != WebConfigSettings.RelatedSiteID) { addLink = false; } if (addLink) { model.Links.Add(new ContentAdminLink { ResourceFile = "Resource", ResourceKey = "AdminMenuRoleAdminLink", Url = SiteRoot + "/Admin/RoleManager.aspx", CssClass = "adminlink-rolemanager", IconCssClass = "fa fa-users", SortOrder = 20 }); } } //Site Permissions if (IsAdmin) { model.Links.Add(new ContentAdminLink { ResourceFile = "Resource", ResourceKey = "SiteSettingsPermissionsTab", Url = SiteRoot + "/Admin/PermissionsMenu.aspx", CssClass = "adminlink-sitepermissions", IconCssClass = "fa fa-key", SortOrder = 25 }); } //Member List if (WebUser.IsInRoles(siteSettings.RolesThatCanViewMemberList) || WebUser.IsInRoles(siteSettings.RolesThatCanLookupUsers)) { model.Links.Add(new ContentAdminLink { ResourceFile = "Resource", ResourceKey = "MemberListLink", Url = SiteRoot + WebConfigSettings.MemberListUrl, CssClass = "adminlink-memberlist", IconCssClass = "fa fa-address-book-o", SortOrder = 30 }); } //Add User if (WebUser.IsInRoles(siteSettings.RolesThatCanCreateUsers + siteSettings.RolesThatCanManageUsers + siteSettings.RolesThatCanLookupUsers)) { model.Links.Add(new ContentAdminLink { ResourceFile = "Resource", ResourceKey = "MemberListAddUserLabel", Url = SiteRoot + "/Admin/ManageUsers.aspx?userId=-1", CssClass = "adminlink-adduser", IconCssClass = "fa fa-user-plus", SortOrder = 35 }); } //Page Manager if (IsAdminOrContentAdmin || isSiteEditor || SiteMapHelper.UserHasAnyCreatePagePermissions(siteSettings)) { model.Links.Add(new ContentAdminLink { ResourceFile = "Resource", ResourceKey = "AdminMenuPageTreeLink", Url = SiteRoot + WebConfigSettings.PageTreeRelativeUrl, CssClass = "adminlink-pagemanager", IconCssClass = "fa fa-sitemap", SortOrder = 40 }); } //Content Manager if (IsAdminOrContentAdmin || isSiteEditor) { model.Links.Add(new ContentAdminLink { ResourceFile = "Resource", ResourceKey = "AdminMenuContentManagerLink", Url = SiteRoot + "/Admin/ContentCatalog.aspx", CssClass = "adminlink-contentmanager", IconCssClass = "fa fa-hand-pointer-o", SortOrder = 45 }); } //Content Workflow if (WebConfigSettings.EnableContentWorkflow && siteSettings.EnableContentWorkflow) { model.Links.Add(new ContentAdminLink { ResourceFile = "Resource", ResourceKey = "AdminMenuContentWorkflowLabel", Url = SiteRoot + "/Admin/ContentWorkflow.aspx", CssClass = "adminlink-contentworkflow", IconCssClass = "fa fa-code-fork", SortOrder = 50 }); } //Content Templates/Styles if (IsAdminOrContentAdmin || isSiteEditor || WebUser.IsInRoles(siteSettings.RolesThatCanEditContentTemplates)) { model.Links.AddRange(new List <ContentAdminLink> { new ContentAdminLink { ResourceFile = "Resource", ResourceKey = "ContentTemplates", Url = SiteRoot + "/Admin/ContentTemplates.aspx", CssClass = "adminlink-contenttemplates", IconCssClass = "fa fa-object-group", SortOrder = 55 }, new ContentAdminLink { ResourceFile = "Resource", ResourceKey = "ContentStyleTemplates", Url = SiteRoot + "/Admin/ContentStyles.aspx", CssClass = "adminlink-contentstyles", IconCssClass = "fa fa-code", SortOrder = 60 } }); } //Design Tools if (IsAdmin || WebUser.IsContentAdmin || WebUser.IsInRoles(siteSettings.RolesThatCanManageSkins)) { model.Links.Add(new ContentAdminLink { ResourceFile = "DevTools", ResourceKey = "DesignTools", Url = SiteRoot + "/DesignTools/Default.aspx", CssClass = "adminlink-designtools", IconCssClass = "fa fa-paint-brush", SortOrder = 65 }); } //File Manager //using the FileManagerLink to check if the link should render because it has a lot of criteria, best not to duplicate it var fileManagerLinkTest = new FileManagerLink(); if (fileManagerLinkTest.ShouldRender()) { model.Links.Add(new ContentAdminLink { ResourceFile = "Resource", ResourceKey = "AdminMenuFileManagerLink", Url = SiteRoot + "/FileManager?view=fullpage", CssClass = "adminlink-filemanager", IconCssClass = "fa fa-folder-open", SortOrder = 70 }); } //Newsletter if (WebConfigSettings.EnableNewsletter && (IsAdmin || isSiteEditor || WebUser.IsNewsletterAdmin)) { model.Links.Add(new ContentAdminLink { ResourceFile = "Resource", ResourceKey = "AdminMenuNewsletterAdminLabel", Url = SiteRoot + "/eletter/Admin.aspx", CssClass = "adminlink-newsletter", IconCssClass = "fa fa-newspaper-o", SortOrder = 75 }); } //Commerce if (isCommerceReportViewer && commerceConfig != null && commerceConfig.IsConfigured) { model.Links.Add(new ContentAdminLink { ResourceFile = "Resource", ResourceKey = "CommerceReportsLink", Url = SiteRoot + "/Admin/SalesSummary.aspx", CssClass = "adminlink-commercereports", IconCssClass = "fa fa-shopping-basket", SortOrder = 80 }); } //Registration Agreement if (IsAdminOrContentAdmin) { model.Links.Add(new ContentAdminLink { ResourceFile = "Resource", ResourceKey = "RegistrationAgreementLink", Url = SiteRoot + "/Admin/EditRegistrationAgreement.aspx", CssClass = "adminlink-registrationagreement", IconCssClass = "fa fa-handshake-o", SortOrder = 85 }); //Login Page Text if (!WebConfigSettings.DisableLoginInfo) { model.Links.Add(new ContentAdminLink { ResourceFile = "Resource", ResourceKey = "LoginPageContent", Url = SiteRoot + "/Admin/EditLoginInfo.aspx", CssClass = "adminlink-logininfo", IconCssClass = "fa fa-file-o", SortOrder = 90 }); } //Core Data if (siteSettings.IsServerAdminSite) { model.Links.Add(new ContentAdminLink { ResourceFile = "Resource", ResourceKey = "CoreDataAdministrationLink", Url = SiteRoot + "/Admin/CoreData.aspx", CssClass = "adminlink-coredata", IconCssClass = "fa fa-database", SortOrder = 95 }); } } //Adv. Tools if (IsAdminOrContentAdmin || isSiteEditor) { model.Links.Add(new ContentAdminLink { ResourceFile = "Resource", ResourceKey = "AdvancedToolsLink", Url = SiteRoot + "/Admin/AdvancedTools.aspx", CssClass = "adminlink-advancedtools", IconCssClass = "fa fa-wrench", SortOrder = 100 }); //System Info if (siteSettings.IsServerAdminSite || WebConfigSettings.ShowSystemInformationInChildSiteAdminMenu) { model.Links.Add(new ContentAdminLink { ResourceFile = "Resource", ResourceKey = "AdminMenuServerInfoLabel", Url = SiteRoot + "/Admin/ServerInformation.aspx", CssClass = "adminlink-serverinfo", IconCssClass = "fa fa-info-circle", SortOrder = 105 }); } } //Log Viewer if (IsAdmin && siteSettings.IsServerAdminSite && WebConfigSettings.EnableLogViewer) { model.Links.Add(new ContentAdminLink { ResourceFile = "Resource", ResourceKey = "AdminMenuServerLogLabel", Url = SiteRoot + "/Admin/ServerLog.aspx", CssClass = "adminlink-log", IconCssClass = "fa fa-clipboard", SortOrder = 110 }); } //Supplemental Links model.Links.AddRange(supplementalLinks.AdminLinks.Where(l => l.Parent.ToLower() == "root").ToList()); //Sort the whole thing (allows mixing Supplemental Links with system links instead of them always being at the bottom) model.Links.Sort((a, b) => a.SortOrder.CompareTo(b.SortOrder)); }
private void PopulateModel() { model = new Models.AdminMenuPage { PageTitle = Resource.AdminMenuContentWorkflowLabel, PageHeading = Resource.AdminMenuContentWorkflowLabel }; model.Links.AddRange(new List <ContentAdminLink> { new ContentAdminLink { ResourceFile = "Resource", ResourceKey = "AwaitingApprovalHeading", Url = SiteRoot + "/Admin/ContentAwaitingApproval.aspx", CssClass = "adminlink-workflow-needapproval", IconCssClass = "fa fa-thumbs-o-up", SortOrder = 10 }, new ContentAdminLink { ResourceFile = "Resource", ResourceKey = "RejectedContentHeading", Url = SiteRoot + "/Admin/RejectedContent.aspx", CssClass = "adminlink-workflow-rejected", IconCssClass = "fa fa-thumbs-o-down", SortOrder = 20 }, new ContentAdminLink { ResourceFile = "Resource", ResourceKey = "PendingPagesTitle", Url = SiteRoot + "/Admin/PendingPages.aspx", CssClass = "adminlink-workflow-pendingpages", IconCssClass = "fa fa-file-text-o", SortOrder = 20 } }); if (WebConfigSettings.Use3LevelContentWorkflow) { model.Links.Add(new ContentAdminLink { ResourceFile = "Resource", ResourceKey = "AwaitingPublishingHeading", Url = SiteRoot + "/Admin/ContentAwaitingPublishing.aspx", CssClass = "adminlink-workflow-needpublishing", IconCssClass = "fa fa-paper-plane-o", SortOrder = 15 }); } //Supplemental Links model.Links.AddRange(supplementalLinks.AdminLinks.Where(l => l.Parent.ToLower() == "workflow").ToList()); //BreadCrumbs model.BreadCrumbs = new Models.BreadCrumbs { CrumbArea = Models.BreadCrumbArea.Admin, Crumbs = { new BreadCrumb { Text = Resource.AdminMenuLink, Url = SiteRoot + "/Admin/AdminMenu.aspx", SortOrder = -1, SystemName = "AdminMenu", Parent = "root" }, new BreadCrumb { Text = Resource.AdminMenuContentWorkflowLabel, Url = SiteRoot + "/Admin/ContentWorkflow.aspx", IsCurrent = true, SortOrder = 0, SystemName = "ContentWorkflow", Parent = "AdminMenu" } } }; //skin style information //model.SkinConfig = new SkinConfig //{ // PanelOptions = new List<PanelOption> // { // new PanelOption { Name = "OuterWrapperPanel", Class = "outerwrap"}, // new PanelOption { Name = "InnerWrapperPanel", Class = "panelwrapper"}, // new PanelOption { Name = "OuterBodyPanel", Class = "outerbody"}, // new PanelOption { Name = "InnerBodyPanel", Class = "modulecontent"} // } //}; //Sort the whole thing (allows mixing Supplemental Links with system links instead of them always being at the bottom) model.Links.Sort((a, b) => a.SortOrder.CompareTo(b.SortOrder)); model.BreadCrumbs.Crumbs.Sort((a, b) => a.SortOrder.CompareTo(b.SortOrder)); }
private void PopulateModel() { model = new Models.AdminMenuPage { PageTitle = Resource.CoreDataAdministrationHeading, PageHeading = Resource.CoreDataAdministrationHeading }; if (siteSettings.IsServerAdminSite) { model.Links.AddRange(new List <ContentAdminLink> { // don't have multi-language tools yet so this is not needed //new ContentAdminLink //{ // ResourceFile = "Resource", // ResourceKey = "LanguageAdministrationLink", // Url = SiteRoot + "/Admin/AdminLanguage.aspx", // CssClass = "adminlink-coredata-language", // IconCssClass = "fa fa-language", // SortOrder = 10 //}, new ContentAdminLink { ResourceFile = "Resource", ResourceKey = "CurrencyAdministrationLink", Url = SiteRoot + "/Admin/AdminCurrency.aspx", CssClass = "adminlink-coredata-currency", IconCssClass = "fa fa-usd", SortOrder = 10 }, new ContentAdminLink { ResourceFile = "Resource", ResourceKey = "CountryAdministrationLink", Url = SiteRoot + "/Admin/AdminCountry.aspx", CssClass = "adminlink-coredata-country", IconCssClass = "fa fa-flag", SortOrder = 15 }, new ContentAdminLink { ResourceFile = "Resource", ResourceKey = "GeoZoneAdministrationLink", Url = SiteRoot + "/Admin/AdminGeoZone.aspx", CssClass = "adminlink-coredata-geozone", IconCssClass = "fa fa-globe", SortOrder = 20 }, }); } if (isAdmin || isContentAdmin) { model.Links.AddRange(new List <ContentAdminLink> { new ContentAdminLink { ResourceFile = "Resource", ResourceKey = "TaxClassAdminLink", Url = SiteRoot + "/Admin/AdminTaxClass.aspx", CssClass = "adminlink-coredata-taxclass", IconCssClass = "fa fa-balance-scale", SortOrder = 25 }, new ContentAdminLink { ResourceFile = "Resource", ResourceKey = "TaxRateAdminLink", Url = SiteRoot + "/Admin/AdminTaxRate.aspx", CssClass = "adminlink-coredata-taxrate", IconCssClass = "fa fa-percent", SortOrder = 30 }, }); } //Supplemental Links model.Links.AddRange(supplementalLinks.AdminLinks.Where(l => l.Parent.ToLower() == "coredata").ToList()); //BreadCrumbs model.BreadCrumbs = new Models.BreadCrumbs { CrumbArea = Models.BreadCrumbArea.Admin, Crumbs = { new BreadCrumb { Text = Resource.AdminMenuLink, Url = SiteRoot + "/Admin/AdminMenu.aspx", SortOrder = -1, SystemName = "AdminMenu", Parent = "root" }, new BreadCrumb { Text = Resource.CoreDataAdministrationLink, Url = SiteRoot + "/Admin/CoreData.aspx", IsCurrent = true, SortOrder = 0, SystemName = "CoreData", Parent = "AdminMenu" } } }; //Sort the whole thing (allows mixing Supplemental Links with system links instead of them always being at the bottom) model.Links.Sort((a, b) => a.SortOrder.CompareTo(b.SortOrder)); }