diff options
Diffstat (limited to 'Zotlabs/Module/Mail.php')
-rw-r--r-- | Zotlabs/Module/Mail.php | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/Zotlabs/Module/Mail.php b/Zotlabs/Module/Mail.php index 043c28078..aae7585c4 100644 --- a/Zotlabs/Module/Mail.php +++ b/Zotlabs/Module/Mail.php @@ -57,6 +57,8 @@ class Mail extends \Zotlabs\Web\Controller { $their_perms = 0; + $global_perms = get_perms(); + if($j['permissions']['data']) { $permissions = crypto_unencapsulate($j['permissions'],$channel['channel_prvkey']); if($permissions) @@ -66,7 +68,13 @@ class Mail extends \Zotlabs\Web\Controller { else $permissions = $j['permissions']; - if(! ($permissions['post_mail'])) { + foreach($permissions as $k => $v) { + if($v) { + $their_perms = $their_perms | intval($global_perms[$k][1]); + } + } + + if(! ($their_perms & PERMS_W_MAIL)) { notice( t('Selected channel has private message restrictions. Send failed.')); // reported issue: let's still save the message and continue. We'll just tell them // that nothing useful is likely to happen. They might have spent hours on it. @@ -112,7 +120,7 @@ class Mail extends \Zotlabs\Web\Controller { } - function get() { + function get() { $o = ''; nav_set_selected('messages'); |