public async Task <IActionResult> Index(int?categoryFilterApplied, int?placeFilterApplied, int?page)
        {
            var itemsOnPage = 10;
            var catalog     = await _CatalogService.GetcatalogItemsAsync(page ?? 0, itemsOnPage, categoryFilterApplied,
                                                                         placeFilterApplied);

            var vm = new CatalogIndexViewModel
            {
                EventCatalogItems     = catalog.Data,
                Categories            = await _CatalogService.GetCategoriesAsync(),
                Places                = await _CatalogService.GetPlacesAsync(),
                CategoryFilterApplied = categoryFilterApplied ?? 0,
                PlaceFilterApplied    = placeFilterApplied ?? 0,
                PaginationInfo        = new PaginationInfo
                {
                    ActualPage   = page ?? 0,
                    ItemsPerPage = itemsOnPage,
                    TotalItems   = catalog.Count,
                    TotalPages   = (int)Math.Ceiling((decimal)catalog.Count / itemsOnPage)
                }
            };

            vm.PaginationInfo.PreviousPage = (vm.PaginationInfo.ActualPage == 0) ? "is-disabled" : "";
            vm.PaginationInfo.NextPage     = (vm.PaginationInfo.ActualPage == vm.PaginationInfo.TotalPages - 1) ? "is-disabled" : "";


            return(View(vm));
        }
        public async Task <ActionResult <IEnumerable <CategoryDto> > > Get()
        {
            var result = await _catalogService.GetCategoriesAsync();

            return(Ok(result.Select(x => new CategoryDto
            {
                CategoryId = x.CategoryId,
                Name = x.Name
            })));
        }