public ActionResult Configure() { //load settings for a chosen store scope var storeScope = this.GetActiveStoreScopeConfiguration(_storeService, _workContext); var googleAnalyticsSettings = _settingService.LoadSetting<GoogleAnalyticsSettings>(storeScope); var model = new ConfigurationModel(); model.GoogleId = googleAnalyticsSettings.GoogleId; model.TrackingScript = googleAnalyticsSettings.TrackingScript; model.EcommerceScript = googleAnalyticsSettings.EcommerceScript; model.EcommerceDetailScript = googleAnalyticsSettings.EcommerceDetailScript; model.ZoneId = googleAnalyticsSettings.WidgetZone; model.AvailableZones.Add(new SelectListItem() { Text = "<head> HTML tag", Value = "head_html_tag" }); model.AvailableZones.Add(new SelectListItem() { Text = "Before <body> end HTML tag", Value = "body_end_html_tag_before" }); model.ActiveStoreScopeConfiguration = storeScope; if (storeScope > 0) { model.GoogleId_OverrideForStore = _settingService.SettingExists(googleAnalyticsSettings, x => x.GoogleId, storeScope); model.TrackingScript_OverrideForStore = _settingService.SettingExists(googleAnalyticsSettings, x => x.TrackingScript, storeScope); model.EcommerceScript_OverrideForStore = _settingService.SettingExists(googleAnalyticsSettings, x => x.EcommerceScript, storeScope); model.EcommerceDetailScript_OverrideForStore = _settingService.SettingExists(googleAnalyticsSettings, x => x.EcommerceDetailScript, storeScope); } return View("Nop.Plugin.Widgets.GoogleAnalytics.Views.WidgetsGoogleAnalytics.Configure", model); }
public ActionResult Configure(ConfigurationModel model) { //load settings for a chosen store scope var storeScope = this.GetActiveStoreScopeConfiguration(_storeService, _workContext); var googleAnalyticsSettings = _settingService.LoadSetting<GoogleAnalyticsSettings>(storeScope); googleAnalyticsSettings.GoogleId = model.GoogleId; googleAnalyticsSettings.TrackingScript = model.TrackingScript; googleAnalyticsSettings.EcommerceScript = model.EcommerceScript; googleAnalyticsSettings.EcommerceDetailScript = model.EcommerceDetailScript; googleAnalyticsSettings.IncludingTax = model.IncludingTax; googleAnalyticsSettings.WidgetZone = model.ZoneId; /* We do not clear cache after each setting update. * This behavior can increase performance because cached settings will not be cleared * and loaded from database after each update */ _settingService.SaveSettingOverridablePerStore(googleAnalyticsSettings, x => x.GoogleId, model.GoogleId_OverrideForStore, storeScope, false); _settingService.SaveSettingOverridablePerStore(googleAnalyticsSettings, x => x.TrackingScript, model.TrackingScript_OverrideForStore, storeScope, false); _settingService.SaveSettingOverridablePerStore(googleAnalyticsSettings, x => x.EcommerceScript, model.EcommerceScript_OverrideForStore, storeScope, false); _settingService.SaveSettingOverridablePerStore(googleAnalyticsSettings, x => x.EcommerceDetailScript, model.EcommerceDetailScript_OverrideForStore, storeScope, false); _settingService.SaveSettingOverridablePerStore(googleAnalyticsSettings, x => x.IncludingTax, model.IncludingTax_OverrideForStore, storeScope, false); _settingService.SaveSettingOverridablePerStore(googleAnalyticsSettings, x => x.WidgetZone, model.ZoneId_OverrideForStore, storeScope, false); //now clear settings cache _settingService.ClearCache(); SuccessNotification(_localizationService.GetResource("Admin.Plugins.Saved")); return Configure(); }
public ActionResult Configure(int widgetId) { var model = new ConfigurationModel(); model.GoogleId = _googleAnalyticsSettings.GoogleId; model.JavaScript = _googleAnalyticsSettings.JavaScript; return View("Nop.Plugin.Widgets.GoogleAnalytics.Views.WidgetsGoogleAnalytics.Configure", model); }
public ActionResult Configure(int widgetId) { var model = new ConfigurationModel(); model.GoogleId = _googleAnalyticsSettings.GoogleId; model.TrackingScript = _googleAnalyticsSettings.TrackingScript; model.EcommerceScript = _googleAnalyticsSettings.EcommerceScript; model.EcommerceDetailScript = _googleAnalyticsSettings.EcommerceDetailScript; return View("Nop.Plugin.Widgets.GoogleAnalytics.Views.WidgetsGoogleAnalytics.Configure", model); }
public ActionResult Configure(int widgetId, ConfigurationModel model) { if (!ModelState.IsValid) return Configure(widgetId); //save settings _googleAnalyticsSettings.GoogleId = model.GoogleId; _googleAnalyticsSettings.JavaScript = model.JavaScript; _settingService.SaveSetting(_googleAnalyticsSettings); return View("Nop.Plugin.Widgets.GoogleAnalytics.Views.WidgetsGoogleAnalytics.Configure", model); }
public ActionResult Configure() { var model = new ConfigurationModel(); model.GoogleId = _googleAnalyticsSettings.GoogleId; model.TrackingScript = _googleAnalyticsSettings.TrackingScript; model.EcommerceScript = _googleAnalyticsSettings.EcommerceScript; model.EcommerceDetailScript = _googleAnalyticsSettings.EcommerceDetailScript; model.ZoneId = _googleAnalyticsSettings.WidgetZone; model.AvailableZones.Add(new SelectListItem() { Text = "<head> HTML tag", Value = "head_html_tag"}); model.AvailableZones.Add(new SelectListItem() { Text = "Before <body> end HTML tag", Value = "body_end_html_tag_before" }); return View("Nop.Plugin.Widgets.GoogleAnalytics.Views.WidgetsGoogleAnalytics.Configure", model); }
public ActionResult Configure(ConfigurationModel model) { if (!ModelState.IsValid) return Configure(); //save settings _googleAnalyticsSettings.GoogleId = model.GoogleId; _googleAnalyticsSettings.TrackingScript = model.TrackingScript; _googleAnalyticsSettings.EcommerceScript = model.EcommerceScript; _googleAnalyticsSettings.EcommerceDetailScript = model.EcommerceDetailScript; _googleAnalyticsSettings.WidgetZone = model.ZoneId; _settingService.SaveSetting(_googleAnalyticsSettings); return Configure(); }
public ActionResult Configure() { //load settings for a chosen store scope var storeScope = this.GetActiveStoreScopeConfiguration(_storeService, _workContext); var googleAnalyticsSettings = _settingService.LoadSetting<GoogleAnalyticsSettings>(storeScope); var model = new ConfigurationModel(); model.GoogleId = googleAnalyticsSettings.GoogleId; model.TrackingScript = googleAnalyticsSettings.TrackingScript; model.EcommerceScript = googleAnalyticsSettings.EcommerceScript; model.EcommerceDetailScript = googleAnalyticsSettings.EcommerceDetailScript; model.ActiveStoreScopeConfiguration = storeScope; if (storeScope > 0) { model.GoogleId_OverrideForStore = _settingService.SettingExists(googleAnalyticsSettings, x => x.GoogleId, storeScope); model.TrackingScript_OverrideForStore = _settingService.SettingExists(googleAnalyticsSettings, x => x.TrackingScript, storeScope); model.EcommerceScript_OverrideForStore = _settingService.SettingExists(googleAnalyticsSettings, x => x.EcommerceScript, storeScope); model.EcommerceDetailScript_OverrideForStore = _settingService.SettingExists(googleAnalyticsSettings, x => x.EcommerceDetailScript, storeScope); } return View("~/Plugins/Widgets.GoogleAnalytics/Views/WidgetsGoogleAnalytics/Configure.cshtml", model); }
public ActionResult Configure(ConfigurationModel model) { //load settings for a chosen store scope var storeScope = this.GetActiveStoreScopeConfiguration(_storeService, _workContext); var googleAnalyticsSettings = _settingService.LoadSetting<GoogleAnalyticsSettings>(storeScope); googleAnalyticsSettings.GoogleId = model.GoogleId; googleAnalyticsSettings.TrackingScript = model.TrackingScript; googleAnalyticsSettings.EcommerceScript = model.EcommerceScript; googleAnalyticsSettings.EcommerceDetailScript = model.EcommerceDetailScript; /* We do not clear cache after each setting update. * This behavior can increase performance because cached settings will not be cleared * and loaded from database after each update */ if (model.GoogleId_OverrideForStore || storeScope == 0) _settingService.SaveSetting(googleAnalyticsSettings, x => x.GoogleId, storeScope, false); else if (storeScope > 0) _settingService.DeleteSetting(googleAnalyticsSettings, x => x.GoogleId, storeScope); if (model.TrackingScript_OverrideForStore || storeScope == 0) _settingService.SaveSetting(googleAnalyticsSettings, x => x.TrackingScript, storeScope, false); else if (storeScope > 0) _settingService.DeleteSetting(googleAnalyticsSettings, x => x.TrackingScript, storeScope); if (model.EcommerceScript_OverrideForStore || storeScope == 0) _settingService.SaveSetting(googleAnalyticsSettings, x => x.EcommerceScript, storeScope, false); else if (storeScope > 0) _settingService.DeleteSetting(googleAnalyticsSettings, x => x.EcommerceScript, storeScope); if (model.EcommerceDetailScript_OverrideForStore || storeScope == 0) _settingService.SaveSetting(googleAnalyticsSettings, x => x.EcommerceDetailScript, storeScope, false); else if (storeScope > 0) _settingService.DeleteSetting(googleAnalyticsSettings, x => x.EcommerceDetailScript, storeScope); //now clear settings cache _settingService.ClearCache(); return Configure(); }