public ActionResult Index(NewsListingPage currentPage, int page = 0)
        {
            var allChildren = _contentLoader.GetChildren <NewsDetailPage>(currentPage.ContentLink)
                              .Where(
                x =>
                DateTime.Compare(x.StartPublish, DateTime.Now) < 0 &&
                DateTime.Compare(x.StopPublish, DateTime.Now) > 0)
                              .OrderByDescending(x => x.StartPublish).ToList();
            var count          = allChildren.Count;
            var newDetailPages =
                allChildren.Skip(page * currentPage.ItemsPerLoad)
                .Take(currentPage.ItemsPerLoad).ToList();

            ViewBag.ItemsPerLoad = currentPage.ItemsPerLoad;
            var isAjaxRequestLastPage = (page + 1) * currentPage.ItemsPerLoad >= count;
            var md = new NewsListingViewModel(currentPage)
            {
                NewsDetailPages       = newDetailPages,
                IsAjaxRequestLastPage = isAjaxRequestLastPage
            };

            if (HttpContext.Request.IsAjaxRequest() && page > 0)
            {
                if (newDetailPages.Any())
                {
                    return(PartialView("_NewsItems", md));
                }
                return(Content("StringForEndingListingPage"));
            }
            return(View(md));
        }
        public IActionResult All()
        {
            var viewModel = new NewsListingViewModel();

            var news = this.newsService.GetAll();

            viewModel.News = news.Select(n => new NewsViewModel
            {
                Id         = n.Id,
                Title      = n.Title,
                Content    = n.Content,
                PictureUrl = n.PictureUrl,
                CreatedOn  = n.CreatedOn,
                Views      = n.TimesSeen,
            });
            return(this.View(viewModel));
        }