Пример #1
0
        public async Task <IActionResult> Index(int?TypeFilterApplied, int?CategoryFilterApplied, int?LocationFilterApplied, int?page)
        {
            var itemsOnPage = 15;
            var catalog     = await _service.GetEventCatalogItemsAsync(page ?? 0, itemsOnPage, TypeFilterApplied, CategoryFilterApplied, LocationFilterApplied);

            var vm = new EventCatalogIndexViewModel
            {
                PaginationInfo = new PaginationInfo
                {
                    ActualPage   = page ?? 0,
                    ItemsPerPage = itemsOnPage,
                    TotalItems   = catalog.Count,
                    TotalPages   = (int)Math.Ceiling((decimal)catalog.Count / itemsOnPage)
                },
                EventItems            = catalog.Data,
                Categories            = await _service.GetEventCategoriesAsync(),
                Types                 = await _service.GetEventTypesAsync(),
                Locations             = await _service.GetEventLocationsAsync(),
                TypeFilterApplied     = TypeFilterApplied ?? 0,
                CategoryFilterApplied = CategoryFilterApplied ?? 0,
                LocationFilterApplied = LocationFilterApplied ?? 0
            };

            vm.PaginationInfo.Previous = (vm.PaginationInfo.ActualPage == 0) ? "is-disabled" : "";
            vm.PaginationInfo.Next     = (vm.PaginationInfo.ActualPage == vm.PaginationInfo.TotalPages - 1) ? "is-disabled" : "";
            return(View(vm));
        }
        public async Task <IActionResult> Index(int?page, int?categoryFilterApplied, int?audienceFilterApplied, int?formatFilterApplied, int?kindFilterApplied, int?languageFilterApplied, int?locationFilterApplied, int?zipCodeFilterApplied)
        {
            var items_on_page = 6;



            var catalog = await _service.GetEventCatalogItemsAsync(categoryFilterApplied, audienceFilterApplied, formatFilterApplied, kindFilterApplied, languageFilterApplied, locationFilterApplied, zipCodeFilterApplied, page ?? 0, items_on_page);

            var vm = new EventCatalogIndexViewModel
            {
                EventItems = catalog.Data,
                Categories = await _service.GetEventCategoriesAsync(),
                Audiences  = await _service.GetEventAudiencesAsync(),
                Locations  = await _service.GetEventLocationsAsync(),
                Languages  = await _service.GetEventLanguagesAsync(),
                Formats    = await _service.GetEventFormatsAsync(),
                Kinds      = await _service.GetEventKindsAsync(),
                ZipCodes   = await _service.GetEventZipcodesAsync(),



                PaginationInfo = new PaginationInfo
                {
                    TotalItems   = catalog.Count,
                    ItemsPerPage = catalog.PageSize,
                    ActualPage   = page ?? 0,
                    TotalPages   = (int)Math.Ceiling((decimal)catalog.Count / items_on_page),
                },


                categoryFilterApplied = categoryFilterApplied ?? 0,
                audienceFilterApplied = audienceFilterApplied ?? 0,
                formatFilterApplied   = formatFilterApplied ?? 0,
                languageFilterApplied = languageFilterApplied ?? 0,
                locationFilterApplied = locationFilterApplied ?? 0,
                kindFilterApplied     = kindFilterApplied ?? 0,
                zipCodeFilterApplied  = zipCodeFilterApplied ?? 0,
            };

            int i = 0;

            return(View(vm));
        }
        public async Task <IActionResult> SearchEvent(int?page, string?searchstring)
        {
            var items_on_page = 10;
            var catalog       = await _service.GetEventItemsAsync(page ?? 0, items_on_page, searchstring);

            var vm = new EventCatalogIndexViewModel
            {
                EventItems = catalog.Data,
                Categories = await _service.GetEventCategoriesAsync(),
                Audiences  = await _service.GetEventAudiencesAsync(),
                Locations  = await _service.GetEventLocationsAsync(),
                Languages  = await _service.GetEventLanguagesAsync(),
                Formats    = await _service.GetEventFormatsAsync(),
                Kinds      = await _service.GetEventKindsAsync(),
                ZipCodes   = await _service.GetEventZipcodesAsync(),



                PaginationInfo = new PaginationInfo
                {
                    TotalItems   = catalog.Count,
                    ItemsPerPage = catalog.PageSize,
                    ActualPage   = page ?? 0,
                    TotalPages   = (int)Math.Ceiling((decimal)catalog.Count / items_on_page),
                },



                categoryFilterApplied = 0,
                audienceFilterApplied = 0,
                formatFilterApplied   = 0,
                languageFilterApplied = 0,
                locationFilterApplied = 0,
                kindFilterApplied     = 0,
                zipCodeFilterApplied  = 0,
            };


            return(View(vm));
        }