break;
}
+ $top_level = false;
$recipients = array();
$url_recipients = array();
return;
}
+
// avoid race condition with deleting entries
if($items[0]['deleted']) {
foreach($items as $item)
$item['deleted'] = 1;
+ }
+ if(count($items) == 1 && $items[0]['uri'] === $items[0]['parent-uri'])
+ $top_level = true;
}
- $r = q("SELECT `contact`.*, `user`.`nickname`, `user`.`sprvkey`, `user`.`spubkey`, `user`.`page-flags`
+ $r = q("SELECT `contact`.*, `user`.`timezone`, `user`.`nickname`, `user`.`sprvkey`, `user`.`spubkey`, `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)
$r = q("SELECT * FROM `contact` WHERE `id` IN ( $conversant_str ) AND `blocked` = 0 AND `pending` = 0");
-// if( ! count($r)){
-// return;
-// }
if(count($r))
$contacts = $r;
$mail_template = load_view_file('view/atom_mail.tpl');
$atom = '';
- $hubxml = '';
$slaps = array();
- if(strlen($hub)) {
- $hubs = explode(',', $hub);
- if(count($hubs)) {
- foreach($hubs as $h) {
- $h = trim($h);
- if(! strlen($h))
- continue;
- $hubxml .= '<link rel="hub" href="' . xmlify($h) . '" />' . "\n" ;
- }
- }
- }
+ $hubxml = feed_hublinks();
+
+ $birthday = feed_birthday($owner['uid'],$owner['timezone']);
+
+ if(strlen($birthday))
+ $birthday = '<dfrn:birthday>' . xmlify($birthday) . '</dfrn:birthday>';
$atom .= replace_macros($feed_template, array(
'$version' => xmlify(FRIENDIKA_VERSION),
'$picdate' => xmlify(datetime_convert('UTC','UTC',$owner['avatar-date'] . '+00:00' , ATOM_TIME)) ,
'$uridate' => xmlify(datetime_convert('UTC','UTC',$owner['uri-date'] . '+00:00' , ATOM_TIME)) ,
'$namdate' => xmlify(datetime_convert('UTC','UTC',$owner['name-date'] . '+00:00' , ATOM_TIME)) ,
- '$birthday' => ''
+ '$birthday' => $birthday
));
if($cmd === 'mail') {
$atom .= atom_entry($item,'text',$contact,$owner,true);
- // There's a problem here - we *were* going to use salmon to provide semi-authenticated
- // communication to OStatus, but unless we're the item author they won't verify.
- // commented out for now, though we'll still send local replies (and any mentions
- // that they contain) upstream. Rethinking the problem space.
-
-// $slaps[] = atom_entry($item,'html',$contact,$owner,true);
+ if(($top_level) && ($notify_hub) && ($item['author-link'] === $item['owner-link']))
+ $slaps[] = atom_entry($item,'html',$contact,$owner,true);
}
}
}
logger('notifier: ' . $atom, LOGGER_DATA);
-// logger('notifier: slaps: ' . print_r($slaps,true), LOGGER_DATA);
+ logger('notifier: slaps: ' . print_r($slaps,true), LOGGER_DATA);
if($followup)
$recip_str = $parent['contact-id'];
*
*/
- $max_allowed = ((get_config('system','maxpubdeliver') === false) ? 150 : intval(get_config('system','maxdeliver')));
+ $max_allowed = ((get_config('system','maxpubdeliver') === false) ? 150 : intval(get_config('system','maxpubdeliver')));
/**
*