40        public static function _lookup(
$a_type, $a_setting, $a_user = 0, $a_block_id = 0)
 
   44                $key = 
$a_type.
":".$a_setting.
":".$a_user.
":".$a_block_id;
 
   45                if (isset(self::$setting[$key]))
 
   47                        return self::$setting[$key];
 
   50                $set = 
$ilDB->query(
sprintf(
"SELECT value FROM il_block_setting WHERE type = %s ".
 
   51                        "AND user_id = %s AND setting = %s AND block_id = %s",
 
   53                        $ilDB->quote($a_user, 
"integer"),
 
   54                        $ilDB->quote($a_setting, 
"text"),
 
   55                        $ilDB->quote($a_block_id, 
"integer")));
 
   56                if ($rec = 
$ilDB->fetchAssoc($set))
 
   58                        self::$setting[$key] = $rec[
"value"];
 
   61                else if (
$ilSetting->get(
'block_default_setting_'.$a_type.
'_'.$a_setting, 
false))
 
   63                        self::$setting[$key] = 
$ilSetting->get(
'block_default_setting_'.
$a_type.
'_'.$a_setting, 
false);
 
   68                        self::$setting[$key] = 
false;
 
  112                if (!self::$pd_preloaded)
 
  114                        $blocks = array(
"pdbookm", 
"pdcal", 
"pdfeedb", 
"pditems",
 
  115                                "pdmail", 
"pdnews", 
"pdnotes", 
"pdsysmess", 
"pdtag", 
"pdusers");
 
  116                        $settings = array(
"detail", 
"nr", 
"side");
 
  119                        foreach ($blocks as $b)
 
  121                                foreach ($settings as $s)
 
  123                                        $key = $b.
":".$s.
":".$user_id.
":0";
 
  126                                                self::$setting[$key] = 2;
 
  130                                                self::$setting[$key] = 
false;
 
  135                        $set = 
$ilDB->query($q = 
"SELECT type, setting, value FROM il_block_setting WHERE ".
 
  136                                " user_id = ".
$ilDB->quote($user_id, 
"integer").
 
  137                                " AND ".$ilDB->in(
"type", $blocks, 
false, 
"text").
 
  138                                " AND ".$ilDB->in(
"setting", $settings, 
false, 
"text")
 
  140                        while ($rec = 
$ilDB->fetchAssoc($set))
 
  142                                $key = $rec[
"type"].
":".$rec[
"setting"].
":".$user_id.
":0";
 
  143                                self::$setting[$key] = $rec[
"value"];
 
  146                        self::$pd_preloaded = 
true;
 
  155        public static function _write(
$a_type, $a_setting, $a_value, $a_user = 0, $a_block_id = 0)
 
  159                $ilDB->manipulate(
sprintf(
"DELETE FROM il_block_setting WHERE type = %s AND user_id = %s AND block_id = %s AND setting = %s",
 
  161                        $ilDB->quote($a_user, 
"integer"),
 
  162                        $ilDB->quote((
int) $a_block_id, 
"integer"),
 
  163                        $ilDB->quote($a_setting, 
"text")));
 
  164                $ilDB->manipulate(
sprintf(
"INSERT INTO il_block_setting  (type, user_id, setting, block_id, value) VALUES (%s,%s,%s,%s,%s)",
 
  166                        $ilDB->quote($a_user, 
"integer"),
 
  167                        $ilDB->quote($a_setting, 
"text"),
 
  168                        $ilDB->quote((
int) $a_block_id, 
"integer"),
 
  169                        $ilDB->quote($a_value, 
"text")));
 
  180                if ($detail === 
false)          
 
  249                        $ilDB->manipulate(
"DELETE FROM il_block_setting WHERE user_id = ".
 
  250                                $ilDB->quote($a_user, 
"integer"));
 
  264                        $ilDB->manipulate(
"DELETE FROM il_block_setting WHERE block_id = ".
 
  265                                $ilDB->quote($a_block_id, 
"integer").
 
  266                                " AND type = ".$ilDB->quote($a_block_type, 
"text"));
 
sprintf('%.4f', $callTime)
An exception for terminatinating execution or to throw for unit testing.
static _lookupNr($a_type, $a_user=0, $a_block_id=0)
Lookup number.
static _writeDetailLevel($a_type, $a_value, $a_user=0, $a_block_id=0)
Write detail level to database.
static _unsetDefaultSetting($a_type, $a_setting)
Unsets a default setting for a block.
static _lookupSide($a_type, $a_user=0, $a_block_id=0)
Lookup side.
static _writeNumber($a_type, $a_value, $a_user=0, $a_block_id=0)
Write number to database.
static _write($a_type, $a_setting, $a_value, $a_user=0, $a_block_id=0)
Write setting to database.
static _deleteSettingsOfUser($a_user)
Delete block settings of user.
static preloadPDBlockSettings()
Preload pd info.
static _setDefaultSetting($a_type, $a_setting, $a_value)
Sets a default setting for a block.
static _writeSide($a_type, $a_value, $a_user=0, $a_block_id=0)
Write side to database.
static _lookupDetailLevel($a_type, $a_user=0, $a_block_id=0)
Lookup detail level.
static _deleteSettingsOfBlock($a_block_id, $a_block_type)
Delete block settings of block.
static _lookup($a_type, $a_setting, $a_user=0, $a_block_id=0)
Lookup setting from database.