(bug 17399) CSS class for "(top)" on Special:Contributions. Patch by Umherirrender.
[lhc/web/wiklou.git] / index.php
index 22e74e9..1176e8c 100644 (file)
--- a/index.php
+++ b/index.php
@@ -13,7 +13,7 @@
  *
  * ----------
  *
- * Copyright (C) 2001-2008 Magnus Manske, Brion Vibber, Lee Daniel Crocker,
+ * Copyright (C) 2001-2009 Magnus Manske, Brion Vibber, Lee Daniel Crocker,
  * Tim Starling, Erik Möller, Gabriel Wicke, Ævar Arnfjörð Bjarmason,
  * Niklas Laxström, Domas Mituzas, Rob Church, Yuri Astrakhan, Aryeh Gregor,
  * Aaron Schulz and others.
@@ -32,6 +32,8 @@
  * with this program; if not, write to the Free Software Foundation, Inc.,
  * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
  * http://www.gnu.org/copyleft/gpl.html
+ *
+ * @file
  */
 
 
@@ -47,7 +49,7 @@ wfProfileIn( 'main-misc-setup' );
 OutputPage::setEncodings(); # Not really used yet
 
 $maxLag = $wgRequest->getVal( 'maxlag' );
-if( !is_null($maxLag) && !$mediaWiki->checkMaxLag( $maxLag ) ) {
+if( !is_null( $maxLag ) && !$mediaWiki->checkMaxLag( $maxLag ) ) {
        exit;
 }
 
@@ -69,25 +71,27 @@ if( $wgUseAjax && $action == 'ajax' ) {
        require_once( $IP . '/includes/AjaxDispatcher.php' );
        $dispatcher = new AjaxDispatcher();
        $dispatcher->performAction();
+       wfGetLBFactory()->commitMasterChanges();
        $mediaWiki->restInPeace();
        exit;
 }
 
-if( $wgUseFileCache && isset($wgTitle) ) {
+if( $wgUseFileCache && isset( $wgTitle ) ) {
        wfProfileIn( 'main-try-filecache' );
-       if( HTMLFileCache::useFileCache() ) {
+       // Raw pages should handle cache control on their own,
+       // even when using file cache. This reduces hits from clients.
+       if( $action != 'raw' && HTMLFileCache::useFileCache() ) {
                /* Try low-level file cache hit */
-               $cache = new HTMLFileCache( $wgTitle );
+               $cache = new HTMLFileCache( $wgTitle, $action );
                if( $cache->isFileCacheGood( /* Assume up to date */ ) ) {
                        /* Check incoming headers to see if client has this cached */
                        if( !$wgOut->checkLastModified( $cache->fileCacheTime() ) ) {
                                $cache->loadFromFileCache();
-                               # Do any stats increment/watchlist stuff
-                               $wgArticle = self::articleFromTitle( $wgTitle );
-                               $wgArticle->viewUpdates();
                        }
+                       # Do any stats increment/watchlist stuff
+                       $wgArticle = MediaWiki::articleFromTitle( $wgTitle );
+                       $wgArticle->viewUpdates();
                        # Tell $wgOut that output is taken care of
-                       $wgOut->disable();
                        wfProfileOut( 'main-try-filecache' );
                        $mediaWiki->restInPeace();
                        exit;