public ActionResult List(string groupTitle = "", int pageIndex = 0) { groupTitle = groupTitle.DeNormalizeForUrl(); var group = Groups.GetByTitle(groupTitle, _groupType); int?groupID = null; if (group != null) { groupID = group.ID; } if (pageIndex > 0) { pageIndex = pageIndex - 1; } else { pageIndex = 0; } var list = Articles.GetBlogList(pageIndex, pageSize, OnlineStore.Models.Enums.ArticleType.Blog, DateTime.Now, groupID); var latestPosts = Articles.GetLatestPosts(groupID.HasValue ? groupID.Value : (int?)null); var latestComments = ArticleComments.GetLatestComments(ArticleType.Blog, 6); var count = Articles.CountBlogList(OnlineStore.Models.Enums.ArticleType.Blog, DateTime.Now, groupID); var totalPages = (int)Math.Ceiling((decimal)count / pageSize); var paging = Utilities.MakePaging(totalPages, pageIndex + 1); foreach (var item in list) { try { var user = Identity.OSUsers.GetByID(item.UserID); item.UserTitle = user.Firstname + " " + user.Lastname; } catch (Exception ex) { item.UserTitle = StaticValues.HomeTitle; } } var model = new BlogList { DataList = list, GroupID = groupID, Paging = paging, TotalPages = totalPages, CurrentPageIndex = pageIndex, LatestPosts = latestPosts, LatestComments = latestComments }; return(View(url + "Index.cshtml", model: model)); }