// [Authorize] public async Task <IActionResult> GetByCategory(AdsPerPageViewModel input) { // Explicitly check the page in case someone wants to cheat :) input.Page = input.Page < 1 ? 1 : input.Page; var model = new GetAllViewModel { PageNumber = input.Page, AdsCount = await this.adsService.AllAdsByCategoryCountAsync(input.CategoryName, input.CityId), SortBy = input.SortBy == null ? GlobalConstants.ByDateDescending : input.SortBy, CityId = input.CityId, CategoryName = input.CategoryName, Cities = await this.citiesService.GetAllCitiesAsync <CitySimpleViewModel>(), }; // If we're on page 4 and decide to filter by city, and the ads count are not enough for 4 pages, pagination will break. // Therefore, we need to explicitly check each time and then get all model Ads. if (model.AdsCount <= GlobalConstants.ItemsPerPage) { model.PageNumber = 1; } model.Ads = await this.adsService.GetByCategoryAsync <AdsShortDetailsViewModel>(input.CategoryName, input.SortBy, input.CityId, model.PageNumber); return(this.View(model)); }
public JsonResult GetAll() { var getAllViewModel = new GetAllViewModel(); var allTasks = _taskService.GetAllByUserId(WebSecurity.CurrentUserId); var allTasksViewModels = (from task in allTasks select new TaskViewModel { Id = task.Id, Title = task.Title, ShortTitle = task.ShortTitle, Description = task.Description, DurationMinutes = task.DurationMinutes, Repetitions = task.Repetitions, Theme = (TaskTheme)task.Theme, ThemeName = ((TaskTheme)task.Theme).ToString().ToLower(), Order = task.Order, DateCreated = task.DateCreated, IsArchived = task.IsArchived, HasNoCompletedItems = !task.CompletedTaskItems.Any() }).ToList(); getAllViewModel.ActiveTasks = allTasksViewModels.Where(x => !x.IsArchived).OrderBy(x => x.Order).ToList(); getAllViewModel.ArchivedTasks = allTasksViewModels.Where(x => x.IsArchived).OrderByDescending(x => x.DateCreated).ToList(); return(Json(_validationHelper.ModelStateToJsonResult(ModelState, getAllViewModel), JsonRequestBehavior.AllowGet)); }
public void ExecuteGetAll() { var getAllViewModel = new GetAllViewModel(new ViewDummy()) { CertificateService = service }; True(!string.IsNullOrWhiteSpace(getAllViewModel.PerformGetAll())); }
public IActionResult GetByUser(string id, int currentPage = 1) { var skip = (currentPage - 1) * AnnouncementsConstants.AnnouncementsPerPage; var pageModel = new Page { CurrentPage = currentPage, }; var announcementViewModel = this.announcementService.GetByUser <AnnouncementViewModel>(id); var viewModel = new GetAllViewModel() { Announcements = announcementViewModel, Page = pageModel, }; return(this.View(viewModel)); }
public IActionResult Search(string search, string category, string city, int currentPage = 1) { var skip = (currentPage - 1) * AnnouncementsConstants.AnnouncementsPerPage; var pageModel = new Page { CurrentPage = currentPage, }; var announcementViewModel = this.announcementService.GetByKeyWord <AnnouncementViewModel>(search, category, city); var viewModel = new GetAllViewModel() { Announcements = announcementViewModel, Page = pageModel, }; return(this.View(viewModel)); }
public IActionResult Index() { var db = new FreebayDb(_connectionString); List <int> list = HttpContext.Session.Get <List <int> >("Ids"); if (list == null) { list = new List <int>(); } HttpContext.Session.Set("Ids", list); var vm = new GetAllViewModel { Ids = list, Posts = db.GetAllPosts() }; return(View(vm)); }
public async Task <IActionResult> MyAds(int page = 1) { page = page < 1 ? 1 : page; var user = await this.userManager.GetUserAsync(this.User); var adsPerPage = await this.adsService.GetMyAdsAsync <AdsShortDetailsViewModel>(user.Id, page); var allMyAdsCount = await this.adsService.GetAdsCountByUserIdAsync(user.Id); var model = new GetAllViewModel { Ads = adsPerPage, AdsCount = allMyAdsCount, PageNumber = page, }; return(this.View(model)); }
public IActionResult AnnouncementsByCategory(string categoryName, int currentPage = 1) { var skip = (currentPage - 1) * AnnouncementsConstants.AnnouncementsPerPage; var pageModel = new Page { CurrentPage = currentPage, }; pageModel.AnnouncementsCount = this.announcementService.AllAnnouncementByCategoryCount(categoryName); var announcementViewModel = this.announcementService.GetByCategory <AnnouncementViewModel>(categoryName, skip); var categories = this.categoryService.GetAll <IndexCategoriesView>(); var viewModel = new GetAllViewModel() { Announcements = announcementViewModel, Page = pageModel, Categories = categories, }; return(this.View(viewModel)); }
public IActionResult AllAnnouncements(int currentPage = 1) { var skip = (currentPage - 1) * AnnouncementsConstants.AnnouncementsPerPage; var pageModel = new Page { CurrentPage = currentPage, }; var totalAnnouncement = this.announcementService.AllAnnouncementCount(); var announcementViewModel = this.announcementService.GetByCreatedOn <AnnouncementViewModel>(skip); var categoriesViewModel = this.categoriesService.GetAll <IndexCategoriesView>(); pageModel.AnnouncementsCount = totalAnnouncement; var viewModel = new GetAllViewModel() { Announcements = announcementViewModel, Categories = categoriesViewModel, Page = pageModel, }; return(this.View(viewModel)); }