X-Git-Url: http://git.heureux-cyclage.org/?a=blobdiff_plain;f=index.php;h=30add938e09456752104fc62c60480b195e66649;hb=5c7e9d65512c2cefb84f9c6704458256e2227110;hp=2a36bcaaeadf3550bc9496b81804c68d1352d750;hpb=ae035e1d2733624706f244c4a19ebaa99d4545e8;p=lhc%2Fweb%2Fwiklou.git
diff --git a/index.php b/index.php
index 2a36bcaaea..30add938e0 100644
--- a/index.php
+++ b/index.php
@@ -1,111 +1,123 @@
$GLOBALS overwrite vulnerability');
-}
-
-# Valid web server entry point, enable includes.
-# Please don't move this line to includes/Defines.php. This line essentially defines
-# a valid entry point. If you put it in includes/Defines.php, then any script that includes
-# it becomes an entry point, thereby defeating its purpose.
-define( 'MEDIAWIKI', true );
-require_once( './includes/Defines.php' );
-
-if( !file_exists( 'LocalSettings.php' ) ) {
- $IP = ".";
- require_once( 'includes/DefaultSettings.php' ); # used for printing the version
-?>
-
-
-
- MediaWiki
-
-
-
-
-
-
- MediaWiki
-
- config/LocalSettings.php to the parent directory." );
- } else {
- echo( "Please
setup the wiki first." );
- }
- ?>
-
-
-
-
-getVal( 'maxlag' );
+if( !is_null( $maxLag ) && !$mediaWiki->checkMaxLag( $maxLag ) ) {
+ exit;
+}
+
# Query string fields
$action = $wgRequest->getVal( 'action', 'view' );
$title = $wgRequest->getVal( 'title' );
-$wgTitle = $mediaWiki->checkInitialQueries( $title,$action,$wgOut, $wgRequest, $wgContLang );
-if ($wgTitle == NULL) {
+# Set title from request parameters
+$wgTitle = $mediaWiki->checkInitialQueries( $title, $action );
+if( $wgTitle === null ) {
unset( $wgTitle );
}
wfProfileOut( 'main-misc-setup' );
-# Setting global variables in mediaWiki
-$mediaWiki->setVal( "Server", $wgServer );
-$mediaWiki->setVal( "DisableInternalSearch", $wgDisableInternalSearch );
-$mediaWiki->setVal( "action", $action );
-$mediaWiki->setVal( "SquidMaxage", $wgSquidMaxage );
-$mediaWiki->setVal( "EnableDublinCoreRdf", $wgEnableDublinCoreRdf );
-$mediaWiki->setVal( "EnableCreativeCommonsRdf", $wgEnableCreativeCommonsRdf );
-$mediaWiki->setVal( "CommandLineMode", $wgCommandLineMode );
-$mediaWiki->setVal( "UseExternalEditor", $wgUseExternalEditor );
-$mediaWiki->setVal( "DisabledActions", $wgDisabledActions );
+#
+# Send Ajax requests to the Ajax dispatcher.
+#
+if( $wgUseAjax && $action == 'ajax' ) {
+ require_once( $IP . '/includes/AjaxDispatcher.php' );
+ $dispatcher = new AjaxDispatcher();
+ $dispatcher->performAction();
+ $mediaWiki->restInPeace();
+ exit;
+}
-$wgArticle = $mediaWiki->initialize ( $wgTitle, $wgOut, $wgUser, $wgRequest );
-$mediaWiki->finalCleanup ( $wgDeferredUpdateList, $wgLoadBalancer, $wgOut );
+if( $wgUseFileCache && isset( $wgTitle ) ) {
+ wfProfileIn( 'main-try-filecache' );
+ // 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, $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 = MediaWiki::articleFromTitle( $wgTitle );
+ $wgArticle->viewUpdates();
+ # Tell $wgOut that output is taken care of
+ wfProfileOut( 'main-try-filecache' );
+ $mediaWiki->restInPeace();
+ exit;
+ }
+ }
+ wfProfileOut( 'main-try-filecache' );
+}
+
+# Setting global variables in mediaWiki
+$mediaWiki->setVal( 'action', $action );
+$mediaWiki->setVal( 'CommandLineMode', $wgCommandLineMode );
+$mediaWiki->setVal( 'DisabledActions', $wgDisabledActions );
+$mediaWiki->setVal( 'DisableHardRedirects', $wgDisableHardRedirects );
+$mediaWiki->setVal( 'DisableInternalSearch', $wgDisableInternalSearch );
+$mediaWiki->setVal( 'EnableCreativeCommonsRdf', $wgEnableCreativeCommonsRdf );
+$mediaWiki->setVal( 'EnableDublinCoreRdf', $wgEnableDublinCoreRdf );
+$mediaWiki->setVal( 'JobRunRate', $wgJobRunRate );
+$mediaWiki->setVal( 'Server', $wgServer );
+$mediaWiki->setVal( 'SquidMaxage', $wgSquidMaxage );
+$mediaWiki->setVal( 'UseExternalEditor', $wgUseExternalEditor );
+$mediaWiki->setVal( 'UsePathInfo', $wgUsePathInfo );
+
+$mediaWiki->performRequestForTitle( $wgTitle, $wgArticle, $wgOut, $wgUser, $wgRequest );
+$mediaWiki->finalCleanup( $wgDeferredUpdateList, $wgOut );
# Not sure when $wgPostCommitUpdateList gets set, so I keep this separate from finalCleanup
$mediaWiki->doUpdates( $wgPostCommitUpdateList );
-$mediaWiki->restInPeace( $wgLoadBalancer );
-?>
+$mediaWiki->restInPeace();
+