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', 'smart_threading' , $smart_threading);
if ($theme == $a->user['theme']) {
// call theme_post only if theme has not been changed
if (($themeconfigfile = get_theme_config_file($theme)) !== null) {
require_once $themeconfigfile;
theme_post($a);
if (in_array($theme, Theme::getAllowedList())) {
if ($theme == $a->user['theme']) {
// call theme_post only if theme has not been changed
if (($themeconfigfile = get_theme_config_file($theme)) !== null) {
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);
$a->internalRedirect('settings/display');
@ -915,8 +915,8 @@ function settings_content(App $a)
}
}
$theme_selected = Session::get('theme', $default_theme);
$mobile_theme_selected = Session::get('mobile-theme', $default_mobile_theme);
$theme_selected = $a->user['theme'] ?: $default_theme;
$mobile_theme_selected = $a->user['mobile-theme'] ?: $default_mobile_theme;
$nowarn_insecure = intval(PConfig::get(local_user(), 'system', 'nowarn_insecure'));

View file

@ -56,15 +56,17 @@ function theme_content(App $a)
}
$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['nav_bg'] = PConfig::get(local_user(), 'frio', 'nav_bg');
$arr['nav_icon_color'] = PConfig::get(local_user(), 'frio', 'nav_icon_color');
$arr['link_color'] = PConfig::get(local_user(), 'frio', 'link_color');
$arr['background_color'] = PConfig::get(local_user(), 'frio', 'background_color');
$arr['contentbg_transp'] = PConfig::get(local_user(), 'frio', 'contentbg_transp');
$arr['background_image'] = PConfig::get(local_user(), 'frio', 'background_image');
$arr['bg_image_option'] = PConfig::get(local_user(), 'frio', 'bg_image_option');
$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' , Config::get('frio', 'nav_icon_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', Config::get('frio', 'background_color'));
$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', Config::get('frio', 'background_image'));
$arr['bg_image_option'] = PConfig::get(local_user(), 'frio', 'bg_image_option' , Config::get('frio', 'bg_image_option'));
return frio_form($arr);
}