]> git.mxchange.org Git - quix0rs-gnu-social.git/blobdiff - lib/attachmentlist.php
think I have managed to show oEmbed images better now
[quix0rs-gnu-social.git] / lib / attachmentlist.php
index 35584912787615c74a12dcf9d08ba1b678516eab..4d4b4511672aa0167697df58727a81a07533ce6d 100644 (file)
@@ -58,7 +58,7 @@ class AttachmentList extends Widget
      *
      * @param Notice $notice stream of notices from DB_DataObject
      */
-    function __construct($notice, $out=null)
+    function __construct(Notice $notice, $out=null)
     {
         parent::__construct($out);
         $this->notice = $notice;
@@ -74,23 +74,32 @@ class AttachmentList extends Widget
      */
     function show()
     {
-       $att = $this->notice->attachments();
-        if (empty($att)) return 0;
+       $attachments = $this->notice->attachments();
+        foreach ($attachments as $key=>$att) {
+            // Remove attachments which are not representable with neither a title nor thumbnail
+            if ($att->getTitle() === null && !$att->hasThumbnail()) {
+                unset($attachments[$key]);
+            }
+        }
+        if (!count($attachments)) {
+            return 0;
+        }
+
         $this->showListStart();
 
-        foreach ($att as $n=>$attachment) {
-            $item = $this->newListItem($attachment);
+        foreach ($attachments as $att) {
+            $item = $this->newListItem($att);
             $item->show();
         }
 
         $this->showListEnd();
 
-        return count($att);
+        return count($attachments);
     }
 
     function showListStart()
     {
-        $this->out->elementStart('ol', array('class' => 'attachments entry-content'));
+        $this->out->elementStart('ol', array('class' => 'attachments'));
     }
 
     function showListEnd()