pass community page permissions through notification feeds

This commit is contained in:
Mike Macgirvin 2010-10-18 03:02:51 -07:00
parent fbc64baf31
commit 664cf8ac8e
2 changed files with 7 additions and 6 deletions

View file

@ -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; return 3;
$idtosend = $orig_id = (($contact['dfrn-id']) ? $contact['dfrn-id'] : $contact['issued-id']); $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'])) { if(($contact['rel']) && ($contact['rel'] != REL_FAN) && (! $contact['blocked']) && (! $contact['readonly'])) {
$postvars['data'] = $atom; $postvars['data'] = $atom;
} }
elseif($owner['page-flags'] == PAGE_COMMUNITY) {
$postvars['data'] = $atom;
}
else { else {
$postvars['data'] = str_replace('<dfrn:comment-allow>1','<dfrn:comment-allow>0',$atom); $postvars['data'] = str_replace('<dfrn:comment-allow>1','<dfrn:comment-allow>0',$atom);
} }

View file

@ -72,7 +72,7 @@
killme(); 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` FROM `contact` LEFT JOIN `user` ON `user`.`uid` = `contact`.`uid`
WHERE `contact`.`uid` = %d AND `contact`.`self` = 1 LIMIT 1", WHERE `contact`.`uid` = %d AND `contact`.`self` = 1 LIMIT 1",
intval($uid) intval($uid)
@ -128,8 +128,6 @@
$recipients = array_diff($recipients,$deny); $recipients = array_diff($recipients,$deny);
$conversant_str = dbesc(implode(', ',$conversants)); $conversant_str = dbesc(implode(', ',$conversants));
} }
$r = q("SELECT * FROM `contact` WHERE `id` IN ( $conversant_str ) AND `blocked` = 0 AND `pending` = 0"); $r = q("SELECT * FROM `contact` WHERE `id` IN ( $conversant_str ) AND `blocked` = 0 AND `pending` = 0");
@ -310,7 +308,7 @@
switch($contact['network']) { switch($contact['network']) {
case 'dfrn': case 'dfrn':
$deliver_status = dfrn_deliver($contact,$atom,$debugging); $deliver_status = dfrn_deliver($owner,$contact,$atom,$debugging);
break; break;
default: default:
break; break;