* The category of the configuration value
* @param string $key
* The configuration key to query
- * @param boolean $refresh
- * If true the config is loaded from the db and not from the cache
+ * @param mixed $default_value optional
+ * The value to return if key is not set (default: null)
+ * @param boolean $refresh optional
+ * If true the config is loaded from the db and not from the cache (default: false)
* @return mixed Stored value or null if it does not exist
*/
- public static function get($family, $key, $refresh = false) {
+ public static function get($family, $key, $default_value=null, $refresh = false) {
global $a;
// Looking if the whole family isn't set
if(isset($a->config[$family])) {
if($a->config[$family] === '!<unset>!') {
- return null;
+ return $default_value;
}
}
if(isset($a->config[$family][$key])) {
if($a->config[$family][$key] === '!<unset>!') {
- return null;
+ return $default_value;
}
return $a->config[$family][$key];
}
elseif (function_exists("xcache_set"))
xcache_set($family."|".$key, '!<unset>!', 600);*/
}
- return null;
+ return $default_value;
}
/**
// manage array value
$dbvalue = (is_array($value)?serialize($value):$value);
$dbvalue = (is_bool($dbvalue) ? intval($dbvalue) : $dbvalue);
- if(self::get($family,$key,true) === false) {
+ if(is_null(self::get($family,$key,null,true))) {
$a->config[$family][$key] = $value;
$ret = q("INSERT INTO `config` ( `cat`, `k`, `v` ) VALUES ( '%s', '%s', '%s' ) ",
dbesc($family),