]> git.mxchange.org Git - quix0rs-gnu-social.git/commitdiff
show notice location in notice list
authorEvan Prodromou <evan@status.net>
Thu, 29 Oct 2009 20:16:02 +0000 (16:16 -0400)
committerEvan Prodromou <evan@status.net>
Thu, 29 Oct 2009 20:16:02 +0000 (16:16 -0400)
lib/noticelist.php

index 6c296f82a7bfb154db87c28686b3a3592236de74..8b3015cc3ebf1a3325c5326ceffa6461c3c5419b 100644 (file)
@@ -199,6 +199,7 @@ class NoticeListItem extends Widget
     {
         $this->out->elementStart('div', 'entry-content');
         $this->showNoticeLink();
+        $this->showNoticeLocation();
         $this->showNoticeSource();
         $this->showContext();
         $this->out->elementEnd('div');
@@ -369,6 +370,44 @@ class NoticeListItem extends Widget
         $this->out->elementEnd('a');
     }
 
+    /**
+     * show the notice location
+     *
+     * shows the notice location in the correct language.
+     *
+     * If an URL is available, makes a link. Otherwise, just a span.
+     *
+     * @return void
+     */
+
+    function showNoticeLocation()
+    {
+        $id = $this->notice->id;
+
+        $location = $this->notice->getLocation();
+
+        if (empty($location)) {
+            return;
+        }
+
+        $name = $location->getName();
+
+        if (empty($name)) {
+            // XXX: Could be a translation issue. Fall back to... something?
+            return;
+        }
+
+        $url  = $location->getUrl();
+
+        if (empty($url)) {
+            $this->out->element('span', array('class' => 'location'), $name);
+        } else {
+            $this->out->element('a', array('class' => 'location',
+                                           'href' => $url),
+                                $name);
+        }
+    }
+
     /**
      * Show the source of the notice
      *