diff options
author | zotlabs <mike@macgirvin.com> | 2017-08-01 18:20:34 -0700 |
---|---|---|
committer | zotlabs <mike@macgirvin.com> | 2017-08-01 18:20:34 -0700 |
commit | 6e9fb9b9fdef11209a3ee1a85d5ba1d02659e209 (patch) | |
tree | ff58412b458a0b03325dc851707fe1e7e31323c6 /Zotlabs/Lib/Apps.php | |
parent | a97b09210e977d52a5bda1dee2b1eddc19afc013 (diff) | |
parent | 6614d465d6b90286f2d4e9546d9adb8bcb02dec1 (diff) | |
download | volse-hubzilla-6e9fb9b9fdef11209a3ee1a85d5ba1d02659e209.tar.gz volse-hubzilla-6e9fb9b9fdef11209a3ee1a85d5ba1d02659e209.tar.bz2 volse-hubzilla-6e9fb9b9fdef11209a3ee1a85d5ba1d02659e209.zip |
Merge branch 'dev' of https://github.com/redmatrix/hubzilla into xdev_merge
Diffstat (limited to 'Zotlabs/Lib/Apps.php')
-rw-r--r-- | Zotlabs/Lib/Apps.php | 31 |
1 files changed, 25 insertions, 6 deletions
diff --git a/Zotlabs/Lib/Apps.php b/Zotlabs/Lib/Apps.php index 7287bdd52..1fb841008 100644 --- a/Zotlabs/Lib/Apps.php +++ b/Zotlabs/Lib/Apps.php @@ -169,7 +169,15 @@ class Apps { $requires = explode(',',$ret['requires']); foreach($requires as $require) { $require = trim(strtolower($require)); + $config = false; + + if(substr($require, 0, 7) == 'config:') { + $config = true; + $require = ltrim($require, 'config:'); + } + $toggle = (($require[0] == '!') ? 0 : 1); + switch($require) { case 'nologin': if(local_channel()) @@ -192,9 +200,10 @@ class Apps { unset($ret); break; default: - $unset = ((local_channel() && feature_enabled(local_channel(),$require)) ? false : true); - $unset = ((get_config('system', ltrim($require, '!')) == $toggle) ? false : true); - + if($config) + $unset = ((get_config('system', ltrim($require, '!')) == $toggle) ? false : true); + else + $unset = ((local_channel() && feature_enabled(local_channel(),$require)) ? false : true); if($unset) unset($ret); break; @@ -308,9 +317,18 @@ class Apps { if($k === 'requires') { $requires = explode(',',$v); + foreach($requires as $require) { $require = trim(strtolower($require)); + $config = false; + + if(substr($require, 0, 7) == 'config:') { + $config = true; + $require = ltrim($require, 'config:'); + } + $toggle = (($require[0] == '!') ? 0 : 1); + switch($require) { case 'nologin': if(local_channel()) @@ -334,9 +352,10 @@ class Apps { return ''; break; default: - $unset = ((local_channel() && feature_enabled(local_channel(),$require)) ? false : true); - $unset = ((get_config('system', ltrim($require, '!')) == $toggle) ? false : true); - + if($config) + $unset = ((get_config('system', ltrim($require, '!')) == $toggle) ? false : true); + else + $unset = ((local_channel() && feature_enabled(local_channel(),$require)) ? false : true); if($unset) return ''; break; |