wfProfileIn( $fname );
// Check to see if we are at the file scope
-if( !isset( $wgVersion ) ) {
+if ( !isset( $wgVersion ) ) {
echo "Error, Setup.php must be included from the file scope, after DefaultSettings.php\n";
die( 1 );
}
if( $wgArticlePath === false ) {
if( $wgUsePathInfo ) {
- $wgArticlePath = "$wgScript/$1";
+ $wgArticlePath = "$wgScript/$1";
} else {
- $wgArticlePath = "$wgScript?title=$1";
+ $wgArticlePath = "$wgScript?title=$1";
}
}
if( $wgReadOnlyFile === false ) $wgReadOnlyFile = "{$wgUploadDirectory}/lock_yBgMBwiR";
if( $wgFileCacheDirectory === false ) $wgFileCacheDirectory = "{$wgUploadDirectory}/cache";
-if( empty( $wgFileStore['deleted']['directory'] ) ) {
+if ( empty( $wgFileStore['deleted']['directory'] ) ) {
$wgFileStore['deleted']['directory'] = "{$wgUploadDirectory}/deleted";
}
/**
- * Unconditional protection for NS_MEDIAWIKI since otherwise it's too easy for a
- * sysadmin to set $wgNamespaceProtection incorrectly and leave the wiki insecure.
+ * Unconditional protection for NS_MEDIAWIKI since otherwise it's too easy for a
+ * sysadmin to set $wgNamespaceProtection incorrectly and leave the wiki insecure.
*
- * Note that this is the definition of editinterface and it can be granted to
+ * Note that this is the definition of editinterface and it can be granted to
* all users if desired.
*/
$wgNamespaceProtection[NS_MEDIAWIKI] = 'editinterface';
/**
* Initialise $wgLocalFileRepo from backwards-compatible settings
*/
-if( !$wgLocalFileRepo ) {
+if ( !$wgLocalFileRepo ) {
$wgLocalFileRepo = array(
'class' => 'LocalRepo',
'name' => 'local',
/**
* Initialise shared repo from backwards-compatible settings
*/
-if( $wgUseSharedUploads ) {
- if( $wgSharedUploadDBname ) {
+if ( $wgUseSharedUploads ) {
+ if ( $wgSharedUploadDBname ) {
$wgForeignFileRepos[] = array(
'class' => 'ForeignDBRepo',
'name' => 'shared',
);
}
}
-require_once( "$IP/includes/AutoLoader.php" );
+if ( !class_exists( 'AutoLoader' ) ) {
+ require_once( "$IP/includes/AutoLoader.php" );
+}
wfProfileIn( $fname.'-exception' );
require_once( "$IP/includes/Exception.php" );
require_once( "$IP/includes/StubObject.php" );
wfProfileOut( $fname.'-includes' );
wfProfileIn( $fname.'-misc1' );
-
+# Raise the memory limit if it's too low
+wfMemoryLimit();
$wgIP = false; # Load on demand
# Can't stub this one, it sets up $_GET and $_REQUEST in its constructor
$wgRequest = new WebRequest;
# Useful debug output
-if( $wgCommandLineMode ) {
+if ( $wgCommandLineMode ) {
wfDebug( "\n\nStart command line script $self\n" );
-} elseif( function_exists( 'getallheaders' ) ) {
+} elseif ( function_exists( 'getallheaders' ) ) {
wfDebug( "\n\nStart request\n" );
wfDebug( $_SERVER['REQUEST_METHOD'] . ' ' . $_SERVER['REQUEST_URI'] . "\n" );
$headers = getallheaders();
}
}
-if( $wgSkipSkin ) {
+if ( $wgSkipSkin ) {
$wgSkipSkins[] = $wgSkipSkin;
}
$wgUseEnotif = $wgEnotifUserTalk || $wgEnotifWatchlist;
-if( $wgMetaNamespace === FALSE ) {
+if($wgMetaNamespace === FALSE) {
$wgMetaNamespace = str_replace( ' ', '_', $wgSitename );
}
# To determine the user language, use $wgLang->getCode()
$wgContLanguageCode = $wgLanguageCode;
+# Easy to forget to falsify $wgShowIPinHeader for static caches.
+# If file cache or squid cache is on, just disable this (DWIMD).
+if( $wgUseFileCache || $wgUseSquid ) $wgShowIPinHeader = false;
+
+# $wgAllowRealName and $wgAllowUserSkin were removed in 1.16
+# in favor of $wgHiddenPrefs, handle b/c here
+if( !$wgAllowRealName ) {
+ $wgHiddenPrefs[] = 'realname';
+}
+
+if( !$wgAllowUserSkin ) {
+ $wgHiddenPrefs[] = 'skin';
+}
+
wfProfileOut( $fname.'-misc1' );
wfProfileIn( $fname.'-memcached' );
if( !wfIniGetBool( 'session.auto_start' ) )
session_name( $wgSessionName ? $wgSessionName : $wgCookiePrefix . '_session' );
-if( !$wgCommandLineMode && ( $wgRequest->checkSessionCookie() || isset($_COOKIE[$wgCookiePrefix.'Token']) ) ) {
+if( !$wgCommandLineMode && ( $wgRequest->checkSessionCookie() || isset( $_COOKIE[$wgCookiePrefix.'Token'] ) ) ) {
wfIncrStats( 'request_with_session' );
wfSetupSession();
$wgSessionStarted = true;
$wgUser = new StubUser;
$wgLang = new StubUserLang;
+$wgVariant = new StubUserVariant;
$wgOut = new StubObject( 'wgOut', 'OutputPage' );
$wgParser = new StubObject( 'wgParser', $wgParserConf['class'], array( $wgParserConf ) );
# Entries can be added to this variable during the inclusion
# of the extension file. Skins can then perform any necessary initialisation.
#
-foreach( $wgSkinExtensionFunctions as $func ) {
+foreach ( $wgSkinExtensionFunctions as $func ) {
call_user_func( $func );
}
$wgDeferredUpdateList = array();
$wgPostCommitUpdateList = array();
-if( $wgAjaxWatch ) $wgAjaxExportList[] = 'wfAjaxWatch';
-if( $wgAjaxUploadDestCheck ) $wgAjaxExportList[] = 'UploadForm::ajaxGetExistsWarning';
+if ( $wgAjaxWatch ) $wgAjaxExportList[] = 'wfAjaxWatch';
+if ( $wgAjaxUploadDestCheck ) $wgAjaxExportList[] = 'UploadForm::ajaxGetExistsWarning';
if( $wgAjaxLicensePreview )
$wgAjaxExportList[] = 'UploadForm::ajaxGetLicensePreview';
wfProfileOut( $fname.'-misc2' );
wfProfileIn( $fname.'-extensions' );
+/*
+ * load the $wgExtensionMessagesFiles for the script loader
+ * this can't be done in a normal extension type way
+ * since the script-loader is an entry point
+ */
+$wgExtensionMessagesFiles['mwEmbed'] = "{$IP}/js2/mwEmbed/php/languages/mwEmbed.i18n.php";
+
# Extension setup functions for extensions other than skins
# Entries should be added to this variable during the inclusion
# of the extension file. This allows the extension to perform
# any necessary initialisation in the fully initialised environment
-foreach( $wgExtensionFunctions as $func ) {
- $profName = $fname.'-extensions-'.strval( $func );
+foreach ( $wgExtensionFunctions as $func ) {
+ # Allow closures in PHP 5.3+
+ if ( is_object( $func ) && $func instanceof Closure ) {
+ $profName = $fname.'-extensions-closure';
+ } elseif( is_array( $func ) ) {
+ if ( is_object( $func[0] ) )
+ $profName = $fname.'-extensions-'.get_class( $func[0] ).'::'.$func[1];
+ else
+ $profName = $fname.'-extensions-'.implode( '::', $func );
+ } else {
+ $profName = $fname.'-extensions-'.strval( $func );
+ }
+
wfProfileIn( $profName );
call_user_func( $func );
wfProfileOut( $profName );