/// <summary> /// Parameters for mapping an IPageViewModel using an /// IPageViewModelBuilder implementation. /// </summary> /// <param name="pageModel">The page data to include in the view model.</param> /// <param name="visualEditorMode">The view mode requested by the visual editor or a default value.</param> public PageViewModelBuilderParameters( PageRenderDetails pageModel, VisualEditorMode visualEditorMode ) { PageModel = pageModel; VisualEditorMode = visualEditorMode; }
/// <summary> /// Parameters for mapping an ICustomEntityPageViewModel using an /// IPageViewModelMapper implementation. /// </summary> /// <param name="page">The page data to include in the view model.</param> /// <param name="visualEditorMode">The view mode requested by the visual editor or a default value.</param> /// <param name="customEntityModel">he custom entity model data to use in the mapping.</param> public CustomEntityPageViewModelBuilderParameters( PageRenderDetails page, VisualEditorMode visualEditorMode, CustomEntityRenderDetails customEntityModel ) : base(page, visualEditorMode) { CustomEntityModel = customEntityModel; }
public T Map <T>(PageRenderDetails page, VisualEditorMode siteViewerMode) where T : IEditablePageViewModel, IPageRoutableViewModel, new() { var vm = new T(); vm.Page = page; vm.PageRoutingHelper = CreatePageRoutingHelper(page.PageId, page.PageVersionId, siteViewerMode); vm.IsPageEditMode = siteViewerMode == VisualEditorMode.Edit; return(vm); }
public IEditablePageViewModel MapCustomEntityModel( Type displayModelType, PageRenderDetails page, CustomEntityRenderDetails customEntityRenderDetails, VisualEditorMode siteViewerMode) { return((IEditablePageViewModel)_mapMethod .MakeGenericMethod(displayModelType) .Invoke(this, new object[] { page, customEntityRenderDetails, siteViewerMode })); }
/// <summary> /// Shared basic data mapping assertions between <see cref="PageRenderDetails"/> /// query handler tests, which are expected to be using the same page /// construction schema. /// </summary> internal static void AssertBasicDataMapping( AddPageCommand addPageCommand, int versionId, PageRenderDetails page ) { GetPageRenderSummaryByIdQueryHandlerTests.AssertBasicDataMapping(addPageCommand, versionId, page); page.Template.Should().NotBeNull(); page.Regions.Should().NotBeNull(); page.Regions.Should().HaveCount(1); }
protected void MapInternal(PageVersion dbPageVersion, PageRenderDetails page) { page.Template = _pageTemplateMapper.Map(dbPageVersion.PageTemplate); page.Regions = dbPageVersion .PageTemplate .PageTemplateRegions .Select(r => new PageRegionRenderDetails() { PageTemplateRegionId = r.PageTemplateRegionId, Name = r.Name // Blocks mapped elsewhere }) .ToList(); }
/// <summary> /// Shared block data mappingassertions between <see cref="PageRenderDetails"/> /// query handler tests, which are epxected to be using the same page /// and block data construction schema. /// </summary> internal static void AssertBlockDataMapping( string uniqueData, int plainTextBlockId, int imageBlockId, PageRenderDetails page ) { page.Should().NotBeNull(); page.Regions.Should().NotBeNull(); page.Regions.Should().HaveCount(1); var bodyRegion = page.Regions.Single(); bodyRegion.Name.Should().Be("Body"); bodyRegion.PageTemplateRegionId.Should().BePositive(); bodyRegion.Blocks.Should().HaveCount(2); var plainTextBlock = bodyRegion.Blocks.SingleOrDefault(b => b.PageVersionBlockId == plainTextBlockId); plainTextBlock.BlockType.Should().NotBeNull(); plainTextBlock.BlockType.FileName.Should().Be("PlainText"); plainTextBlock.DisplayModel.Should().NotBeNull(); plainTextBlock.DisplayModel.Should().BeOfType <PlainTextDataModel>(); var plainTextDisplayModel = plainTextBlock.DisplayModel as PlainTextDataModel; plainTextDisplayModel.PlainText.Should().Be(uniqueData); plainTextBlock.EntityVersionPageBlockId.Should().Be(plainTextBlockId); plainTextBlock.Template.Should().BeNull(); var imageBlock = bodyRegion.Blocks.SingleOrDefault(b => b.PageVersionBlockId == imageBlockId); imageBlock.BlockType.Should().NotBeNull(); imageBlock.BlockType.FileName.Should().Be("Image"); imageBlock.DisplayModel.Should().NotBeNull(); imageBlock.DisplayModel.Should().BeOfType <ImageDisplayModel>(); var imageDisplayModel = imageBlock.DisplayModel as ImageDisplayModel; imageDisplayModel.AltText.Should().NotBeNull(); imageDisplayModel.Source.Should().NotBeNull(); imageBlock.EntityVersionPageBlockId.Should().Be(imageBlockId); imageBlock.Template.Should().BeNull(); }
private CustomEntityDetailsPageViewModel <TDisplayModel> MapCustomEntityModel <TDisplayModel>( PageRenderDetails page, CustomEntityRenderDetails customEntityRenderDetails, VisualEditorMode siteViewerMode ) where TDisplayModel : ICustomEntityDetailsDisplayViewModel { var vm = Map <CustomEntityDetailsPageViewModel <TDisplayModel> >(page, siteViewerMode); var customModel = new CustomEntityRenderDetailsViewModel <TDisplayModel>(); customModel.CustomEntityId = customEntityRenderDetails.CustomEntityId; customModel.CustomEntityVersionId = customEntityRenderDetails.CustomEntityVersionId; customModel.Locale = customEntityRenderDetails.Locale; customModel.Sections = customEntityRenderDetails.Sections; customModel.Title = customEntityRenderDetails.Title; customModel.UrlSlug = customEntityRenderDetails.UrlSlug; customModel.WorkFlowStatus = customEntityRenderDetails.WorkFlowStatus; customModel.Model = _customEntityDisplayModelMapper.MapDetails <TDisplayModel>(customEntityRenderDetails); vm.CustomEntity = customModel; return(vm); }
public PageViewModel Map(PageRenderDetails page, VisualEditorMode siteViewerMode) { return(Map <PageViewModel>(page, siteViewerMode)); }