diff options
author | Brion Vibber <brion@pobox.com> | 2010-02-17 02:16:03 +0000 |
---|---|---|
committer | Brion Vibber <brion@pobox.com> | 2010-02-17 02:16:03 +0000 |
commit | e51e96d7248b281e7d0e59f5a9bdcd4e7e651e82 (patch) | |
tree | daebfb964a48a75320f7342e4dfa5e216dc46960 /lib | |
parent | 19b03ef797190076b726ae25842bc3ed502ebef6 (diff) |
OStatus: override source link with the source domain and link to original message
Diffstat (limited to 'lib')
-rw-r--r-- | lib/noticelist.php | 30 |
1 files changed, 17 insertions, 13 deletions
diff --git a/lib/noticelist.php b/lib/noticelist.php index c05b99024..837cb90fa 100644 --- a/lib/noticelist.php +++ b/lib/noticelist.php @@ -492,30 +492,34 @@ class NoticeListItem extends Widget break; default: - $name = null; + $name = $source_name; $url = null; - $ns = Notice_source::staticGet($this->notice->source); - - if ($ns) { - $name = $ns->name; - $url = $ns->url; - } else { - $app = Oauth_application::staticGet('name', $this->notice->source); - if ($app) { - $name = $app->name; - $url = $app->source_url; + if (Event::handle('StartNoticeSourceLink', array($this->notice, &$name, &$url, &$title))) { + $ns = Notice_source::staticGet($this->notice->source); + + if ($ns) { + $name = $ns->name; + $url = $ns->url; + } else { + $app = Oauth_application::staticGet('name', $this->notice->source); + if ($app) { + $name = $app->name; + $url = $app->source_url; + } } } + Event::handle('EndNoticeSourceLink', array($this->notice, &$name, &$url, &$title)); if (!empty($name) && !empty($url)) { $this->out->elementStart('span', 'device'); $this->out->element('a', array('href' => $url, - 'rel' => 'external'), + 'rel' => 'external', + 'title' => $title), $name); $this->out->elementEnd('span'); } else { - $this->out->element('span', 'device', $source_name); + $this->out->element('span', 'device', $name); } break; } |