Send cache-control headers with feeds, this makes 304 responses possible
authorBrion Vibber <brion@users.mediawiki.org>
Sat, 20 Mar 2004 02:35:08 +0000 (02:35 +0000)
committerBrion Vibber <brion@users.mediawiki.org>
Sat, 20 Mar 2004 02:35:08 +0000 (02:35 +0000)
includes/Feed.php
includes/QueryPage.php
includes/SpecialRecentchanges.php

index e7539fc..590d9ca 100644 (file)
@@ -88,9 +88,13 @@ class RSSFeed extends ChannelFeed {
        }
        
        function outHeader() {
-               global $wgVersion;
+               global $wgVersion, $wgOut;
                
+               # We take over from $wgOut, excepting its cache header info
+               $wgOut->disable();
                header( "Content-type: application/xml; charset=UTF-8" );
+               $wgOut->sendCacheControl();
+               
                print '<' . '?xml version="1.0" encoding="utf-8"?' . ">\n";
                ?><rss version="2.0">
        <channel>
index 93a13bf..6ba0339 100644 (file)
@@ -94,8 +94,6 @@ class QueryPage {
                global $wgFeedClasses;
                global $wgOut, $wgLanguageCode, $wgLang;
                if( $class == "rss" ) {
-                       $wgOut->disable();
-                       
                        $feed = new RSSFeed(
                                $this->feedTitle(),
                                $this->feedDesc(),
index 46a5707..68e0db6 100644 (file)
@@ -126,8 +126,6 @@ function wfSpecialRecentchanges( $par )
        $wgOut->addHTML( "{$note}\n" );
 
        if( $feeding ) {
-               $wgOut->disable();
-               
                $feed = new RSSFeed(
                        $wgSitename . " - " . wfMsg( "recentchanges" ) . " [" . $wgLanguageCode . "]",
                        htmlspecialchars( wfMsg( "recentchangestext" ) ),