From ca387d7b2698fdaf451937738ac89e98ffbec53d Mon Sep 17 00:00:00 2001 From: Shaun Walker Date: Mon, 20 Sep 2021 17:23:56 -0400 Subject: [PATCH] fix Oqtane theme settings for page scope --- .../OqtaneTheme/Themes/ThemeSettings.razor | 56 ++++++++++--------- 1 file changed, 29 insertions(+), 27 deletions(-) diff --git a/Oqtane.Client/Themes/OqtaneTheme/Themes/ThemeSettings.razor b/Oqtane.Client/Themes/OqtaneTheme/Themes/ThemeSettings.razor index 08b41fcd..ecebce19 100644 --- a/Oqtane.Client/Themes/OqtaneTheme/Themes/ThemeSettings.razor +++ b/Oqtane.Client/Themes/OqtaneTheme/Themes/ThemeSettings.razor @@ -72,22 +72,21 @@ private async Task LoadSettings() { - await Task.Yield(); - Dictionary settings; if (_scope == "site") { - settings = PageState.Site.Settings; + var settings = PageState.Site.Settings; _login = SettingService.GetSetting(settings, GetType().Namespace + ":Login", "true"); _register = SettingService.GetSetting(settings, GetType().Namespace + ":Register", "true"); _footer = SettingService.GetSetting(settings, GetType().Namespace + ":Footer", "false"); } else { - settings = SettingService.MergeSettings(PageState.Site.Settings, PageState.Page.Settings); + var settings = SettingService.MergeSettings(PageState.Site.Settings, PageState.Page.Settings); _login = SettingService.GetSetting(settings, GetType().Namespace + ":Login", "-"); _register = SettingService.GetSetting(settings, GetType().Namespace + ":Register", "-"); _footer = SettingService.GetSetting(settings, GetType().Namespace + ":Footer", "-"); } + await Task.Yield(); } private async Task ScopeChanged(ChangeEventArgs eventArgs) @@ -109,35 +108,38 @@ { try { - Dictionary settings; - if (_scope == "site") - { - settings = PageState.Site.Settings; - } - else - { - settings = PageState.Page.Settings; - } - - if (_login != "-") - { - settings = SettingService.SetSetting(settings, GetType().Namespace + ":Login", _login, true); - } - if (_register != "-") - { - settings = SettingService.SetSetting(settings, GetType().Namespace + ":Register", _register, true); - } - if (_footer != "-") - { - settings = SettingService.SetSetting(settings, GetType().Namespace + ":Footer", _footer, true); - } - if (_scope == "site") { + var settings = PageState.Site.Settings; + if (_login != "-") + { + settings = SettingService.SetSetting(settings, GetType().Namespace + ":Login", _login, true); + } + if (_register != "-") + { + settings = SettingService.SetSetting(settings, GetType().Namespace + ":Register", _register, true); + } + if (_footer != "-") + { + settings = SettingService.SetSetting(settings, GetType().Namespace + ":Footer", _footer, true); + } await SettingService.UpdateSiteSettingsAsync(settings, PageState.Site.SiteId); } else { + var settings = PageState.Page.Settings; + if (_login != "-") + { + settings = SettingService.SetSetting(settings, GetType().Namespace + ":Login", _login); + } + if (_register != "-") + { + settings = SettingService.SetSetting(settings, GetType().Namespace + ":Register", _register); + } + if (_footer != "-") + { + settings = SettingService.SetSetting(settings, GetType().Namespace + ":Footer", _footer); + } await SettingService.UpdatePageSettingsAsync(settings, PageState.Page.PageId); } }