* @link http://status.net/
*/
-if (!defined('STATUSNET')) {
- // This check helps protect against security problems;
- // your code file can't be executed directly from the web.
- exit(1);
-}
+if (!defined('GNUSOCIAL')) { exit(1); }
/**
* widget for displaying a single notice
*
* @param Notice $notice The notice we'll display
*/
- function __construct($notice, $out=null)
+ function __construct(Notice $notice, HTMLOutputter $out=null)
{
parent::__construct($out);
if (!empty($notice->repeat_of)) {
$this->showNoticeLink();
$this->showNoticeSource();
$this->showNoticeLocation();
- $this->showContext();
+ if ($this->notice->hasConversation()) {
+ $this->showContext();
+ }
$this->showRepeat();
Event::handle('EndShowNoticeInfo', array($this));
}
$this->out->elementStart('a', $attrs);
$this->showAvatar();
$this->out->text(' ');
- $user = common_current_user();
- if (!empty($user) && $user->streamNicknames()) {
- $this->out->element('span',array('class' => 'fn'),
- $this->profile->nickname);
- } else {
- $this->out->element('span',array('class' => 'fn'),
- $this->profile->getBestName());
- }
+ $this->out->element('span',array('class' => 'fn'), $this->profile->getStreamName());
$this->out->elementEnd('a');
$this->out->elementEnd('span');
$attentions = $this->getReplyProfiles();
- $user = common_current_user();
-
- $streamNicknames = !empty($user) && $user->streamNicknames();
-
foreach ($attentions as $attn) {
$class = $attn->isGroup() ? 'group' : 'account';
$pa[] = array('href' => $attn->profileurl,
'title' => $attn->nickname,
'class' => "addressee {$class}",
- 'text' => ($streamNicknames) ? $attn->nickname : $attn->getBestName());
+ 'text' => $attn->getStreamName());
}
return $pa;
/**
* show the link to the main page for the notice
*
- * Displays a link to the page for a notice, with "relative" time. Tries to
- * get remote notice URLs correct, but doesn't always succeed.
+ * Displays a local link to the rendered notice, with "relative" time.
*
* @return void
*/
function showNoticeLink()
{
- $noticeurl = $this->notice->bestUrl();
-
- // above should always return an URL
-
- assert(!empty($noticeurl));
-
$this->out->elementStart('a', array('rel' => 'bookmark',
'class' => 'timestamp',
- 'href' => $noticeurl));
- $dt = common_date_iso8601($this->notice->created);
- $this->out->element('abbr', array('class' => 'published',
- 'title' => $dt),
+ 'href' => $this->notice->getLocalUrl()));
+ $this->out->element('time', array('class' => 'dt-published',
+ 'datetime' => common_date_iso8601($this->notice->created),
+ // TRANS: Timestamp title (tooltip text) for NoticeListItem
+ 'title' => common_exact_date($this->notice->created)),
common_date_string($this->notice->created));
$this->out->elementEnd('a');
}
*/
function showContext()
{
- if ($this->notice->hasConversation()) {
- $conv = Conversation::getKV(
- 'id',
- $this->notice->conversation
- );
- $convurl = $conv->uri;
- if (!empty($convurl)) {
- $this->out->text(' ');
- $this->out->element(
- 'a',
- array(
- 'href' => $convurl.'#notice-'.$this->notice->id,
- 'class' => 'response'),
- // TRANS: Addition in notice list item if notice is part of a conversation.
- _('in context')
- );
- } else {
- $msg = sprintf(
- "Couldn't find Conversation ID %d to make 'in context'"
- . "link for Notice ID %d",
- $this->notice->conversation,
- $this->notice->id
- );
- common_log(LOG_WARNING, $msg);
- }
- }
+ $this->out->element('a',
+ array('href' => $this->notice->getConversationUrl(),
+ 'class' => 'conversation'),
+ // TRANS: Addition in notice list item if notice is part of a conversation.
+ _('in context'));
}
/**