Aleksander Machniak
2016-01-16 ed1d212ae2daea5e4bd043417610177093e99f19
program/include/rcmail_utils.php
@@ -1,6 +1,6 @@
<?php
/*
/**
 +-----------------------------------------------------------------------+
 | program/include/rcmail_utils.php                                      |
 |                                                                       |
@@ -327,8 +327,9 @@
     * @param string Option name
     * @param string Option value
     * @param int    Optional user identifier
     * @param string Optional value type (bool, int, string)
     */
    public static function mod_pref($name, $value, $userid = null)
    public static function mod_pref($name, $value, $userid = null, $type = 'string')
    {
        $db = self::db();
@@ -337,6 +338,15 @@
        }
        else {
            $query = '1=1';
        }
        $type = strtolower($type);
        if ($type == 'bool' || $type == 'boolean') {
            $value = rcube_utils::get_boolean($value);
        }
        else if ($type == 'int' || $type == 'integer') {
            $value = (int) $value;
        }
        // iterate over all users
@@ -351,7 +361,7 @@
            $prefs[$name] = $value;
            if ($prefs != $old_prefs) {
                $user->save_prefs($prefs);
                $user->save_prefs($prefs, true);
                echo "saved.\n";
            }
            else {