BetterCms.Module.Pages.PagesModuleDescriptor.RegisterSidebarMainProjections C# (CSharp) Метод

RegisterSidebarMainProjections() публичный Метод

Registers the sidebar main projections.
public RegisterSidebarMainProjections ( ContainerBuilder containerBuilder ) : IEnumerable
containerBuilder Autofac.ContainerBuilder The container builder.
Результат IEnumerable
        public override IEnumerable<IPageActionProjection> RegisterSidebarMainProjections(ContainerBuilder containerBuilder)    
        {
            return new IPageActionProjection[]
                {
                    new InheriteProjection(
                        "div",
                        new IPageActionProjection[]
                            {
                                new SwitchActionProjection(pagesJsModuleIncludeDescriptor, page => "changePublishStatus")
                                    {
                                        Order = 10,
                                        Title = page => page.Status == PageStatus.Published ? PagesGlobalization.Sidebar_PageStatusUnpublish : PagesGlobalization.Sidebar_PageStatusPublish,
                                        CssClass = page => page.Status == PageStatus.Published ? "bcms-switch bcms-switch-on" : "bcms-switch bcms-switch-off"
                                    }, 
                                new HtmlElementProjection("div")
                                    {
                                        CssClass = page => "bcms-publisher-info",
                                        InnerHtml = page => page.Status == PageStatus.Published ? PagesGlobalization.Sidebar_PageStatusPublished : PagesGlobalization.Sidebar_PageStatusUnpublished,
                                            // TODO: add: <div class=\"bcms-publisher-includes-draft\">(Includes Drafts)</div>
                                        Order = 11
                                    }
                             })
                        {
                            Order = 10,
                            CssClass = page => "bcms-publisher-block",
                            AccessRole = RootModuleConstants.UserRoles.PublishContent,
                            ShouldBeRendered = page => !page.IsMasterPage && !IsReadOnly(page)
                        }, 
                     new ButtonActionProjection(pagesJsModuleIncludeDescriptor, page => "addNewPage")
                        {
                            Order = 20,
                            Title = page => PagesGlobalization.Sidebar_AddNewPageButtonTitle,
                            CssClass = page => "bcms-cp-btn bcms-cp-btn-add",
                            AccessRole = RootModuleConstants.UserRoles.EditContent
                        },
                     new ButtonActionProjection(pagesJsModuleIncludeDescriptor, page => "clonePage")
                        {
                            Order = 30,
                            Title = page => PagesGlobalization.Siderbar_ClonePageButtonTitle,
                            CssClass = page => "bcms-cp-btn",
                            AccessRole = RootModuleConstants.UserRoles.EditContent
                        },
                    new ButtonActionProjection(pagesJsModuleIncludeDescriptor, page => "translatePage")
                        {
                            Title = page => PagesGlobalization.Sidebar_TranslatePageButtonTitle,
                            CssClass = page => "bcms-cp-btn",
                            Order = 40,
                            ShouldBeRendered = page => CmsContext.Config.EnableMultilanguage && !page.IsMasterPage,
                            AccessRole = RootModuleConstants.UserRoles.EditContent
                        },
                    new ButtonActionProjection(masterPagesJsModuleIncludeDescriptor, page => "addMasterPage")
                        {
                            Title = page => PagesGlobalization.Sidebar_CreateMasterPageButtonTitle,
                            CssClass = page => "bcms-cp-btn js-redirect-to-new-page",
                            Order = 60,
                            ShouldBeRendered = page => page.IsMasterPage,
                            Id = page => "bcms-create-page-button-side-panel",
                            AccessRole = RootModuleConstants.UserRoles.EditContent
                        },
                    new InheriteProjection(
                        "div",
                        new IPageActionProjection[]
                            {
                                new ButtonActionProjection(seoJsModuleIncludeDescriptor, page => "openEditSeoDialog")
                                    {
                                        Order = 20,
                                        Title = page => PagesGlobalization.Sidebar_EditSeoButtonTitle,
                                        CssClass = page => "bcms-cp-settings-btn bcms-cp-seo-btn",
                                        AccessRole = RootModuleConstants.UserRoles.EditContent,
                                        ShouldBeRendered = page => !page.IsMasterPage
                                    },
                                new EditPagePropertiesButtonProjection(pagePropertiesJsModuleIncludeDescriptor, page => page.IsMasterPage ? "editMasterPageProperties" : "editPageProperties")
                                    {
                                        Order = 30,
                                        Title = page => page.IsMasterPage 
                                            ? PagesGlobalization.Sidebar_EditMasterPagePropertiesButtonTitle
                                            : PagesGlobalization.Sidebar_EditPagePropertiesButtonTitle,
                                        CssClass = page => "bcms-cp-settings-btn"
                                    },
                             })
                        {
                            Order = 800,
                            CssClass = page => "bcms-buttons-block"
                        }, 
                    new ButtonActionProjection(pagesJsModuleIncludeDescriptor, page => "deleteCurrentPage")
                        {
                            Order = 10000,
                            Title = page => PagesGlobalization.Sidebar_DeletePageButtonTitle,
                            CssClass = page => "bcms-cp-delete",
                            AccessRole = RootModuleConstants.UserRoles.DeleteContent
                        }
                };
        }