|
@@ -12,11 +12,12 @@
|
|
define('prefs_php', true);
|
|
define('prefs_php', true);
|
|
|
|
|
|
global $prefs_are_cached, $prefs_cache;
|
|
global $prefs_are_cached, $prefs_cache;
|
|
- $prefs_are_cached = false;
|
|
|
|
- $prefs_cache = array();
|
|
|
|
|
|
+ if (!session_is_registered('prefs_are_cached')) {
|
|
|
|
+ $prefs_are_cached = false;
|
|
|
|
+ $prefs_cache = array();
|
|
|
|
+ }
|
|
|
|
|
|
- function cachePrefValues($data_dir, $username)
|
|
|
|
- {
|
|
|
|
|
|
+ function cachePrefValues($data_dir, $username) {
|
|
global $prefs_are_cached, $prefs_cache;
|
|
global $prefs_are_cached, $prefs_cache;
|
|
|
|
|
|
if ($prefs_are_cached)
|
|
if ($prefs_are_cached)
|
|
@@ -25,7 +26,7 @@
|
|
$filename = $data_dir . $username . '.pref';
|
|
$filename = $data_dir . $username . '.pref';
|
|
|
|
|
|
if (!file_exists($filename)) {
|
|
if (!file_exists($filename)) {
|
|
- printf (_("Preference file, %s, does not exist. Log out, and log back in to create a default preference file."), $filename);
|
|
|
|
|
|
+ printf (_("Preference file, %s, does not exist. Log out, and log back in to create a default preference file."), $filename);
|
|
exit;
|
|
exit;
|
|
}
|
|
}
|
|
|
|
|
|
@@ -35,24 +36,28 @@
|
|
$highlight_num = 0;
|
|
$highlight_num = 0;
|
|
while (! feof($file)) {
|
|
while (! feof($file)) {
|
|
$pref = trim(fgets($file, 1024));
|
|
$pref = trim(fgets($file, 1024));
|
|
- $equalsAt = strpos($pref, '=');
|
|
|
|
- if ($equalsAt > 0)
|
|
|
|
- {
|
|
|
|
- $Key = substr($pref, 0, $equalsAt);
|
|
|
|
- $Value = substr($pref, $equalsAt + 1);
|
|
|
|
- if (substr($Key, 0, 9) == 'highlight')
|
|
|
|
- {
|
|
|
|
- $Key = 'highlight' . $highlight_num;
|
|
|
|
- $highlight_num ++;
|
|
|
|
|
|
+ $equalsAt = strpos($pref, '=');
|
|
|
|
+ if ($equalsAt > 0) {
|
|
|
|
+ $Key = substr($pref, 0, $equalsAt);
|
|
|
|
+ $Value = substr($pref, $equalsAt + 1);
|
|
|
|
+ if (substr($Key, 0, 9) == 'highlight') {
|
|
|
|
+ $Key = 'highlight' . $highlight_num;
|
|
|
|
+ $highlight_num ++;
|
|
}
|
|
}
|
|
|
|
|
|
- if ($Value != '')
|
|
|
|
- $prefs_cache[$Key] = $Value;
|
|
|
|
- }
|
|
|
|
|
|
+ if ($Value != '') {
|
|
|
|
+ $prefs_cache[$Key] = $Value;
|
|
|
|
+ }
|
|
|
|
+ }
|
|
}
|
|
}
|
|
fclose($file);
|
|
fclose($file);
|
|
|
|
+
|
|
|
|
+ session_unregister('prefs_cache');
|
|
|
|
+ session_register('prefs_cache');
|
|
|
|
|
|
$prefs_are_cached = true;
|
|
$prefs_are_cached = true;
|
|
|
|
+ session_unregister('prefs_are_cached');
|
|
|
|
+ session_register('prefs_are_cached');
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
@@ -68,15 +73,14 @@
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
- function savePrefValues($data_dir, $username)
|
|
|
|
- {
|
|
|
|
|
|
+ function savePrefValues($data_dir, $username) {
|
|
global $prefs_cache;
|
|
global $prefs_cache;
|
|
|
|
|
|
$file = fopen($data_dir . $username . '.pref', "w");
|
|
$file = fopen($data_dir . $username . '.pref', "w");
|
|
- foreach ($prefs_cache as $Key => $Value)
|
|
|
|
- {
|
|
|
|
- if (isset($Value))
|
|
|
|
|
|
+ foreach ($prefs_cache as $Key => $Value) {
|
|
|
|
+ if (isset($Value)) {
|
|
fwrite($file, $Key . '=' . $Value . "\n");
|
|
fwrite($file, $Key . '=' . $Value . "\n");
|
|
|
|
+ }
|
|
}
|
|
}
|
|
fclose($file);
|
|
fclose($file);
|
|
}
|
|
}
|
|
@@ -87,9 +91,10 @@
|
|
|
|
|
|
cachePrefValues($data_dir, $username);
|
|
cachePrefValues($data_dir, $username);
|
|
|
|
|
|
- if (isset($prefs_cache[$string]))
|
|
|
|
|
|
+ if (isset($prefs_cache[$string])) {
|
|
unset($prefs_cache[$string]);
|
|
unset($prefs_cache[$string]);
|
|
-
|
|
|
|
|
|
+ }
|
|
|
|
+
|
|
savePrefValues($data_dir, $username);
|
|
savePrefValues($data_dir, $username);
|
|
}
|
|
}
|
|
|
|
|
|
@@ -98,9 +103,7 @@
|
|
global $prefs_cache;
|
|
global $prefs_cache;
|
|
|
|
|
|
cachePrefValues($data_dir, $username);
|
|
cachePrefValues($data_dir, $username);
|
|
-
|
|
|
|
$prefs_cache[$string] = $set_to;
|
|
$prefs_cache[$string] = $set_to;
|
|
-
|
|
|
|
savePrefValues($data_dir, $username);
|
|
savePrefValues($data_dir, $username);
|
|
}
|
|
}
|
|
|
|
|