From 1f2482f6abf5986ebf4b9ee292ba229a4a3b6797 Mon Sep 17 00:00:00 2001 From: git-marijus Date: Tue, 1 Aug 2017 03:38:41 +0200 Subject: correct the logic for configs in app requirement --- Zotlabs/Lib/Apps.php | 31 +++++++++++++++++++++++++------ 1 file changed, 25 insertions(+), 6 deletions(-) (limited to 'Zotlabs') 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; -- cgit v1.2.3 From 2ba2187c2ed6fa32075bc52d23ff66ece87f03c4 Mon Sep 17 00:00:00 2001 From: git-marijus Date: Tue, 1 Aug 2017 23:45:41 +0200 Subject: do not show pubs notifications for items with ACTIVITY_OBJ_FILE obj_type --- Zotlabs/Module/Ping.php | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'Zotlabs') diff --git a/Zotlabs/Module/Ping.php b/Zotlabs/Module/Ping.php index 190208727..f38ed510e 100644 --- a/Zotlabs/Module/Ping.php +++ b/Zotlabs/Module/Ping.php @@ -147,11 +147,13 @@ class Ping extends \Zotlabs\Web\Controller { $pubs = q("SELECT count(id) as total from item WHERE uid = %d AND author_xchan != '%s' + AND obj_type != '%s' AND item_unseen = 1 AND created > '" . datetime_convert('UTC','UTC',$_SESSION['static_loadtime']) . "' $item_normal", intval($sys['channel_id']), - dbesc(get_observer_hash()) + dbesc(get_observer_hash()), + dbesc(ACTIVITY_OBJ_FILE) ); if($pubs) -- cgit v1.2.3