X-Git-Url: https://git.heureux-cyclage.org/?a=blobdiff_plain;f=includes%2Fresourceloader%2FResourceLoader.php;h=02e02bbdf92b7736264284363cd87d159c5fdb72;hb=1f46e0e6dc36a8f351f3b71a324f8ac0e6f19adc;hp=8ab7c0c2de81c6571d338b5c59105aa94b732ed6;hpb=962b690e92a258bd53100e976dc5575180696bf0;p=lhc%2Fweb%2Fwiklou.git diff --git a/includes/resourceloader/ResourceLoader.php b/includes/resourceloader/ResourceLoader.php index 8ab7c0c2de..02e02bbdf9 100644 --- a/includes/resourceloader/ResourceLoader.php +++ b/includes/resourceloader/ResourceLoader.php @@ -240,8 +240,6 @@ class ResourceLoader implements LoggerAwareInterface { * @param LoggerInterface|null $logger [optional] */ public function __construct( Config $config = null, LoggerInterface $logger = null ) { - global $IP; - $this->logger = $logger ?: new NullLogger(); if ( !$config ) { @@ -254,8 +252,9 @@ class ResourceLoader implements LoggerAwareInterface { // Add 'local' source first $this->addSource( 'local', $config->get( 'LoadScript' ) ); - // Register core modules - $this->register( include "$IP/resources/Resources.php" ); + // Special module that always exists + $this->register( 'startup', [ 'class' => ResourceLoaderStartUpModule::class ] ); + // Register extension modules $this->register( $config->get( 'ResourceModules' ) ); @@ -319,8 +318,6 @@ class ResourceLoader implements LoggerAwareInterface { * @throws MWException If a duplicate module registration is attempted * @throws MWException If a module name contains illegal characters (pipes or commas) * @throws MWException If something other than a ResourceLoaderModule is being registered - * @return bool False if there were any errors, in which case one or more modules were - * not registered */ public function register( $name, $info = null ) { $moduleSkinStyles = $this->config->get( 'ResourceModuleSkinStyles' ); @@ -1160,11 +1157,9 @@ MESSAGE; // Use a linebreak between module script and state script (T162719) $out = $this->ensureNewline( $out ) . $stateScript; } - } else { - if ( $states ) { - $this->errors[] = 'Problematic modules: ' - . self::encodeJsonForScript( $states ); - } + } elseif ( $states ) { + $this->errors[] = 'Problematic modules: ' + . self::encodeJsonForScript( $states ); } return $out; @@ -1177,7 +1172,7 @@ MESSAGE; */ private function ensureNewline( $str ) { $end = substr( $str, -1 ); - if ( $end === false || $end === "\n" ) { + if ( $end === false || $end === '' || $end === "\n" ) { return $str; } return $str . "\n"; @@ -1449,7 +1444,7 @@ MESSAGE; } } - array_walk( $modules, [ 'self', 'trimArray' ] ); + array_walk( $modules, [ self::class, 'trimArray' ] ); return Xml::encodeJsCall( 'mw.loader.register',