strtotime($this->avatar->modified) : 0;
return 'W/"' . implode(':', array($this->arg('action'),
+ common_user_cache_hash(),
common_language(),
$this->notice->id,
strtotime($this->notice->created),
'content' => $id->toString()));
}
- if ($user->jabbermicroid && $user->jabber && $this->notice->uri) {
- $id = new Microid('xmpp:', $user->jabber,
- $this->notice->uri);
- $this->element('meta', array('name' => 'microid',
- 'content' => $id->toString()));
- }
$this->element('link',array('rel'=>'alternate',
'type'=>'application/json+oembed',
'href'=>common_local_url(
array(),
array('format'=>'xml','url'=>$this->notice->uri)),
'title'=>'oEmbed'),null);
+
+ // Extras to aid in sharing notices to Facebook
+ $avatar = $this->profile->getAvatar(AVATAR_PROFILE_SIZE);
+ $avatarUrl = ($avatar) ?
+ $avatar->displayUrl() :
+ Avatar::defaultImage(AVATAR_PROFILE_SIZE);
+ $this->element('meta', array('property' => 'og:image',
+ 'content' => $avatarUrl));
+ $this->element('meta', array('property' => 'og:description',
+ 'content' => $this->notice->content));
}
}
-class SingleNoticeItem extends NoticeListItem
+class SingleNoticeItem extends DoFollowListItem
{
/**
* recipe function for displaying a single notice.
function show()
{
$this->showStart();
- $this->showNotice();
- $this->showNoticeAttachments();
- $this->showNoticeInfo();
- $this->showNoticeOptions();
+ if (Event::handle('StartShowNoticeItem', array($this))) {
+ $this->showNotice();
+ $this->showNoticeAttachments();
+ $this->showNoticeInfo();
+ $this->showNoticeOptions();
+ Event::handle('EndShowNoticeItem', array($this));
+ }
+
$this->showEnd();
}