. */ if (!defined('LACONICA')) { exit(1); } require_once(INSTALLDIR.'/lib/stream.php'); class ShownoticeAction extends StreamAction { function handle($args) { parent::handle($args); $id = $this->arg('notice'); $notice = Notice::staticGet($id); if (!$notice) { $this->client_error(_('No such notice.'), 404); return; } $profile = $notice->getProfile(); if (!$profile) { $this->server_error(_('Notice has no profile'), 500); return; } # Looks like we're good; show the header common_show_header(sprintf(_('%1$s\'s status on %2$s'), $profile->nickname, common_exact_date($notice->created)), array($this, 'show_header'), $notice, array($this, 'show_top')); common_element_start('ul', array('id' => 'notices')); $this->show_notice($notice); common_element_end('ul'); common_show_footer(); } function show_header($notice) { $profile = $notice->getProfile(); $user = User::staticGet($profile->id); if (!$user) { return; } if ($user->emailmicroid && $user->email && $notice->uri) { common_element('meta', array('name' => 'microid', 'content' => "mailto+http:sha1:" . sha1(sha1('mailto:' . $user->email) . sha1($notice->uri)))); } if ($user->jabbermicroid && $user->jabber && $notice->uri) { common_element('meta', array('name' => 'microid', 'content' => "xmpp+http:sha1:" . sha1(sha1('xmpp:' . $user->jabber) . sha1($notice->uri)))); } } function show_top($notice) { $user = $notice->getProfile(); $cur = common_current_user(); if ($cur && $cur->id == $user->id) { common_notice_form(); } } function no_such_notice() { common_user_error(_('No such notice.')); } }