aboutsummaryrefslogtreecommitdiffstats
path: root/Zotlabs/Lib/Apps.php
diff options
context:
space:
mode:
authorzotlabs <mike@macgirvin.com>2017-08-01 18:20:34 -0700
committerzotlabs <mike@macgirvin.com>2017-08-01 18:20:34 -0700
commit6e9fb9b9fdef11209a3ee1a85d5ba1d02659e209 (patch)
treeff58412b458a0b03325dc851707fe1e7e31323c6 /Zotlabs/Lib/Apps.php
parenta97b09210e977d52a5bda1dee2b1eddc19afc013 (diff)
parent6614d465d6b90286f2d4e9546d9adb8bcb02dec1 (diff)
downloadvolse-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.php31
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;