From ce73912b5bb2211235cfdec6e3b9ca524dcf6c7e Mon Sep 17 00:00:00 2001 From: Bob Mottram Date: Mon, 29 Aug 2022 10:34:03 +0100 Subject: [PATCH 1/2] Check if the theme name has changed before setting it --- daemon.py | 62 ++++++++++++++++++++++++++++--------------------------- 1 file changed, 32 insertions(+), 30 deletions(-) diff --git a/daemon.py b/daemon.py index 62f9f1bdc..7e3672d5d 100644 --- a/daemon.py +++ b/daemon.py @@ -5875,36 +5875,38 @@ class PubServer(BaseHTTPRequestHandler): is_artist(base_dir, nickname): # change theme if fields.get('themeDropdown'): - self.server.theme_name = fields['themeDropdown'] - set_theme(base_dir, self.server.theme_name, domain, - allow_local_network_access, - system_language, - self.server.dyslexic_font, True) - self.server.text_mode_banner = \ - get_text_mode_banner(self.server.base_dir) - self.server.iconsCache = {} - self.server.fontsCache = {} - self.server.css_cache = {} - self.server.show_publish_as_icon = \ - get_config_param(self.server.base_dir, - 'showPublishAsIcon') - self.server.full_width_tl_button_header = \ - get_config_param(self.server.base_dir, - 'fullWidthTlButtonHeader') - self.server.icons_as_buttons = \ - get_config_param(self.server.base_dir, - 'iconsAsButtons') - self.server.rss_icon_at_top = \ - get_config_param(self.server.base_dir, - 'rssIconAtTop') - self.server.publish_button_at_top = \ - get_config_param(self.server.base_dir, - 'publishButtonAtTop') - set_news_avatar(base_dir, - fields['themeDropdown'], - http_prefix, - domain, - domain_full) + if self.server.theme_name != \ + fields['themeDropdown']: + self.server.theme_name = \ + fields['themeDropdown'] + set_theme(base_dir, self.server.theme_name, + domain, allow_local_network_access, + system_language, + self.server.dyslexic_font, True) + self.server.text_mode_banner = \ + get_text_mode_banner(self.server.base_dir) + self.server.iconsCache = {} + self.server.fontsCache = {} + self.server.css_cache = {} + self.server.show_publish_as_icon = \ + get_config_param(self.server.base_dir, + 'showPublishAsIcon') + self.server.full_width_tl_button_header = \ + get_config_param(self.server.base_dir, + 'fullWidthTlButtonHeader') + self.server.icons_as_buttons = \ + get_config_param(self.server.base_dir, + 'iconsAsButtons') + self.server.rss_icon_at_top = \ + get_config_param(self.server.base_dir, + 'rssIconAtTop') + self.server.publish_button_at_top = \ + get_config_param(self.server.base_dir, + 'publishButtonAtTop') + set_news_avatar(base_dir, + fields['themeDropdown'], + http_prefix, + domain, domain_full) if nickname == admin_nickname: # change media instance status From 7ee99bcbfada75b720033a104506b656a9e2daf0 Mon Sep 17 00:00:00 2001 From: Bob Mottram Date: Mon, 29 Aug 2022 10:48:39 +0100 Subject: [PATCH 2/2] Debug --- daemon.py | 2 +- theme.py | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/daemon.py b/daemon.py index 7e3672d5d..265b5448d 100644 --- a/daemon.py +++ b/daemon.py @@ -5871,9 +5871,9 @@ class PubServer(BaseHTTPRequestHandler): if check_name_and_bio: redirect_path = 'previewAvatar' + # change the theme from edit profile screen if nickname == admin_nickname or \ is_artist(base_dir, nickname): - # change theme if fields.get('themeDropdown'): if self.server.theme_name != \ fields['themeDropdown']: diff --git a/theme.py b/theme.py index 21c0dbaba..955a6c986 100644 --- a/theme.py +++ b/theme.py @@ -542,6 +542,7 @@ def reset_theme_designer_settings(base_dir: str) -> None: if os.path.isfile(custom_variables_file): try: os.remove(custom_variables_file) + print('Theme designer settings were reset') except OSError: print('EX: unable to remove theme designer settings on reset')