Merge pull request #7400 from MrPetovan/bug/7397-frio-settings-fallback

[frio] Theme settings fallback on node settings
This commit is contained in:
Michael Vogel 2019-07-18 23:22:17 +02:00 committed by GitHub
commit 2aea286143
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 23 additions and 21 deletions

View file

@ -370,19 +370,19 @@ function settings_post(App $a)
PConfig::set(local_user(), 'system', 'bandwidth_saver' , $bandwidth_saver); PConfig::set(local_user(), 'system', 'bandwidth_saver' , $bandwidth_saver);
PConfig::set(local_user(), 'system', 'smart_threading' , $smart_threading); PConfig::set(local_user(), 'system', 'smart_threading' , $smart_threading);
if ($theme == $a->user['theme']) { if (in_array($theme, Theme::getAllowedList())) {
// call theme_post only if theme has not been changed if ($theme == $a->user['theme']) {
if (($themeconfigfile = get_theme_config_file($theme)) !== null) { // call theme_post only if theme has not been changed
require_once $themeconfigfile; if (($themeconfigfile = get_theme_config_file($theme)) !== null) {
theme_post($a); require_once $themeconfigfile;
theme_post($a);
}
} else {
$a->getDatabase()->update('user', ['theme' => $theme], ['uid' => local_user()]);
} }
} else {
notice(L10n::t('The theme you chose isn\'t available.'));
} }
Theme::install($theme);
q("UPDATE `user` SET `theme` = '%s' WHERE `uid` = %d",
DBA::escape($theme),
intval(local_user())
);
Hook::callAll('display_settings_post', $_POST); Hook::callAll('display_settings_post', $_POST);
$a->internalRedirect('settings/display'); $a->internalRedirect('settings/display');
@ -915,8 +915,8 @@ function settings_content(App $a)
} }
} }
$theme_selected = Session::get('theme', $default_theme); $theme_selected = $a->user['theme'] ?: $default_theme;
$mobile_theme_selected = Session::get('mobile-theme', $default_mobile_theme); $mobile_theme_selected = $a->user['mobile-theme'] ?: $default_mobile_theme;
$nowarn_insecure = intval(PConfig::get(local_user(), 'system', 'nowarn_insecure')); $nowarn_insecure = intval(PConfig::get(local_user(), 'system', 'nowarn_insecure'));

View file

@ -56,15 +56,17 @@ function theme_content(App $a)
} }
$arr = []; $arr = [];
$arr['scheme'] = PConfig::get(local_user(), 'frio', 'scheme', PConfig::get(local_user(), 'frio', 'schema')); $node_scheme = Config::get('frio', 'scheme', Config::get('frio', 'scheme'));
$arr['scheme'] = PConfig::get(local_user(), 'frio', 'scheme', PConfig::get(local_user(), 'frio', 'schema', $node_scheme));
$arr['share_string'] = ''; $arr['share_string'] = '';
$arr['nav_bg'] = PConfig::get(local_user(), 'frio', 'nav_bg'); $arr['nav_bg'] = PConfig::get(local_user(), 'frio', 'nav_bg' , Config::get('frio', 'nav_bg'));
$arr['nav_icon_color'] = PConfig::get(local_user(), 'frio', 'nav_icon_color'); $arr['nav_icon_color'] = PConfig::get(local_user(), 'frio', 'nav_icon_color' , Config::get('frio', 'nav_icon_color'));
$arr['link_color'] = PConfig::get(local_user(), 'frio', 'link_color'); $arr['link_color'] = PConfig::get(local_user(), 'frio', 'link_color' , Config::get('frio', 'link_color'));
$arr['background_color'] = PConfig::get(local_user(), 'frio', 'background_color'); $arr['background_color'] = PConfig::get(local_user(), 'frio', 'background_color', Config::get('frio', 'background_color'));
$arr['contentbg_transp'] = PConfig::get(local_user(), 'frio', 'contentbg_transp'); $arr['contentbg_transp'] = PConfig::get(local_user(), 'frio', 'contentbg_transp', Config::get('frio', 'contentbg_transp'));
$arr['background_image'] = PConfig::get(local_user(), 'frio', 'background_image'); $arr['background_image'] = PConfig::get(local_user(), 'frio', 'background_image', Config::get('frio', 'background_image'));
$arr['bg_image_option'] = PConfig::get(local_user(), 'frio', 'bg_image_option'); $arr['bg_image_option'] = PConfig::get(local_user(), 'frio', 'bg_image_option' , Config::get('frio', 'bg_image_option'));
return frio_form($arr); return frio_form($arr);
} }