aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--include/functions_user.inc.php41
-rw-r--r--profile.php2
2 files changed, 43 insertions, 0 deletions
diff --git a/include/functions_user.inc.php b/include/functions_user.inc.php
index 4d755c445..b8922ffec 100644
--- a/include/functions_user.inc.php
+++ b/include/functions_user.inc.php
@@ -796,6 +796,47 @@ function get_default_user_info($convert_str = true)
unset($cache['default_user']['user_id']);
unset($cache['default_user']['status']);
unset($cache['default_user']['registration_date']);
+
+ // theme and language fields may be null in the database (see
+ // bug:1683) This is absolutely not nice to have this code in this
+ // very place, but it avoids a complexe upgrade with an "automatic
+ // fix" in the database => this code should be removed after branch
+ // 2.1 if a migration tasks performs the job the same way
+ if (empty($cache['default_user']['theme']))
+ {
+ mass_updates(
+ USER_INFOS_TABLE,
+ array(
+ 'primary' => array('user_id'),
+ 'update' => array('theme')
+ ),
+ array(
+ array(
+ 'user_id' => $conf['default_user_id'],
+ 'theme' => PHPWG_DEFAULT_TEMPLATE
+ )
+ )
+ );
+ $cache['default_user']['theme'] = PHPWG_DEFAULT_TEMPLATE;
+ }
+
+ if (empty($cache['default_user']['language']))
+ {
+ mass_updates(
+ USER_INFOS_TABLE,
+ array(
+ 'primary' => array('user_id'),
+ 'update' => array('language')
+ ),
+ array(
+ array(
+ 'user_id' => $conf['default_user_id'],
+ 'language' => PHPWG_DEFAULT_LANGUAGE
+ )
+ )
+ );
+ $cache['default_user']['language'] = PHPWG_DEFAULT_LANGUAGE;
+ }
}
}
diff --git a/profile.php b/profile.php
index 8a36d131c..fbbe46df1 100644
--- a/profile.php
+++ b/profile.php
@@ -105,6 +105,8 @@ function save_profile_from_post($userdata, &$errors)
$_POST['theme'],
$_POST['language']
);
+ $_POST['theme'] = get_default_theme();
+ $_POST['language'] = get_default_language();
}
if ($conf['allow_user_customization'] or defined('IN_ADMIN'))