From a88a09d98f3d145beb21ace0cef940ecaed9e3e3 Mon Sep 17 00:00:00 2001 From: umherirrender Date: Sat, 14 Apr 2012 12:41:49 +0200 Subject: [PATCH] fix the call of count( $module->getDependencies() ) in startup (bracket was wrong placed) And by the way: * store some result of getters in local variable and use it * Title::newMainPage always returns an object * rename a variable * fix intendation for mw.loader.register call in debug mode Change-Id: I083b4b61006493602b9345a822a96d538ef89f60 --- .../ResourceLoaderStartUpModule.php | 35 +++++++++---------- 1 file changed, 17 insertions(+), 18 deletions(-) diff --git a/includes/resourceloader/ResourceLoaderStartUpModule.php b/includes/resourceloader/ResourceLoaderStartUpModule.php index 5dbce4394b..3384631ab1 100644 --- a/includes/resourceloader/ResourceLoaderStartUpModule.php +++ b/includes/resourceloader/ResourceLoaderStartUpModule.php @@ -80,7 +80,7 @@ class ResourceLoaderStartUpModule extends ResourceLoaderModule { 'wgDefaultDateFormat' => $wgContLang->getDefaultDateFormat(), 'wgMonthNames' => $wgContLang->getMonthNamesArray(), 'wgMonthNamesShort' => $wgContLang->getMonthAbbreviationsArray(), - 'wgMainPageTitle' => $mainPage ? $mainPage->getPrefixedText() : null, + 'wgMainPageTitle' => $mainPage->getPrefixedText(), 'wgFormattedNamespaces' => $wgContLang->getFormattedNamespaces(), 'wgNamespaceIds' => $namespaceIds, 'wgSiteName' => $wgSitename, @@ -125,12 +125,12 @@ class ResourceLoaderStartUpModule extends ResourceLoaderModule { // Register modules foreach ( $resourceLoader->getModuleNames() as $name ) { $module = $resourceLoader->getModule( $name ); + $deps = $module->getDependencies(); + $group = $module->getGroup(); + $source = $module->getSource(); // Support module loader scripts $loader = $module->getLoaderScript(); if ( $loader !== false ) { - $deps = $module->getDependencies(); - $group = $module->getGroup(); - $source = $module->getSource(); $version = wfTimestamp( TS_ISO_8601_BASIC, $module->getModifiedTime( $context ) ); $out .= ResourceLoader::makeCustomLoaderScript( $name, $version, $deps, $group, $source, $loader ); @@ -143,26 +143,23 @@ class ResourceLoaderStartUpModule extends ResourceLoaderModule { $mtime = max( $moduleMtime, wfTimestamp( TS_UNIX, $wgCacheEpoch ) ); // Modules without dependencies, a group or a foreign source pass two arguments (name, timestamp) to // mw.loader.register() - if ( !count( $module->getDependencies() && $module->getGroup() === null && $module->getSource() === 'local' ) ) { + if ( !count( $deps ) && $group === null && $source === 'local' ) { $registrations[] = array( $name, $mtime ); } // Modules with dependencies but no group or foreign source pass three arguments // (name, timestamp, dependencies) to mw.loader.register() - elseif ( $module->getGroup() === null && $module->getSource() === 'local' ) { - $registrations[] = array( - $name, $mtime, $module->getDependencies() ); + elseif ( $group === null && $source === 'local' ) { + $registrations[] = array( $name, $mtime, $deps ); } // Modules with a group but no foreign source pass four arguments (name, timestamp, dependencies, group) // to mw.loader.register() - elseif ( $module->getSource() === 'local' ) { - $registrations[] = array( - $name, $mtime, $module->getDependencies(), $module->getGroup() ); + elseif ( $source === 'local' ) { + $registrations[] = array( $name, $mtime, $deps, $group ); } // Modules with a foreign source pass five arguments (name, timestamp, dependencies, group, source) // to mw.loader.register() else { - $registrations[] = array( - $name, $mtime, $module->getDependencies(), $module->getGroup(), $module->getSource() ); + $registrations[] = array( $name, $mtime, $deps, $group, $source ); } } } @@ -185,19 +182,20 @@ class ResourceLoaderStartUpModule extends ResourceLoaderModule { if ( $context->getOnly() === 'scripts' ) { // The core modules: - $modules = array( 'jquery', 'mediawiki' ); - wfRunHooks( 'ResourceLoaderGetStartupModules', array( &$modules ) ); + $moduleNames = array( 'jquery', 'mediawiki' ); + wfRunHooks( 'ResourceLoaderGetStartupModules', array( &$moduleNames ) ); // Get the latest version + $loader = $context->getResourceLoader(); $version = 0; - foreach ( $modules as $moduleName ) { + foreach ( $moduleNames as $moduleName ) { $version = max( $version, - $context->getResourceLoader()->getModule( $moduleName )->getModifiedTime( $context ) + $loader->getModule( $moduleName )->getModifiedTime( $context ) ); } // Build load query for StartupModules $query = array( - 'modules' => ResourceLoader::makePackedModulesString( $modules ), + 'modules' => ResourceLoader::makePackedModulesString( $moduleNames ), 'only' => 'scripts', 'lang' => $context->getLanguage(), 'skin' => $context->getSkin(), @@ -210,6 +208,7 @@ class ResourceLoaderStartUpModule extends ResourceLoaderModule { // Startup function $configuration = $this->getConfig( $context ); $registrations = self::getModuleRegistrations( $context ); + $registrations = str_replace( "\n", "\n\t", trim( $registrations ) ); // fix indentation $out .= "var startUp = function() {\n" . "\tmw.config = new " . Xml::encodeJsCall( 'mw.Map', array( $wgLegacyJavaScriptGlobals ) ) . "\n" . "\t$registrations\n" . -- 2.20.1