]> git.mxchange.org Git - quix0rs-gnu-social.git/blobdiff - lib/noticelist.php
Move prefill call to noticelist class
[quix0rs-gnu-social.git] / lib / noticelist.php
index dbe2a0996f94b565aa7d1df7f8b4d89e3f0462cd..c52380dfc9602e1d1e3edf345e1ac6ac25f873cd 100644 (file)
@@ -53,7 +53,6 @@ require_once INSTALLDIR.'/lib/attachmentlist.php';
  * @see      NoticeListItem
  * @see      ProfileNoticeList
  */
-
 class NoticeList extends Widget
 {
     /** the current stream of notices being displayed. */
@@ -65,7 +64,6 @@ class NoticeList extends Widget
      *
      * @param Notice $notice stream of notices from DB_DataObject
      */
-
     function __construct($notice, $out=null)
     {
         parent::__construct($out);
@@ -80,24 +78,21 @@ class NoticeList extends Widget
      *
      * @return int count of notices listed.
      */
-
     function show()
     {
         $this->out->elementStart('div', array('id' =>'notices_primary'));
-        $this->out->element('h2', null, _('Notices'));
         $this->out->elementStart('ol', array('class' => 'notices xoxo'));
 
-        $cnt = 0;
-
-        while ($this->notice->fetch() && $cnt <= NOTICES_PER_PAGE) {
-            $cnt++;
-
-            if ($cnt > NOTICES_PER_PAGE) {
-                break;
-            }
+               $notices = $this->notice->fetchAll();
+               
+               $notices = array_slice($notices, 0, NOTICES_PER_PAGE);
+               
+       $this->prefill($notices);
+       
+       foreach ($notices as $notice) {
 
             try {
-                $item = $this->newListItem($this->notice);
+                $item = $this->newListItem($notice);
                 $item->show();
             } catch (Exception $e) {
                 // we log exceptions and continue
@@ -109,7 +104,7 @@ class NoticeList extends Widget
         $this->out->elementEnd('ol');
         $this->out->elementEnd('div');
 
-        return $cnt;
+        return count($notices);
     }
 
     /**
@@ -122,10 +117,14 @@ class NoticeList extends Widget
      *
      * @return NoticeListItem a list item for displaying the notice
      */
-
     function newListItem($notice)
     {
         return new NoticeListItem($notice, $this->out);
     }
+    
+    function prefill(&$notices)
+    {
+       // Prefill the profiles
+       Notice::fillProfiles($notices);
+    }
 }
-