diff options
author | friendica <info@friendica.com> | 2014-02-17 18:23:01 -0800 |
---|---|---|
committer | friendica <info@friendica.com> | 2014-02-17 18:23:01 -0800 |
commit | d3120264cb99b8c87ecce01795bbc96265028b47 (patch) | |
tree | 6b7554b3e65f2eaf64d16058bcbbc848dddb959a /include | |
parent | 9b0ae023ffc63c4159724f2e17ed6f23762de333 (diff) | |
download | volse-hubzilla-d3120264cb99b8c87ecce01795bbc96265028b47.tar.gz volse-hubzilla-d3120264cb99b8c87ecce01795bbc96265028b47.tar.bz2 volse-hubzilla-d3120264cb99b8c87ecce01795bbc96265028b47.zip |
more snakebite stuff
Diffstat (limited to 'include')
-rw-r--r-- | include/permissions.php | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/include/permissions.php b/include/permissions.php index 420591c54..0cbb5b984 100644 --- a/include/permissions.php +++ b/include/permissions.php @@ -89,7 +89,7 @@ function get_all_perms($uid,$observer_xchan,$internal_use = true) { if($observer_xchan) { if(! $abook_checked) { - $x = q("select abook_my_perms, abook_flags from abook + $x = q("select abook_my_perms, abook_flags, xchan_network from abook left join xchan on abook_xchan = xchan_hash where abook_channel = %d and abook_xchan = '%s' and not ( abook_flags & %d ) limit 1", intval($uid), dbesc($observer_xchan), @@ -137,9 +137,9 @@ function get_all_perms($uid,$observer_xchan,$internal_use = true) { continue; } - // If we're still here, we have an observer, which means they're in the network. + // If we're still here, we have an observer, check the network. - if($r[0][$channel_perm] & PERMS_NETWORK) { + if(($r[0][$channel_perm] & PERMS_NETWORK) && ($x[0]['xchan_network'] === 'zot')) { $ret[$perm_name] = true; continue; } @@ -240,7 +240,8 @@ function perm_is_allowed($uid,$observer_xchan,$permission) { return false; if($observer_xchan) { - $x = q("select abook_my_perms, abook_flags from abook where abook_channel = %d and abook_xchan = '%s' and not ( abook_flags & %d ) limit 1", + $x = q("select abook_my_perms, abook_flags, xchan_network from abook left join xchan on abook_xchan = xchan_hash + where abook_channel = %d and abook_xchan = '%s' and not ( abook_flags & %d ) limit 1", intval($uid), dbesc($observer_xchan), intval(ABOOK_FLAG_SELF) @@ -272,9 +273,9 @@ function perm_is_allowed($uid,$observer_xchan,$permission) { return false; } - // If we're still here, we have an observer, which means they're in the network. + // If we're still here, we have an observer, check the network. - if($r[0][$channel_perm] & PERMS_NETWORK) + if(($r[0][$channel_perm] & PERMS_NETWORK) && ($x[0]['xchan_network'] === 'zot')) return true; |