Esempio n. 1
0
        public ScienceSidebarViewModel GetSidebarViewModel(ScienceCategoryPage model)
        {
            var viewModel = CreateViewModel <ScienceSidebarViewModel>(model);

            viewModel.Categories = GetCategoriesWithFeaturedPages(model);

            return(viewModel);
        }
Esempio n. 2
0
        private MainNavigationItemViewModel GetCategoryWithFeaturedPages(ScienceCategoryPage category)
        {
            var viewModel = _navigationItemService.GetViewModel <MainNavigationItemViewModel>(category);

            viewModel.Children = _navigationItemService.GetViewModels <MainNavigationItemViewModel>(category.FeaturedPages);

            return(viewModel);
        }
        public ActionResult Index(ScienceCategoryPage model)
        {
            var provider  = new UmbracoScienceDetailsPageProvider(Umbraco, ApplicationContext.ApplicationCache.RequestCache);
            var service   = new ScienceCategoryPageService(provider);
            var viewModel = service.GetViewModel(model);

            return(CurrentTemplate(viewModel));
        }
 public ScienceCategoryPageViewModel GetViewModel(ScienceCategoryPage scienceCategoryPage)
 {
     return(new ScienceCategoryPageViewModel()
     {
         Headline = scienceCategoryPage.GetHeadline(),
         Preamble = scienceCategoryPage.Preamble,
         ImageTextSection = GetImageTextSectionViewModels(scienceCategoryPage.ImageAndTextSection),
         Sections = GetSectionViewModels(scienceCategoryPage.MainContent),
         CategorisedPages = GetCategorisedPages(scienceCategoryPage),
         RelatedCategories = GetRelatedCategories(scienceCategoryPage)
     });
 }
Esempio n. 5
0
        private IEnumerable <MainNavigationItemViewModel> GetCategoriesWithFeaturedPages(ScienceCategoryPage model)
        {
            var category = GetCategoryWithFeaturedPages(model);

            return(category.AsEnumerableOfOne());
        }
        private IReadOnlyDictionary <char, IEnumerable <NavigationItemViewModel> > GetRelatedCategories(ScienceCategoryPage scienceCategoryPage)
        {
            if (ExistenceUtility.IsNullOrEmpty(scienceCategoryPage.RelatedCategories))
            {
                return(null);
            }

            return(scienceCategoryPage.RelatedCategories.CategorisePages());
        }
        private IReadOnlyDictionary <char, IEnumerable <NavigationItemViewModel> > GetCategorisedPages(ScienceCategoryPage scienceCategoryPage)
        {
            var pages = _pagesProvider.GetByCategory(scienceCategoryPage);

            if (ExistenceUtility.IsNullOrEmpty(pages))
            {
                return(null);
            }

            return(pages.CategorisePages());
        }