Example #1
0
        public HomePageViewModel Build()
        {
            var cats = _magazineService.GetCategories();

            var mainViewModel     = new HomePageViewModel();
            var headerViewModel   = new HeaderViewModel();
            var footerViewModel   = new FooterViewModel();
            var mainPageViewModel = new MainPageViewModel();

            headerViewModel.SiteTitle = "Magazine Website";
            if (cats != null && cats.Any())
            {
                headerViewModel.Categories = cats.ToList();
                footerViewModel.Categories = cats.ToList();
            }

            mainPageViewModel.LeftColumn  = this.BindingDataForMainPageLeftColumnViewModel();
            mainPageViewModel.RightColumn = this.BindingDataForMainPageRightColumnViewModel();

            mainViewModel.Header    = headerViewModel;
            mainViewModel.DashBoard = new DashboardViewModel();
            mainViewModel.Footer    = footerViewModel;
            mainViewModel.MainPage  = mainPageViewModel;

            return(mainViewModel);
        }
Example #2
0
        public HomePageViewModel Build(int itemId)
        {
            _magazineService.IncreaseNumOfView(itemId);

            var cats = _magazineService.GetCategories();

            var mainViewModel     = new HomePageViewModel();
            var headerViewModel   = new HeaderViewModel();
            var footerViewModel   = new FooterViewModel();
            var mainPageViewModel = new MainPageViewModel();

            if (cats != null && cats.Any())
            {
                headerViewModel.Categories = cats.ToList();
                footerViewModel.Categories = cats.ToList();
            }

            mainPageViewModel.LeftColumn  = BindingDataForDetailsLeftColumnViewModel(itemId);
            mainPageViewModel.RightColumn = BindingDataForMainPageRightColumnViewModel();

            headerViewModel.SiteTitle = string.Format("Magazine Website - {0}",
                                                      ((DetailsLeftColumnViewModel)mainPageViewModel.LeftColumn).CurrentItem.ItemContent.Title);

            mainViewModel.Header    = headerViewModel;
            mainViewModel.DashBoard = new DashboardViewModel();
            mainViewModel.Footer    = footerViewModel;
            mainViewModel.MainPage  = mainPageViewModel;

            return(mainViewModel);
        }
        // http://www.strathweb.com/2012/03/serializing-entity-framework-objects-to-json-in-asp-net-web-api/
        public IEnumerable <CategoryDto> GetCategories()
        {
            var categories = _magazineService.GetCategories();

            if (categories != null && categories.Count() >= 0)
            {
                return(categories);
            }

            throw new HttpResponseException(new HttpResponseMessage(HttpStatusCode.NotFound));
        }
        public HomePageViewModel Build(int categoryId)
        {
            var cats = _magazineService.GetCategories();

            var mainViewModel     = new HomePageViewModel();
            var headerViewModel   = new HeaderViewModel();
            var footerViewModel   = new FooterViewModel();
            var mainPageViewModel = new MainPageViewModel();

            if (cats != null && cats.Any())
            {
                headerViewModel.Categories = cats.ToList();
                footerViewModel.Categories = cats.ToList();
            }

            mainPageViewModel.LeftColumn  = BindingDataForCategoryLeftColumnViewModel(categoryId);
            mainPageViewModel.RightColumn = BindingDataForMainPageRightColumnViewModel();

            var items = ((CategoryLeftColumnViewModel)mainPageViewModel.LeftColumn).Items;

            if (items != null && items.Count > 0)
            {
                headerViewModel.SiteTitle = string.Format("Magazine Website - {0} category", items.FirstOrDefault().Category.Name);
            }
            else
            {
                headerViewModel.SiteTitle = "Magazine Website";
            }

            mainViewModel.Header    = headerViewModel;
            mainViewModel.DashBoard = new DashboardViewModel();
            mainViewModel.Footer    = footerViewModel;
            mainViewModel.MainPage  = mainPageViewModel;

            return(mainViewModel);
        }