]> git.mxchange.org Git - quix0rs-gnu-social.git/blobdiff - actions/public.php
Style for fancy invite form item controls.
[quix0rs-gnu-social.git] / actions / public.php
index b0294072504d9c5cca88c16cce6e6b89fca99bf1..90e0e6e2594c5e0a8b149bc7fa6275559b1d6b30 100644 (file)
@@ -59,6 +59,7 @@ class PublicAction extends Action
 
     var $page = null;
     var $notice;
+    var $userProfile = null;
 
     function isReadOnly($args)
     {
@@ -85,8 +86,12 @@ class PublicAction extends Action
 
         common_set_returnto($this->selfUrl());
 
-        $this->notice = Notice::publicStream(($this->page-1)*NOTICES_PER_PAGE,
-                                       NOTICES_PER_PAGE + 1);
+        $this->userProfile = Profile::current();
+
+        $stream = new ThreadingPublicNoticeStream($this->userProfile);
+
+        $this->notice = $stream->getNotices(($this->page-1)*NOTICES_PER_PAGE,
+                                            NOTICES_PER_PAGE + 1);
 
         if (!$this->notice) {
             // TRANS: Server error displayed when a public timeline cannot be retrieved.
@@ -203,7 +208,7 @@ class PublicAction extends Action
      */
     function showContent()
     {
-        $nl = new ThreadedNoticeList($this->notice, $this);
+        $nl = new ThreadedNoticeList($this->notice, $this, $this->userProfile);
 
         $cnt = $nl->show();
 
@@ -217,12 +222,12 @@ class PublicAction extends Action
 
     function showSections()
     {
-        // $top = new TopPostersSection($this);
-        // $top->show();
+        $ibs = new InviteButtonSection($this);
+        $ibs->show();
         $pop = new PopularNoticeSection($this);
         $pop->show();
-        $gbp = new GroupsByMembersSection($this);
-        $gbp->show();
+        $cloud = new PublicTagCloudSection($this);
+        $cloud->show();
         $feat = new FeaturedUsersSection($this);
         $feat->show();
     }
@@ -247,3 +252,11 @@ class PublicAction extends Action
         $this->elementEnd('div');
     }
 }
+
+class ThreadingPublicNoticeStream extends ThreadingNoticeStream
+{
+    function __construct($profile)
+    {
+        parent::__construct(new PublicNoticeStream($profile));
+    }
+}