Esempio n. 1
0
        public async Task <IActionResult> List(SwiperSliderSearchModel searchModel)
        {
            if (!await _permissionService.AuthorizeAsync(StandardPermissionProvider.ManageWidgets))
            {
                return(AccessDeniedView());
            }

            var model = await _swiperSliderModelFactory.PrepareSliderListModelAsync(searchModel);

            return(Json(model));
        }
        public virtual async Task <SwiperSliderListModel> PrepareSliderListModelAsync(SwiperSliderSearchModel searchModel)
        {
            if (searchModel == null)
            {
                throw new ArgumentNullException(nameof(searchModel));
            }

            var sliders = await _swiperSliderService.GetAllSlidersAsync(
                name : searchModel.SearchSliderName,
                storeId : searchModel.SearchStoreId,
                pageIndex : (searchModel.Page - 1),
                pageSize : searchModel.PageSize,
                showHidden : true,
                overridePublished : (searchModel.SearchPublishedId == 0 ? null : searchModel.SearchPublishedId == 1));

            var model = await new SwiperSliderListModel().PrepareToGridAsync(searchModel, sliders, () =>
            {
                return(sliders.SelectAwait(async slider =>
                {
                    return await PrepareSliderModelAsync(null, slider);
                }));
            });

            return(model);
        }
        public virtual async Task <SwiperSliderSearchModel> PrepareSliderSearchModelAsync(SwiperSliderSearchModel searchModel)
        {
            if (searchModel == null)
            {
                throw new ArgumentNullException(nameof(searchModel));
            }

            await _baseAdminModelFactory.PrepareStoresAsync(searchModel.AvailableStores);

            searchModel.HideStoresList = _catalogSettings.IgnoreStoreLimitations || searchModel.AvailableStores.SelectionIsNotPossible();

            //prepare "published" filter (0 - all; 1 - published only; 2 - unpublished only)
            searchModel.AvailablePublishedOptions.Add(new SelectListItem
            {
                Value = "0",
                Text  = await _localizationService.GetResourceAsync("Nop.Plugin.Widgets.SwiperSlider.Admin.Sliders.List.SearchPublished.All")
            });
            searchModel.AvailablePublishedOptions.Add(new SelectListItem
            {
                Value = "1",
                Text  = await _localizationService.GetResourceAsync("Nop.Plugin.Widgets.SwiperSlider.Admin.Sliders.List.SearchPublished.PublishedOnly")
            });
            searchModel.AvailablePublishedOptions.Add(new SelectListItem
            {
                Value = "2",
                Text  = await _localizationService.GetResourceAsync("Nop.Plugin.Widgets.SwiperSlider.Admin.Sliders.List.SearchPublished.UnpublishedOnly")
            });

            searchModel.SetGridPageSize();

            return(searchModel);
        }