public IActionResult SitePages(int siteSectionId = 0, int pageNumber = 1) { // todo: if siteSectionId = 0, show list var model = new SitePageListModel(); if (siteSectionId == 0) { model.IsSiteSectionPage = true; var sections = this.siteSectionRepository.GetAll(); sections = sections.OrderBy(x => x.Title).ToList(); foreach (var section in sections) { model.Items.Add(new SitePageItemModel() { IsSiteSection = true, Key = section.Key, Title = section.Title, SitePageSectionId = section.SitePageSectionId, CreateDate = section.CreateDate, IsIndex = section.IsHomePageSection }); } model.SitePageSectionId = siteSectionId; } else { model.IsSiteSectionPage = false; var pages = this.sitePageRepository.GetPage(pageNumber, siteSectionId, AmountPerPage, out int total); model = this.ConvertToListModel(pages); model.Total = total; model.CurrentPageNumber = pageNumber; model.QuantityPerPage = AmountPerPage; var pageCount = (double)model.Total / model.QuantityPerPage; model.PageCount = (int)Math.Ceiling(pageCount); model.SitePageSectionId = siteSectionId; } return(this.View("Index", model)); }
private SitePageListModel ConvertToListModel(List <SitePage> pages) { var model = new SitePageListModel(); foreach (var page in pages) { model.Items.Add(new SitePageItemModel() { SitePageId = page.SitePageId, CreateDate = page.CreateDate, Title = page.Title, IsLive = page.IsLive, Key = page.Key, LiveUrlPath = UrlBuilder.BlogUrlPath(page.SitePageSection.Key, page.Key), PreviewUrlPath = UrlBuilder.BlogPreviewUrlPath(page.SitePageId), IsIndex = page.IsSectionHomePage }); } return(model); }