public ActionResult Configure(int? selectTab)
        {
            var model = new WidgetConfigModel();

            model.SelectedTab = selectTab.HasValue ? selectTab.Value : 0;
            model.ShowPromotionDetailsOnProductPage = _widgetSettings.ShowPromoDetailsOnProductPage;
            model.ShowStickersInCatalogue = _widgetSettings.ShowStickersInCatalogue;
            model.ShowStickersInProductPage = _widgetSettings.ShowStickersInProductPage;
            model.ProductPagePromoDetailsWidgetZone = _widgetSettings.ProductPagePromoDetailsWidgetZone;

            model.AddPictureModel.PromoTypes = new List<SelectListItem>();
            model.AddPictureModel.PromoTypes.Add(new SelectListItem() { Value = PromotionTypeName.BuyOneGetOneFree, Text = _localizationService.GetResource("Plugins.Misc.QixolPromo.PromoType.BOGOF") });
            model.AddPictureModel.PromoTypes.Add(new SelectListItem() { Value = PromotionTypeName.BuyOneGetOneReduced, Text = _localizationService.GetResource("Plugins.Misc.QixolPromo.PromoType.BOGOR") });
            model.AddPictureModel.PromoTypes.Add(new SelectListItem() { Value = PromotionTypeName.Bundle, Text = _localizationService.GetResource("Plugins.Misc.QixolPromo.PromoType.BUNDLE") });
            model.AddPictureModel.PromoTypes.Add(new SelectListItem() { Value = PromotionTypeName.Deal, Text = _localizationService.GetResource("Plugins.Misc.QixolPromo.PromoType.DEAL") });
            model.AddPictureModel.PromoTypes.Add(new SelectListItem() { Value = PromotionTypeName.ProductsReduction, Text = _localizationService.GetResource("Plugins.Misc.QixolPromo.PromoType.PRODUCTSREDUCTION") });
            model.AddPictureModel.PromoTypes.Add(new SelectListItem() { Value = PromotionTypeName.Multiple_Promos, Text = _localizationService.GetResource("Plugins.Misc.QixolPromo.PromoType.MULTIPLE") });
            model.AddPictureModel.PromoTypes.Add(new SelectListItem() { Value = PromotionTypeName.FreeProduct, Text = _localizationService.GetResource("Plugins.Misc.QixolPromo.PromoType.FREEPRODUCT") });
            model.AddPictureModel.PromoTypes.Add(new SelectListItem() { Value = PromotionTypeName.IssueCoupon, Text = _localizationService.GetResource("Plugins.Misc.QixolPromo.PromoType.ISSUECOUPON") });
            model.AddPictureModel.PromoTypes.Add(new SelectListItem() { Value = PromotionTypeName.IssuePoints, Text = _localizationService.GetResource("Plugins.Misc.QixolPromo.PromoType.ISSUEPOINTS") });

            model.AddPromoBannerModel.AvailableTransitionTypes = new List<SelectListItem>();
            model.AddPromoBannerModel.AvailableTransitionTypes.Add(new SelectListItem() { Value = NivoTransition.SLICEDOWN.TransitionType, Text = _localizationService.GetResource(NivoTransition.SLICEDOWN.ResourceName) });
            model.AddPromoBannerModel.AvailableTransitionTypes.Add(new SelectListItem() { Value = NivoTransition.SLICEDOWNLEFT.TransitionType, Text = _localizationService.GetResource(NivoTransition.SLICEDOWNLEFT.ResourceName) });
            model.AddPromoBannerModel.AvailableTransitionTypes.Add(new SelectListItem() { Value = NivoTransition.SLICEUP.TransitionType, Text = _localizationService.GetResource(NivoTransition.SLICEUP.ResourceName) });
            model.AddPromoBannerModel.AvailableTransitionTypes.Add(new SelectListItem() { Value = NivoTransition.SLICEUPLEFT.TransitionType, Text = _localizationService.GetResource(NivoTransition.SLICEUPLEFT.ResourceName) });
            model.AddPromoBannerModel.AvailableTransitionTypes.Add(new SelectListItem() { Value = NivoTransition.SLICEUPDOWN.TransitionType, Text = _localizationService.GetResource(NivoTransition.SLICEUPDOWN.ResourceName) });
            model.AddPromoBannerModel.AvailableTransitionTypes.Add(new SelectListItem() { Value = NivoTransition.SLICEUPDOWNLEFT.TransitionType, Text = _localizationService.GetResource(NivoTransition.SLICEUPDOWNLEFT.ResourceName) });
            model.AddPromoBannerModel.AvailableTransitionTypes.Add(new SelectListItem() { Value = NivoTransition.FOLD.TransitionType, Text = _localizationService.GetResource(NivoTransition.FOLD.ResourceName) });
            model.AddPromoBannerModel.AvailableTransitionTypes.Add(new SelectListItem() { Value = NivoTransition.FADE.TransitionType, Text = _localizationService.GetResource(NivoTransition.FADE.ResourceName) });
            model.AddPromoBannerModel.AvailableTransitionTypes.Add(new SelectListItem() { Value = NivoTransition.RANDOM.TransitionType, Text = _localizationService.GetResource(NivoTransition.RANDOM.ResourceName) });
            model.AddPromoBannerModel.AvailableTransitionTypes.Add(new SelectListItem() { Value = NivoTransition.SLIDEINRIGHT.TransitionType, Text = _localizationService.GetResource(NivoTransition.SLIDEINRIGHT.ResourceName) });
            model.AddPromoBannerModel.AvailableTransitionTypes.Add(new SelectListItem() { Value = NivoTransition.SLIDEINLEFT.TransitionType, Text = _localizationService.GetResource(NivoTransition.SLIDEINLEFT.ResourceName) });
            model.AddPromoBannerModel.AvailableTransitionTypes.Add(new SelectListItem() { Value = NivoTransition.BOXRANDOM.TransitionType, Text = _localizationService.GetResource(NivoTransition.BOXRANDOM.ResourceName) });
            model.AddPromoBannerModel.AvailableTransitionTypes.Add(new SelectListItem() { Value = NivoTransition.BOXRAIN.TransitionType, Text = _localizationService.GetResource(NivoTransition.BOXRAIN.ResourceName) });
            model.AddPromoBannerModel.AvailableTransitionTypes.Add(new SelectListItem() { Value = NivoTransition.BOXRAINREVERSE.TransitionType, Text = _localizationService.GetResource(NivoTransition.BOXRAINREVERSE.ResourceName) });
            model.AddPromoBannerModel.AvailableTransitionTypes.Add(new SelectListItem() { Value = NivoTransition.BOXRAINGROW.TransitionType, Text = _localizationService.GetResource(NivoTransition.BOXRAINGROW.ResourceName) });
            model.AddPromoBannerModel.AvailableTransitionTypes.Add(new SelectListItem() { Value = NivoTransition.BOXRAINGROWREVERSE.TransitionType, Text = _localizationService.GetResource(NivoTransition.BOXRAINGROWREVERSE.ResourceName) });

            model.AddPromoBannerModel.AvailableTransitionTypes.Add(new SelectListItem() { Value = NivoTransition.STACKHORIZONTAL.TransitionType, Text = _localizationService.GetResource(NivoTransition.STACKHORIZONTAL.ResourceName) });
            model.AddPromoBannerModel.AvailableTransitionTypes.Add(new SelectListItem() { Value = NivoTransition.STACKVERTICAL.TransitionType, Text = _localizationService.GetResource(NivoTransition.STACKVERTICAL.ResourceName) });

            var widgetZones = WidgetZonesHelper.GetWidgetZonesForProductPromos();
            model.ProductPagePromoDetailsWidgetZonesList = widgetZones.Select(wz => new SelectListItem() { Text = wz.DisplayName, Value = wz.Name }).OrderBy(ob => ob.Text).ToList();

            if (string.IsNullOrEmpty(model.ProductPagePromoDetailsWidgetZone))
            {
                var defaultWidgetZone = widgetZones.Where(z => z.DefaultForProductPromos).FirstOrDefault();
                if (defaultWidgetZone != null)
                    model.ProductPagePromoDetailsWidgetZone = defaultWidgetZone.Name;
            }


            return View("~/Plugins/Widgets.QixolPromo/Views/Admin/Configure.cshtml", model);
        }
        public ActionResult Configure(WidgetConfigModel model, FormCollection form)
        {
            if (!ModelState.IsValid)
            {
                return Configure(0);
            }

            _widgetSettings.ShowPromoDetailsOnProductPage = model.ShowPromotionDetailsOnProductPage;
            _widgetSettings.ShowStickersInCatalogue = model.ShowStickersInCatalogue;
            _widgetSettings.ShowStickersInProductPage = model.ShowStickersInProductPage;
            _widgetSettings.ProductPagePromoDetailsWidgetZone = model.ProductPagePromoDetailsWidgetZone;

            _settingService.SaveSetting(_widgetSettings);

            ModelState.Clear();

            //redisplay the form
            return Configure(0);
        }