private void SaveSettings(HtmlOptimiserSettings settings) { var storeScope = this.GetActiveStoreScopeConfiguration(_storeService, _workContext); _settingService.SaveSetting(settings, x => x.RemoveHeaders, storeScope, false); _settingService.SaveSetting(settings, x => x.AddHeaders, storeScope, false); _settingService.ClearCache(); WebConfigUpdater.UpdateWebConfig(settings.RemoveHeaders); RestartPlugin(); }
/// <summary> /// Uninstalls the plugin. /// </summary> public override void Uninstall() { // settings _settingService.DeleteSetting <HtmlOptimiserSettings>(); // locales this.DeletePluginLocaleResource(Constants.ResourceFieldsMinificationEnabled); this.DeletePluginLocaleResource(Constants.ResourceFieldsMinificationEnabledHint); this.DeletePluginLocaleResource(Constants.ResourceFieldsRemoveWhitespace); this.DeletePluginLocaleResource(Constants.ResourceFieldsRemoveWhitespaceHint); this.DeletePluginLocaleResource(Constants.ResourceFieldsRemoveHtmlComments); this.DeletePluginLocaleResource(Constants.ResourceFieldsRemoveHtmlCommentsHint); this.DeletePluginLocaleResource(Constants.ResourceFieldsRemoveScriptComments); this.DeletePluginLocaleResource(Constants.ResourceFieldsRemoveScriptCommentsHint); this.DeletePluginLocaleResource(Constants.ResourceFieldsRemoveCDATASections); this.DeletePluginLocaleResource(Constants.ResourceFieldsRemoveCDATASectionsHint); this.DeletePluginLocaleResource(Constants.ResourceFieldsUseShortDocType); this.DeletePluginLocaleResource(Constants.ResourceFieldsUseShortDocTypeHint); this.DeletePluginLocaleResource(Constants.ResourceFieldsRemoveQuotes); this.DeletePluginLocaleResource(Constants.ResourceFieldsRemoveQuotesHint); this.DeletePluginLocaleResource(Constants.ResourceFieldsRemoveRedundantAttributes); this.DeletePluginLocaleResource(Constants.ResourceFieldsRemoveRedundantAttributesHint); this.DeletePluginLocaleResource(Constants.ResourceFieldsRemoveOptionalEndTags); this.DeletePluginLocaleResource(Constants.ResourceFieldsRemoveOptionalEndTagsHint); this.DeletePluginLocaleResource(Constants.ResourceFieldsMinifyInlineScripts); this.DeletePluginLocaleResource(Constants.ResourceFieldsMinifyInlineScriptsHint); this.DeletePluginLocaleResource(Constants.ResourceFieldsMinifyInlineStyles); this.DeletePluginLocaleResource(Constants.ResourceFieldsMinifyInlineStylesHint); this.DeletePluginLocaleResource(Constants.ResourceFieldsRemoveHeaders); this.DeletePluginLocaleResource(Constants.ResourceFieldsRemoveHeadersHint); this.DeletePluginLocaleResource(Constants.ResourceFieldsAddHeaders); this.DeletePluginLocaleResource(Constants.ResourceFieldsAddHeadersHint); this.DeletePluginLocaleResource(Constants.ResourceIntroPart1); this.DeletePluginLocaleResource(Constants.ResourceIntroPart2); this.DeletePluginLocaleResource(Constants.ResourceIntroPart3); this.DeletePluginLocaleResource(Constants.ResourceIntroPart4); this.DeletePluginLocaleResource(Constants.ResourceIntroPart5); this.DeletePluginLocaleResource(Constants.ResourceIntroPart6); // update web.config WebConfigUpdater.UpdateWebConfig(Enumerable.Empty <string>()); base.Uninstall(); }
public void Execute() { if (Installed) { // register type converter TypeDescriptor.AddAttributes(typeof(List <AddHeader>), new TypeConverterAttribute(typeof(AddHeaderTypeConverter))); // check if web.config needs updating (i.e. after an upgrade) WebConfigUpdater.UpdateWebConfig(RemoveHeaders); // remove old filter before adding new one var currentFilter = GlobalFilters.Filters.FirstOrDefault(f => f.Instance.GetType() == typeof(HtmlFilterAttribute)); if (currentFilter != null) { GlobalFilters.Filters.Remove(currentFilter.Instance); } GlobalFilters.Filters.Add(new HtmlFilterAttribute() { Order = 100 }); } }