diff options
Diffstat (limited to 'lib/class')
-rw-r--r-- | lib/class/preference.class.php | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/lib/class/preference.class.php b/lib/class/preference.class.php index c7838b77..a648434c 100644 --- a/lib/class/preference.class.php +++ b/lib/class/preference.class.php @@ -41,7 +41,7 @@ class Preference { * update * This updates a single preference from the given name or id */ - public static function update($preference,$user_id,$value) { + public static function update($preference,$user_id,$value,$applytoall='') { // First prepare if (!is_numeric($preference)) { @@ -52,13 +52,19 @@ class Preference { $name = self::name_from_id($preference); $id = $preference; } + if ($applytoall AND Access::check('interface','100')) { + $user_check = ""; + } + else { + $user_check = " AND `user`='$user_id'"; + } // Now do if (self::has_access($name)) { $value = Dba::escape($value); $user_id = Dba::escape($user_id); $sql = "UPDATE `user_preference` SET `value`='$value' " . - "WHERE `preference`='$id' AND `user`='$user_id'"; + "WHERE `preference`='$id'$user_check"; $db_results = Dba::query($sql); return true; } |