private void AddTabbedContent(PageRoot cmsContent, Page <Article> model) { if (cmsContent.Article?.TabbedContents == null) { return; } var tabbedContents = new List <TabbedContent>(); foreach (var responseTabbedContent in cmsContent.Article.TabbedContents) { var content = new TabbedContent { TabName = responseTabbedContent.TabName, TabTitle = responseTabbedContent.TabTitle, FindTraineeShip = responseTabbedContent.FindTraineeship }; var pageContent = new List <IHtmlControl>(); foreach (var tabContent in responseTabbedContent.Content.Items) { var factory = _controlAbstractFactory.CreateControlFactoryFor(tabContent); if (factory == null) { continue; } pageContent.Add(factory.Create(tabContent)); } content.Content = pageContent; tabbedContents.Add(content); } model.Content.TabbedContents = tabbedContents; }
internal static void AddBannerContent <T>(this Page <T> model, IHtmlControlAbstractFactory controlAbstractFactory, ResponseBanner cmsContentBanner) where T : IContentType { if (cmsContentBanner == null) { model.BannerModels = new List <Banner>(); return; } var banners = new List <Banner>(); foreach (var banner in cmsContentBanner.MainContent) { var bannerModel = new Banner { AllowUserToHideTheBanner = banner.AllowUserToHideTheBanner, BackgroundColour = banner.BackgroundColour, ShowOnTheHomepageOnly = banner.ShowOnTheHomepageOnly, Title = banner.Title, Id = banner.Id }; var pageContent = new List <IHtmlControl>(); foreach (var content in banner.Items) { var factory = controlAbstractFactory.CreateControlFactoryFor(content); if (factory == null) { continue; } pageContent.Add(factory.Create(content)); } bannerModel.Content = pageContent; banners.Add(bannerModel); } model.BannerModels = banners; }