public ActionResult PublicInfo(string widgetZone, object model)
        {
            //if (LicenseChecker.CheckState("SmartSite.CustomBanner", null) == null)
            //{
            //    return new EmptyResult();
            //}
            int pictureId = 0;

            if (model != null)
            {
                int    pageId = 0;
                string entity = "";
                if (model.GetType() == typeof(ArticlePostModel))
                {
                    ArticlePostModel articleModel = (ArticlePostModel)model;
                    pageId = articleModel.Id;
                    entity = "article";
                }
                else
                {
                    if (model.GetType() == typeof(ArticleCategoryModel))
                    {
                        ArticleCategoryModel categoryModel = (ArticleCategoryModel)model;
                        pageId = categoryModel.Id;
                        entity = "category";
                    }
                    else
                    {
                        if (model.GetType() == typeof(TopicModel))
                        {
                            TopicModel topicModel = (TopicModel)model;
                            pageId = topicModel.Id;
                            entity = "topic";
                        }
                    }
                }
                CustomBannerRecord bannerRecord = this._customBannerService.GetCustomBannerRecord(pageId, entity);
                if (bannerRecord != null)
                {
                    pictureId = bannerRecord.PictureId;
                }
            }
            if (pictureId != 0)
            {
                CustomBannerSettings customBannerSettings = this._settingService.LoadSetting <CustomBannerSettings>(this._siteContext.CurrentSite.Id);
                Picture pic = this._pictureService.GetPictureById(pictureId);
                return(base.View(new PublicInfoModel
                {
                    PicturePath = this._pictureService.GetPictureUrl(pic, 0, true, null),
                    MaxBannerHeight = customBannerSettings.MaxBannerHeight,
                    StretchPicture = customBannerSettings.StretchPicture,
                    ShowBorderBottom = customBannerSettings.ShowBorderBottom,
                    ShowBorderTop = customBannerSettings.ShowBorderTop,
                    BorderTopColor = customBannerSettings.BorderTopColor,
                    BorderBottomColor = customBannerSettings.BorderBottomColor
                }));
            }
            return(base.Content(""));
        }
Exemple #2
0
        public override void Install()
        {
            this._localizationService.ImportPluginResourcesFromXml(this.PluginDescriptor, null, true, null);
            CustomBannerSettings customBannerSettings = new CustomBannerSettings();

            customBannerSettings.MaxBannerHeight   = 150;
            customBannerSettings.StretchPicture    = true;
            customBannerSettings.ShowBorderBottom  = true;
            customBannerSettings.ShowBorderTop     = true;
            customBannerSettings.BorderTopColor    = "#ccc";
            customBannerSettings.BorderBottomColor = "#ccc";
            this._settingService.SaveSetting <CustomBannerSettings>(customBannerSettings, 0);
            base.Install();
            _logger.Information(string.Format("Plugin installed: SystemName: {0}, Version: {1}, Description: '{2}'", PluginDescriptor.SystemName, PluginDescriptor.Version, PluginDescriptor.FriendlyName));
        }
        public ActionResult Configure()
        {
            int siteScope = ContollerExtensions.GetActiveSiteScopeConfiguration(this, this._siteService, this._workContext);
            CustomBannerSettings customBannerSettings = this._settingService.LoadSetting <CustomBannerSettings>(siteScope);
            ConfigurationModel   model = new ConfigurationModel();

            model.MaxBannerHeight   = customBannerSettings.MaxBannerHeight;
            model.StretchPicture    = customBannerSettings.StretchPicture;
            model.ShowBorderTop     = customBannerSettings.ShowBorderTop;
            model.ShowBorderBottom  = customBannerSettings.ShowBorderBottom;
            model.BorderBottomColor = customBannerSettings.BorderBottomColor;
            model.BorderTopColor    = customBannerSettings.BorderTopColor;
            SiteDependingSettingHelper siteDependingSettingHelper = new SiteDependingSettingHelper(base.ViewData);

            siteDependingSettingHelper.GetOverrideKeys(customBannerSettings, model, siteScope, this._settingService, true);
            return(base.View(model));
        }
        public ActionResult Configure(ConfigurationModel model, FormCollection form)
        {
            if (!base.ModelState.IsValid)
            {
                return(this.Configure());
            }
            base.ModelState.Clear();
            int siteScope = ContollerExtensions.GetActiveSiteScopeConfiguration(this, this._siteService, this._workContext);
            CustomBannerSettings customBannerSettings = this._settingService.LoadSetting <CustomBannerSettings>(siteScope);

            customBannerSettings.MaxBannerHeight   = model.MaxBannerHeight;
            customBannerSettings.StretchPicture    = model.StretchPicture;
            customBannerSettings.BorderBottomColor = model.BorderBottomColor;
            customBannerSettings.BorderTopColor    = model.BorderTopColor;
            customBannerSettings.ShowBorderBottom  = model.ShowBorderBottom;
            customBannerSettings.ShowBorderTop     = model.ShowBorderTop;
            SiteDependingSettingHelper siteDependingSettingHelper = new SiteDependingSettingHelper(base.ViewData);

            siteDependingSettingHelper.UpdateSettings(customBannerSettings, form, siteScope, this._settingService);
            this._settingService.ClearCache();
            return(this.Configure());
        }