mirror of
https://codeberg.org/streams/streams.git
synced 2024-09-20 00:55:19 +00:00
correct the logic for configs in app requirement
This commit is contained in:
parent
b66cd8363e
commit
1f2482f6ab
2 changed files with 26 additions and 7 deletions
|
@ -169,7 +169,15 @@ class Apps {
|
||||||
$requires = explode(',',$ret['requires']);
|
$requires = explode(',',$ret['requires']);
|
||||||
foreach($requires as $require) {
|
foreach($requires as $require) {
|
||||||
$require = trim(strtolower($require));
|
$require = trim(strtolower($require));
|
||||||
|
$config = false;
|
||||||
|
|
||||||
|
if(substr($require, 0, 7) == 'config:') {
|
||||||
|
$config = true;
|
||||||
|
$require = ltrim($require, 'config:');
|
||||||
|
}
|
||||||
|
|
||||||
$toggle = (($require[0] == '!') ? 0 : 1);
|
$toggle = (($require[0] == '!') ? 0 : 1);
|
||||||
|
|
||||||
switch($require) {
|
switch($require) {
|
||||||
case 'nologin':
|
case 'nologin':
|
||||||
if(local_channel())
|
if(local_channel())
|
||||||
|
@ -192,9 +200,10 @@ class Apps {
|
||||||
unset($ret);
|
unset($ret);
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
$unset = ((local_channel() && feature_enabled(local_channel(),$require)) ? false : true);
|
if($config)
|
||||||
$unset = ((get_config('system', ltrim($require, '!')) == $toggle) ? false : true);
|
$unset = ((get_config('system', ltrim($require, '!')) == $toggle) ? false : true);
|
||||||
|
else
|
||||||
|
$unset = ((local_channel() && feature_enabled(local_channel(),$require)) ? false : true);
|
||||||
if($unset)
|
if($unset)
|
||||||
unset($ret);
|
unset($ret);
|
||||||
break;
|
break;
|
||||||
|
@ -308,9 +317,18 @@ class Apps {
|
||||||
|
|
||||||
if($k === 'requires') {
|
if($k === 'requires') {
|
||||||
$requires = explode(',',$v);
|
$requires = explode(',',$v);
|
||||||
|
|
||||||
foreach($requires as $require) {
|
foreach($requires as $require) {
|
||||||
$require = trim(strtolower($require));
|
$require = trim(strtolower($require));
|
||||||
|
$config = false;
|
||||||
|
|
||||||
|
if(substr($require, 0, 7) == 'config:') {
|
||||||
|
$config = true;
|
||||||
|
$require = ltrim($require, 'config:');
|
||||||
|
}
|
||||||
|
|
||||||
$toggle = (($require[0] == '!') ? 0 : 1);
|
$toggle = (($require[0] == '!') ? 0 : 1);
|
||||||
|
|
||||||
switch($require) {
|
switch($require) {
|
||||||
case 'nologin':
|
case 'nologin':
|
||||||
if(local_channel())
|
if(local_channel())
|
||||||
|
@ -334,9 +352,10 @@ class Apps {
|
||||||
return '';
|
return '';
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
$unset = ((local_channel() && feature_enabled(local_channel(),$require)) ? false : true);
|
if($config)
|
||||||
$unset = ((get_config('system', ltrim($require, '!')) == $toggle) ? false : true);
|
$unset = ((get_config('system', ltrim($require, '!')) == $toggle) ? false : true);
|
||||||
|
else
|
||||||
|
$unset = ((local_channel() && feature_enabled(local_channel(),$require)) ? false : true);
|
||||||
if($unset)
|
if($unset)
|
||||||
return '';
|
return '';
|
||||||
break;
|
break;
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
version: 1
|
version: 1
|
||||||
url: $baseurl/pubstream
|
url: $baseurl/pubstream
|
||||||
requires: !disable_discover_tab
|
requires: config:!disable_discover_tab
|
||||||
name: Public Stream
|
name: Public Stream
|
||||||
photo: icon:globe
|
photo: icon:globe
|
||||||
categories: Social
|
categories: Social
|
||||||
|
|
Loading…
Reference in a new issue