public PostsListViewModel GetLatestPosts(int count) { var model = new PostsListViewModel { Posts = _postsRepository.GetLatestPosts(count) }; return model; }
public PostsListViewModel GetPostsForSearch(string searchString, int page, int pageSize) { var model = new PostsListViewModel { Posts = _postsRepository.GetPostsForSearch(searchString, page - 1, pageSize), TotalPosts = _postsRepository.TotalPostsForSearchString(searchString), PageSize = pageSize, CurrentPage = page, PageType = EPageType.SearchStringList, RouteValue = searchString }; model.TotalPages = Convert.ToInt32(Math.Ceiling((double)model.TotalPosts / pageSize)); model.Title = String.Format(@"Post for search string ""{0}""", searchString); return model; }
public static HtmlString PaginationForModel(this HtmlHelper helper, PostsListViewModel model) { var action = SetActionName(model.PageType); var routeValues = SetRouteValues(model.PageType, model.RouteValue, model.CurrentPage); if (model.CurrentPage == 1) { return helper.ActionLink("Next >", action, "Blog", routeValues[0], null); } if (model.CurrentPage == model.TotalPages) { return helper.ActionLink("< Previous", action, "Blog", routeValues[1], null); } return MvcHtmlString.Create( helper.ActionLink("< Previous", action, "Blog", routeValues[2], null) + helper.ActionLink("Next >", action, "Blog", routeValues[3], null).ToString()); }
public PostsListViewModel GetPostsForTag(string tagSlug, int page, int pageSize) { var tag = _tagsRepository.GetTag(tagSlug); var model = new PostsListViewModel { Posts = _postsRepository.GetPostsForTag(tagSlug, page - 1, pageSize), TotalPosts = _postsRepository.TotalPostsForTag(tagSlug), PageSize = pageSize, CurrentPage = page, PageType = EPageType.TagsList, RouteValue = tag.UrlSlug }; model.TotalPages = Convert.ToInt32(Math.Ceiling((double)model.TotalPosts / pageSize)); model.Title = String.Format(@"Latest posts tagged on ""{0}""", tag.Name); return model; }
public PostsListViewModel GetPostsForCategory(string categorySlug, int page, int pageSize) { var category = _categoriesRepository.GetCategory(categorySlug); var model = new PostsListViewModel { Posts = _postsRepository.GetPostsForCategory(categorySlug, page - 1, pageSize), TotalPosts = _postsRepository.TotalPostsForCategory(categorySlug), PageSize = pageSize, CurrentPage = page, PageType = EPageType.CategoriesList, RouteValue = category.Name }; model.TotalPages = Convert.ToInt32(Math.Ceiling((double)model.TotalPosts / pageSize)); model.Title = String.Format(@"Latest posts on category ""{0}""", category.Name); return model; }
public PostsListViewModel GetPostsList(int page, int pageSize) { var model = new PostsListViewModel { Posts = _postsRepository.GetAllPosts(page - 1, pageSize), TotalPosts = _postsRepository.TotalPosts(), PageSize = pageSize, CurrentPage = page, Title = "Latest posts", PageType = EPageType.Default }; model.TotalPages = Convert.ToInt32(Math.Ceiling((double) model.TotalPosts/pageSize)); return model; }