Merge pull request #2820 from Hypolite/Issue-#2816
[Hotfix] Fix #2816 - [Admin] Unable to save config items present in .htconfig.php but not in DB
This commit is contained in:
commit
894b4286f5
2 changed files with 4 additions and 92 deletions
|
@ -2,7 +2,7 @@
|
|||
namespace Friendica\Core;
|
||||
/**
|
||||
* @file include/Core/Config.php
|
||||
*
|
||||
*
|
||||
* @brief Contains the class with methods for system configuration
|
||||
*/
|
||||
|
||||
|
@ -74,7 +74,7 @@ class Config {
|
|||
|
||||
global $a;
|
||||
|
||||
if(! $instore) {
|
||||
if(! $refresh) {
|
||||
// Looking if the whole family isn't set
|
||||
if(isset($a->config[$family])) {
|
||||
if($a->config[$family] === '!<unset>!') {
|
||||
|
@ -90,29 +90,6 @@ class Config {
|
|||
}
|
||||
}
|
||||
|
||||
// If APC is enabled then fetch the data from there, else try XCache
|
||||
/*if (function_exists("apc_fetch") AND function_exists("apc_exists"))
|
||||
if (apc_exists($family."|".$key)) {
|
||||
$val = apc_fetch($family."|".$key);
|
||||
$a->config[$family][$key] = $val;
|
||||
|
||||
if ($val === '!<unset>!')
|
||||
return false;
|
||||
else
|
||||
return $val;
|
||||
}
|
||||
elseif (function_exists("xcache_fetch") AND function_exists("xcache_isset"))
|
||||
if (xcache_isset($family."|".$key)) {
|
||||
$val = xcache_fetch($family."|".$key);
|
||||
$a->config[$family][$key] = $val;
|
||||
|
||||
if ($val === '!<unset>!')
|
||||
return false;
|
||||
else
|
||||
return $val;
|
||||
}
|
||||
*/
|
||||
|
||||
$ret = q("SELECT `v` FROM `config` WHERE `cat` = '%s' AND `k` = '%s' LIMIT 1",
|
||||
dbesc($family),
|
||||
dbesc($key)
|
||||
|
@ -122,22 +99,10 @@ class Config {
|
|||
$val = (preg_match("|^a:[0-9]+:{.*}$|s", $ret[0]['v'])?unserialize( $ret[0]['v']):$ret[0]['v']);
|
||||
$a->config[$family][$key] = $val;
|
||||
|
||||
// If APC is enabled then store the data there, else try XCache
|
||||
/*if (function_exists("apc_store"))
|
||||
apc_store($family."|".$key, $val, 600);
|
||||
elseif (function_exists("xcache_set"))
|
||||
xcache_set($family."|".$key, $val, 600);*/
|
||||
|
||||
return $val;
|
||||
}
|
||||
else {
|
||||
$a->config[$family][$key] = '!<unset>!';
|
||||
|
||||
// If APC is enabled then store the data there, else try XCache
|
||||
/*if (function_exists("apc_store"))
|
||||
apc_store($family."|".$key, '!<unset>!', 600);
|
||||
elseif (function_exists("xcache_set"))
|
||||
xcache_set($family."|".$key, '!<unset>!', 600);*/
|
||||
}
|
||||
return $default_value;
|
||||
}
|
||||
|
@ -192,12 +157,6 @@ class Config {
|
|||
|
||||
$a->config[$family][$key] = $value;
|
||||
|
||||
// If APC is enabled then store the data there, else try XCache
|
||||
/*if (function_exists("apc_store"))
|
||||
apc_store($family."|".$key, $value, 600);
|
||||
elseif (function_exists("xcache_set"))
|
||||
xcache_set($family."|".$key, $value, 600);*/
|
||||
|
||||
if($ret)
|
||||
return $value;
|
||||
return $ret;
|
||||
|
@ -224,11 +183,6 @@ class Config {
|
|||
dbesc($family),
|
||||
dbesc($key)
|
||||
);
|
||||
// If APC is enabled then delete the data from there, else try XCache
|
||||
/*if (function_exists("apc_delete"))
|
||||
apc_delete($family."|".$key);
|
||||
elseif (function_exists("xcache_unset"))
|
||||
xcache_unset($family."|".$key);*/
|
||||
|
||||
return $ret;
|
||||
}
|
||||
|
|
|
@ -67,7 +67,7 @@ class PConfig {
|
|||
|
||||
global $a;
|
||||
|
||||
if(! $instore) {
|
||||
if(! $refresh) {
|
||||
// Looking if the whole family isn't set
|
||||
if(isset($a->config[$uid][$family])) {
|
||||
if($a->config[$uid][$family] === '!<unset>!') {
|
||||
|
@ -83,29 +83,6 @@ class PConfig {
|
|||
}
|
||||
}
|
||||
|
||||
// If APC is enabled then fetch the data from there, else try XCache
|
||||
/*if (function_exists("apc_fetch") AND function_exists("apc_exists"))
|
||||
if (apc_exists($uid."|".$family."|".$key)) {
|
||||
$val = apc_fetch($uid."|".$family."|".$key);
|
||||
$a->config[$uid][$family][$key] = $val;
|
||||
|
||||
if ($val === '!<unset>!')
|
||||
return false;
|
||||
else
|
||||
return $val;
|
||||
}
|
||||
elseif (function_exists("xcache_get") AND function_exists("xcache_isset"))
|
||||
if (xcache_isset($uid."|".$family."|".$key)) {
|
||||
$val = xcache_get($uid."|".$family."|".$key);
|
||||
$a->config[$uid][$family][$key] = $val;
|
||||
|
||||
if ($val === '!<unset>!')
|
||||
return false;
|
||||
else
|
||||
return $val;
|
||||
}*/
|
||||
|
||||
|
||||
$ret = q("SELECT `v` FROM `pconfig` WHERE `uid` = %d AND `cat` = '%s' AND `k` = '%s' LIMIT 1",
|
||||
intval($uid),
|
||||
dbesc($family),
|
||||
|
@ -116,22 +93,10 @@ class PConfig {
|
|||
$val = (preg_match("|^a:[0-9]+:{.*}$|s", $ret[0]['v'])?unserialize( $ret[0]['v']):$ret[0]['v']);
|
||||
$a->config[$uid][$family][$key] = $val;
|
||||
|
||||
// If APC is enabled then store the data there, else try XCache
|
||||
/*if (function_exists("apc_store"))
|
||||
apc_store($uid."|".$family."|".$key, $val, 600);
|
||||
elseif (function_exists("xcache_set"))
|
||||
xcache_set($uid."|".$family."|".$key, $val, 600);*/
|
||||
|
||||
return $val;
|
||||
}
|
||||
else {
|
||||
$a->config[$uid][$family][$key] = '!<unset>!';
|
||||
|
||||
// If APC is enabled then store the data there, else try XCache
|
||||
/*if (function_exists("apc_store"))
|
||||
apc_store($uid."|".$family."|".$key, '!<unset>!', 600);
|
||||
elseif (function_exists("xcache_set"))
|
||||
xcache_set($uid."|".$family."|".$key, '!<unset>!', 600);*/
|
||||
}
|
||||
return $default_value;
|
||||
}
|
||||
|
@ -169,7 +134,7 @@ class PConfig {
|
|||
dbesc($key),
|
||||
dbesc($dbvalue)
|
||||
);
|
||||
if($ret)
|
||||
if($ret)
|
||||
return $value;
|
||||
return $ret;
|
||||
}
|
||||
|
@ -182,13 +147,6 @@ class PConfig {
|
|||
|
||||
$a->config[$uid][$family][$key] = $value;
|
||||
|
||||
// If APC is enabled then store the data there, else try XCache
|
||||
/*if (function_exists("apc_store"))
|
||||
apc_store($uid."|".$family."|".$key, $value, 600);
|
||||
elseif (function_exists("xcache_set"))
|
||||
xcache_set($uid."|".$family."|".$key, $value, 600);*/
|
||||
|
||||
|
||||
if($ret)
|
||||
return $value;
|
||||
return $ret;
|
||||
|
|
Loading…
Reference in a new issue