db prefs: ignore cache when preference requested for specified UID (in case cached value of a different profile is stored)

prefs: show (and set) enabled plugins for default profile only
This commit is contained in:
Andrew Dolgov 2017-06-24 14:29:07 +03:00
parent 93af11cb7a
commit e130b283a7
2 changed files with 3 additions and 3 deletions

View File

@ -67,7 +67,7 @@ class Db_Prefs {
$user_id = sprintf("%d", $user_id);
}
if (isset($this->cache[$pref_name])) {
if (isset($this->cache[$pref_name]) && !$user_id) {
$tuple = $this->cache[$pref_name];
return $this->convert($tuple["value"], $tuple["type"]);
}

View File

@ -739,7 +739,7 @@ class Pref_Prefs extends Handler_Protected {
<td width='10%'>".__('Author')."</td></tr>";
$system_enabled = array_map("trim", explode(",", PLUGINS));
$user_enabled = array_map("trim", explode(",", get_pref("_ENABLED_PLUGINS")));
$user_enabled = array_map("trim", explode(",", get_pref("_ENABLED_PLUGINS", $_SESSION['uid'])));
$tmppluginhost = new PluginHost();
$tmppluginhost->load_all($tmppluginhost::KIND_ALL, $_SESSION["uid"], true);
@ -949,7 +949,7 @@ class Pref_Prefs extends Handler_Protected {
else
$plugins = "";
set_pref("_ENABLED_PLUGINS", $plugins);
set_pref("_ENABLED_PLUGINS", $plugins, $_SESSION["uid"]);
}
function clearplugindata() {