X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=classes%2FConfig.php;h=43b99587fa14971c2c66a32790d548da10f4e6c6;hb=2eadeca74515802dccc63d7ec84af1bc7d1338d9;hp=5bec13fdc8d92a8d663745b895fedabc5292e366;hpb=13147143fc830e81b80ae86bf4cc4f745ce04381;p=quix0rs-gnu-social.git diff --git a/classes/Config.php b/classes/Config.php index 5bec13fdc8..43b99587fa 100644 --- a/classes/Config.php +++ b/classes/Config.php @@ -17,7 +17,9 @@ * along with this program. If not, see . */ -if (!defined('LACONICA')) { exit(1); } +if (!defined('STATUSNET')) { + exit(1); +} /** * Table Definition for config @@ -57,7 +59,7 @@ class Config extends Memcached_DataObject if (!empty($c)) { $settings = $c->get(common_cache_key(self::settingsKey)); - if (!empty($settings)) { + if ($settings !== false) { return $settings; } } @@ -118,6 +120,35 @@ class Config extends Memcached_DataObject return $result; } + function pkeyGet($kv) + { + return Memcached_DataObject::pkeyGet('Config', $kv); + } + + static function save($section, $setting, $value) + { + $result = null; + + $config = Config::pkeyGet(array('section' => $section, + 'setting' => $setting)); + + if (!empty($config)) { + $orig = clone($config); + $config->value = $value; + $result = $config->update($orig); + } else { + $config = new Config(); + + $config->section = $section; + $config->setting = $setting; + $config->value = $value; + + $result = $config->insert(); + } + + return $result; + } + function _blowSettingsCache() { $c = self::memcache();