aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMike Macgirvin <mike@macgirvin.com>2010-10-18 03:02:51 -0700
committerMike Macgirvin <mike@macgirvin.com>2010-10-18 03:02:51 -0700
commit664cf8ac8e5d35e8b9a4df35b646a00fd76e212b (patch)
tree64f6df1c197a1e655208ff270dbc83d63a9f2fb6
parentfbc64baf31581de206a20b42fde667b1374d017f (diff)
downloadvolse-hubzilla-664cf8ac8e5d35e8b9a4df35b646a00fd76e212b.tar.gz
volse-hubzilla-664cf8ac8e5d35e8b9a4df35b646a00fd76e212b.tar.bz2
volse-hubzilla-664cf8ac8e5d35e8b9a4df35b646a00fd76e212b.zip
pass community page permissions through notification feeds
-rw-r--r--include/items.php7
-rw-r--r--include/notifier.php6
2 files changed, 7 insertions, 6 deletions
diff --git a/include/items.php b/include/items.php
index 7647eed5c..e9277f114 100644
--- a/include/items.php
+++ b/include/items.php
@@ -515,10 +515,10 @@ function get_item_contact($item,$contacts) {
}
-function dfrn_deliver($contact,$atom,$debugging = false) {
+function dfrn_deliver($owner,$contact,$atom,$debugging = false) {
- if((! strlen($contact['dfrn-id'])) && (! $contact['duplex']))
+ if((! strlen($contact['dfrn-id'])) && (! $contact['duplex']) && (! ($owner['page-flags'] == PAGE_COMMUNITY)))
return 3;
$idtosend = $orig_id = (($contact['dfrn-id']) ? $contact['dfrn-id'] : $contact['issued-id']);
@@ -577,6 +577,9 @@ function dfrn_deliver($contact,$atom,$debugging = false) {
if(($contact['rel']) && ($contact['rel'] != REL_FAN) && (! $contact['blocked']) && (! $contact['readonly'])) {
$postvars['data'] = $atom;
}
+ elseif($owner['page-flags'] == PAGE_COMMUNITY) {
+ $postvars['data'] = $atom;
+ }
else {
$postvars['data'] = str_replace('<dfrn:comment-allow>1','<dfrn:comment-allow>0',$atom);
}
diff --git a/include/notifier.php b/include/notifier.php
index bef46677c..db95c3aae 100644
--- a/include/notifier.php
+++ b/include/notifier.php
@@ -72,7 +72,7 @@
killme();
}
- $r = q("SELECT `contact`.*, `user`.`nickname`
+ $r = q("SELECT `contact`.*, `user`.`nickname`, `user`.`page-flags`
FROM `contact` LEFT JOIN `user` ON `user`.`uid` = `contact`.`uid`
WHERE `contact`.`uid` = %d AND `contact`.`self` = 1 LIMIT 1",
intval($uid)
@@ -128,8 +128,6 @@
$recipients = array_diff($recipients,$deny);
$conversant_str = dbesc(implode(', ',$conversants));
-
-
}
$r = q("SELECT * FROM `contact` WHERE `id` IN ( $conversant_str ) AND `blocked` = 0 AND `pending` = 0");
@@ -310,7 +308,7 @@
switch($contact['network']) {
case 'dfrn':
- $deliver_status = dfrn_deliver($contact,$atom,$debugging);
+ $deliver_status = dfrn_deliver($owner,$contact,$atom,$debugging);
break;
default:
break;