public DefaultContentProjectionService(PageContentProjectionFactory pageContentProjectionFactory,
                                        IOptionService optionService, IUnitOfWork unitOfWork)
 {
     this.optionService = optionService;
     this.pageContentProjectionFactory = pageContentProjectionFactory;
     this.unitOfWork = unitOfWork;
 }
Ejemplo n.º 2
0
 public InsertContentToPageCommand(IContentService contentService, PageContentProjectionFactory projectionFactory,
                                   IWidgetService widgetService)
 {
     this.contentService    = contentService;
     this.projectionFactory = projectionFactory;
     this.widgetService     = widgetService;
 }
Ejemplo n.º 3
0
 public DefaultPreviewService(PageContentProjectionFactory pageContentProjectionFactory, IOptionService optionService, IRepository repository, ISecurityService securityService)
 {
     this.pageContentProjectionFactory = pageContentProjectionFactory;
     this.repository      = repository;
     this.optionService   = optionService;
     this.securityService = securityService;
 }
Ejemplo n.º 4
0
        /// <summary>
        /// Executes the specified request.
        /// </summary>
        /// <param name="request">The request.</param>
        /// <returns>Render page view model.</returns>
        public RenderPageViewModel Execute(Guid request)
        {
            // Creating fake region.
            var regionGuid = new Guid(regionId);
            var region     = new Region {
                Id = regionGuid, RegionIdentifier = regionIdentifier
            };
            var regionViewModel = new PageRegionViewModel {
                RegionId = regionGuid, RegionIdentifier = regionIdentifier
            };

            // Creating fake page content and loading it's children.
            var pageContent = new PageContent
            {
                Options = new List <PageContentOption>(),
                Region  = region
            };

            pageContent.Content = Repository
                                  .AsQueryable <ContentEntity>(c => c.Id == request)
                                  .FetchMany(f => f.ContentOptions)
                                  .FirstOrDefault();

            if (pageContent.Content != null)
            {
                var contentType = pageContent.Content.GetType();
                if (contentType == typeof(HtmlContentWidget) || contentType == typeof(ServerControlWidget))
                {
                    DemandAccess(RootModuleConstants.UserRoles.Administration);
                }
                else
                {
                    DemandAccess(RootModuleConstants.UserRoles.EditContent, RootModuleConstants.UserRoles.PublishContent);
                }
            }

            var options = OptionService.GetMergedOptionValues(pageContent.Options, pageContent.Content.ContentOptions);

            var contentProjection = PageContentProjectionFactory.Create(pageContent, pageContent.Content, options);

            return(new RenderPageViewModel
            {
                Contents = new List <PageContentProjection> {
                    contentProjection
                },
                Stylesheets = new List <IStylesheetAccessor> {
                    contentProjection
                },
                JavaScripts = new List <IJavaScriptAccessor> {
                    contentProjection
                },
                Regions = new List <PageRegionViewModel> {
                    regionViewModel
                }
            });
        }
Ejemplo n.º 5
0
 public GetPageToRenderCommand(IPageAccessor pageAccessor, PageContentProjectionFactory pageContentProjectionFactory,
                               PageStylesheetProjectionFactory pageStylesheetProjectionFactory, PageJavaScriptProjectionFactory pageJavaScriptProjectionFactory,
                               ICmsConfiguration cmsConfiguration, RootModuleDescriptor rootModuleDescriptor)
 {
     this.rootModuleDescriptor            = rootModuleDescriptor;
     this.pageContentProjectionFactory    = pageContentProjectionFactory;
     this.pageStylesheetProjectionFactory = pageStylesheetProjectionFactory;
     this.pageJavaScriptProjectionFactory = pageJavaScriptProjectionFactory;
     this.pageAccessor     = pageAccessor;
     this.cmsConfiguration = cmsConfiguration;
 }
Ejemplo n.º 6
0
 public DefaultContentProjectionService(PageContentProjectionFactory pageContentProjectionFactory,
                                        IOptionService optionService)
 {
     this.optionService = optionService;
     this.pageContentProjectionFactory = pageContentProjectionFactory;
 }
 public GetContentVersionPropertiesCommand(PageContentProjectionFactory projectionFactory)
 {
     this.projectionFactory = projectionFactory;
 }