]> git.mxchange.org Git - quix0rs-gnu-social.git/commitdiff
Output If-Modified-Since header for all RSS 1.0 feeds (again)
authorZach Copley <zach@status.net>
Thu, 24 Sep 2009 22:10:55 +0000 (15:10 -0700)
committerZach Copley <zach@status.net>
Thu, 24 Sep 2009 22:10:55 +0000 (15:10 -0700)
actions/allrss.php
actions/favoritesrss.php
actions/grouprss.php
actions/publicrss.php
actions/repliesrss.php
actions/userrss.php
lib/rssaction.php

index 57efb73f0e85275df28109accaabd2aae2cc110a..28b1be27d82a254d82bebca9943138576b9e3927 100644 (file)
@@ -68,6 +68,7 @@ class AllrssAction extends Rss10Action
             $this->clientError(_('No such user.'));
             return false;
         } else {
+            $this->notices = $this->getNotices($this->limit);
             return true;
         }
     }
index 2d5ce985416d9e9d83f32b9f9d1a55082d7f6ebe..62f06e841b193ddd2cb4f94fbb47a3c6c151050e 100644 (file)
@@ -50,11 +50,11 @@ require_once INSTALLDIR.'/lib/rssaction.php';
  */
 class FavoritesrssAction extends Rss10Action
 {
-    
+
     /** The user whose favorites to display */
-    
+
     var $user = null;
-        
+
     /**
      * Find the user to display by supplied nickname
      *
@@ -66,7 +66,7 @@ class FavoritesrssAction extends Rss10Action
     function prepare($args)
     {
         parent::prepare($args);
-        
+
         $nickname   = $this->trimmed('nickname');
         $this->user = User::staticGet('nickname', $nickname);
 
@@ -74,10 +74,11 @@ class FavoritesrssAction extends Rss10Action
             $this->clientError(_('No such user.'));
             return false;
         } else {
+            $this->notices = $this->getNotices($this->limit);
             return true;
         }
     }
-    
+
     /**
      * Get notices
      *
index 70c1ded488e89c46ff9397b5a3da65f27b30e923..6a6b55e78f73a98096a5f289ae5625e4ebde9583 100644 (file)
@@ -104,6 +104,7 @@ class groupRssAction extends Rss10Action
             return false;
         }
 
+        $this->notices = $this->getNotices($this->limit);
         return true;
     }
 
index 593888b9f66fd6fee0bd0f59333f4c174fc51dec..0c5d061cb65614148b6711eb0c2b60e24f1c25c9 100644 (file)
@@ -49,9 +49,23 @@ require_once INSTALLDIR.'/lib/rssaction.php';
  */
 class PublicrssAction extends Rss10Action
 {
+    /**
+     * Read arguments and initialize members
+     *
+     * @param array $args Arguments from $_REQUEST
+     * @return boolean success
+     */
+
+    function prepare($args)
+    {
+        parent::prepare($args);
+        $this->notices = $this->getNotices($this->limit);
+        return true;
+    }
+
     /**
      * Initialization.
-     * 
+     *
      * @return boolean true
      */
     function init()
@@ -73,7 +87,7 @@ class PublicrssAction extends Rss10Action
         while ($notice->fetch()) {
             $notices[] = clone($notice);
         }
-        
+
         return $notices;
     }
 
index c71c9226fb59dbc0e9cba5d8c5c23ad2f1a30a99..76aae21adb994652a0fd16e8bbc090aeb95ccea3 100644 (file)
@@ -38,6 +38,7 @@ class RepliesrssAction extends Rss10Action
             $this->clientError(_('No such user.'));
             return false;
         } else {
+            $this->notices = $this->getNotices($this->limit);
             return true;
         }
     }
index fa6d588cdf4358f7c2f99f37853bb10b7e3de8b7..e6f69709247c9e68dc0a47e37052d8651eb1951c 100644 (file)
@@ -25,7 +25,6 @@ require_once(INSTALLDIR.'/lib/rssaction.php');
 
 class UserrssAction extends Rss10Action
 {
-    var $user = null;
     var $tag  = null;
 
     function prepare($args)
@@ -39,6 +38,7 @@ class UserrssAction extends Rss10Action
             $this->clientError(_('No such user.'));
             return false;
         } else {
+            $this->notices = $this->getNotices($this->limit);
             return true;
         }
     }
@@ -64,10 +64,10 @@ class UserrssAction extends Rss10Action
 
     function getNotices($limit=0)
     {
-
         $user = $this->user;
-
+        
         if (is_null($user)) {
+            common_debug('null user');
             return null;
         }
 
@@ -75,6 +75,7 @@ class UserrssAction extends Rss10Action
 
         $notices = array();
         while ($notice->fetch()) {
+            common_debug("notice");
             $notices[] = clone($notice);
         }
 
index dd0f1005af3ce4eea0433fd38a69521b6223c66e..faf6bec7dec4618d8ebc4888c4e55353f8aff99a 100644 (file)
@@ -78,25 +78,12 @@ class Rss10Action extends Action
     function prepare($args)
     {
         parent::prepare($args);
+
         $this->limit = (int) $this->trimmed('limit');
+
         if ($this->limit == 0) {
             $this->limit = DEFAULT_RSS_LIMIT;
         }
-        return true;
-    }
-
-    /**
-     * Handle a request
-     *
-     * @param array $args Arguments from $_REQUEST
-     *
-     * @return void
-     */
-
-    function handle($args)
-    {
-        // Parent handling, including cache check
-        parent::handle($args);
 
         if (common_config('site', 'private')) {
             if (!isset($_SERVER['PHP_AUTH_USER'])) {
@@ -122,8 +109,21 @@ class Rss10Action extends Action
             }
         }
 
-        // Get the list of notices
-        $this->notices = $this->getNotices($this->limit);
+        return true;
+    }
+
+    /**
+     * Handle a request
+     *
+     * @param array $args Arguments from $_REQUEST
+     *
+     * @return void
+     */
+
+    function handle($args)
+    {
+        // Parent handling, including cache check
+        parent::handle($args);
         $this->showRss();
     }
 
@@ -140,7 +140,7 @@ class Rss10Action extends Action
     }
 
     /**
-     * Get the notices to output in this stream
+     * Get the notices to output in this stream.
      *
      * @return array an array of Notice objects sorted in reverse chron
      */