a bit more progress on the new network/home ajax notifications, at least I've now got a plan

This commit is contained in:
friendica
2012-11-13 16:04:22 -08:00
parent 15c8da101a
commit 4af6d77de3
3 changed files with 36 additions and 50 deletions

View File

@@ -3,58 +3,39 @@
function format_notification($item) {
$ret = '';
return;
return array();
// convert this logic into a json array just like the system notifications
switch($item['verb']){
case ACTIVITY_LIKE:
require_once('include/conversation.php');
$notif_content .= replace_macros($tpl_item_likes,array(
'$itemem_link' => $a->get_baseurl(true).'/display/'.$a->user['nickname']."/".$item['parent'],
'$itemem_image' => $item['author-avatar'],
'$itemem_text' => sprintf( t("%s liked %s's post"), $item['author-name'], $item['pname']),
'$itemem_when' => relative_date($item['created'])
));
break;
case ACTIVITY_DISLIKE:
$notif_content .= replace_macros($tpl_item_dislikes,array(
'$itemem_link' => $a->get_baseurl(true).'/display/'.$a->user['nickname']."/".$item['parent'],
'$itemem_image' => $item['author-avatar'],
'$itemem_text' => sprintf( t("%s disliked %s's post"), $item['author-name'], $item['pname']),
'$itemem_when' => relative_date($item['created'])
));
break;
case ACTIVITY_FRIEND:
$xmlhead="<"."?xml version='1.0' encoding='UTF-8' ?".">";
$obj = parse_xml_string($xmlhead.$item['object']);
$item['fname'] = $obj->title;
$notif_content .= replace_macros($tpl_item_friends,array(
'$itemem_link' => $a->get_baseurl(true).'/display/'.$a->user['nickname']."/".$item['parent'],
'$itemem_image' => $item['author-avatar'],
'$itemem_text' => sprintf( t("%s is now friends with %s"), $item['author-name'], $item['fname']),
'$itemem_when' => relative_date($item['created'])
));
break;
default:
$itemem_text = (($item['id'] == $item['parent'])
? sprintf( t("%s created a new post"), $item['author-name'])
: sprintf( t("%s commented on %s's post"), $item['author-name'], $item['pname']));
$tpl = (($item['id'] == $item['parent']) ? $tpl_item_posts : $tpl_item_comments);
// Call localize_item with the "brief" flag to get a one line status for activities.
// This should set $item['localized'] to indicate we have a brief summary.
localize_item($item,true);
// FIXME - we may need the parent
if(! $item['localized']) {
$itemem_text = (($item['item_flags'] & ITEM_THREAD_TOP)
? sprintf( t("%s created a new post"), $item['author']['xchan_name'])
: sprintf( t("%s commented on %s's post"), $item['author']['xchan_name'], $item['pname']));
}
else
$itemem_text = $item['body'];
// convert this logic into a json array just like the system notifications
return array(
'notify_link' => $a->get_baseurl() . '/notify/view/' . $zz['id'],
'name' => $zz['name'],
'url' => $zz['url'],
'photo' => $zz['photo'],
'when' => relative_date($zz['date']),
'class' => (($zz['seen']) ? 'notify-seen' : 'notify-unseen'),
'message' => strip_tags(bbcode($zz['msg']))
);
$notif_content .= replace_macros($tpl,array(
'$itemem_link' => $a->get_baseurl(true).'/display/'.$a->user['nickname']."/".$item['parent'],
'$itemem_image' => $item['author-avatar'],
'$itemem_text' => $itemem_text,
'$itemem_when' => relative_date($it['created'])
));
}
}