X-Git-Url: http://git.cyclocoop.org/%7B%24www_url%7Dadmin/password.php?a=blobdiff_plain;f=index.php;h=1aa59b70a7a9e49a47c09e18185b32b8c73c232a;hb=56a43b9f66545ab2886f443a9be4a9499e94b904;hp=883f42d3dab450a94cefce676ae241ee5db7c7f5;hpb=dcae8b53ae0facca05e61a742b6c3c0032b16d57;p=lhc%2Fweb%2Fwiklou.git
diff --git a/index.php b/index.php
index 883f42d3da..1aa59b70a7 100644
--- a/index.php
+++ b/index.php
@@ -1,124 +1,123 @@
$GLOBALS overwrite vulnerability');
-}
+# Initialise common code
+$preIP = dirname( __FILE__ );
+require_once( "$preIP/includes/WebStart.php" );
-# 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' );
-if ($wgRequest->getVal( 'printable' ) == 'yes') {
- $wgOut->setPrintable();
+$wgTitle = $mediaWiki->checkInitialQueries( $title, $action );
+if( $wgTitle === NULL ) {
+ unset( $wgTitle );
}
-if ( '' == $title && 'delete' != $action ) {
- $wgTitle = Title::newFromText( wfMsgForContent( 'mainpage' ) );
-} elseif ( $curid = $wgRequest->getInt( 'curid' ) ) {
- # URLs like this are generated by RC, because rc_title isn't always accurate
- $wgTitle = Title::newFromID( $curid );
-} else {
- $wgTitle = Title::newFromURL( $title );
- /* check variant links so that interwiki links don't have to worry about
- the possible different language variants
- */
- if( count($wgContLang->getVariants()) > 1 && !is_null($wgTitle) && $wgTitle->getArticleID() == 0 )
- $wgContLang->findVariantLink( $title, $wgTitle );
-
-}
wfProfileOut( 'main-misc-setup' );
+#
+# 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;
+}
-# Initialize MediaWiki base class
-require_once( "includes/Wiki.php" );
-$mediaWiki = new MediaWiki();
+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( "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 );
-
-$wgArticle = $mediaWiki->initialize ( $wgTitle, $wgOut, $wgUser, $wgRequest );
-$mediaWiki->finalCleanup ( $wgDeferredUpdateList , $wgLoadBalancer , $wgOut ) ;
+$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->initialize( $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();
+