summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--lib/noticelist.php51
1 files changed, 24 insertions, 27 deletions
diff --git a/lib/noticelist.php b/lib/noticelist.php
index c7dc9d29d..432ea78d5 100644
--- a/lib/noticelist.php
+++ b/lib/noticelist.php
@@ -497,40 +497,37 @@ class NoticeListItem extends Widget
$this->out->text(_('from'));
$this->out->text(' ');
- // if $ns->name and $ns->url are populated we have
- // configured a source attr somewhere
- if (empty($ns->name) && empty($ns->url)) {
- // otherwise it's from normal channel such as web or api
- $this->out->element('span', 'device', $source_name);
- } else {
- $name = null;
- $url = null;
- $title = null;
+ $name = $source_name;
+ $url = $ns->url;
+ $title = null;
- if (Event::handle('StartNoticeSourceLink', array($this->notice, &$name, &$url, &$title))) {
- $name = $source_name;
- $url = $ns->url;
- }
- Event::handle('EndNoticeSourceLink', array($this->notice, &$name, &$url, &$title));
+ if (Event::handle('StartNoticeSourceLink', array($this->notice, &$name, &$url, &$title))) {
+ $name = $source_name;
+ $url = $ns->url;
+ }
+ Event::handle('EndNoticeSourceLink', array($this->notice, &$name, &$url, &$title));
- if (!empty($name) && !empty($url)) {
- $this->out->elementStart('span', 'device');
+ // if $ns->name and $ns->url are populated we have
+ // configured a source attr somewhere
+ if (!empty($name) && !empty($url)) {
- $attrs = array(
- 'href' => $url,
- 'rel' => 'external'
- );
+ $this->out->elementStart('span', 'device');
- if (isset($title)) {
- $attrs['title'] = $title;
- }
+ $attrs = array(
+ 'href' => $url,
+ 'rel' => 'external'
+ );
- $this->out->element('a', $attrs, $name);
- $this->out->elementEnd('span');
- } else {
- $this->out->element('span', 'device', $name);
+ if (!empty($title)) {
+ $attrs['title'] = $title;
}
+
+ $this->out->element('a', $attrs, $name);
+ $this->out->elementEnd('span');
+ } else {
+ $this->out->element('span', 'device', $name);
}
+
$this->out->elementEnd('span');
}
}