X-Git-Url: https://git.heureux-cyclage.org/?a=blobdiff_plain;ds=sidebyside;f=includes%2Fresourceloader%2FResourceLoaderClientHtml.php;h=71961e27bebbca86a57326126264b221b1e90488;hb=1791c928939f906627b9fb86c57ff8d9d626cbdb;hp=bf03e49ad59accb21bbcbf68a176aedcceddd7ef;hpb=2aed14b6867314ef9f08d09cc2dc502f7dddb050;p=lhc%2Fweb%2Fwiklou.git diff --git a/includes/resourceloader/ResourceLoaderClientHtml.php b/includes/resourceloader/ResourceLoaderClientHtml.php index bf03e49ad5..71961e27be 100644 --- a/includes/resourceloader/ResourceLoaderClientHtml.php +++ b/includes/resourceloader/ResourceLoaderClientHtml.php @@ -213,7 +213,7 @@ class ResourceLoaderClientHtml { // Load from load.php?only=styles via $data['styles'][] = $name; } - $deprecation = $module->getDeprecationInformation(); + $deprecation = $module->getDeprecationInformation( $context ); if ( $deprecation ) { $data['styleDeprecations'][] = $deprecation; } @@ -254,14 +254,14 @@ class ResourceLoaderClientHtml { // See also startup/startup.js. $nojsClass = $nojsClass ?? $this->getDocumentAttributes()['class']; $jsClass = preg_replace( '/(^|\s)client-nojs(\s|$)/', '$1client-js$2', $nojsClass ); - $jsClassJson = ResourceLoader::encodeJsonForScript( $jsClass ); + $jsClassJson = $this->context->encodeJson( $jsClass ); $script = <<config ) { - $confJson = ResourceLoader::encodeJsonForScript( $this->config ); + $confJson = $this->context->encodeJson( $this->config ); $script .= <<exemptStates, $data['states'] ); if ( $states ) { - $stateJson = ResourceLoader::encodeJsonForScript( $states ); + $stateJson = $this->context->encodeJson( $states ); $script .= <<context->encodeJson( $data['general'] ); $script .= <<setModules( array_keys( $moduleSet ) ); + $moduleSetNames = array_keys( $moduleSet ); + $context->setModules( $moduleSetNames ); if ( $embed ) { // Decide whether to use style or script element if ( $only == ResourceLoaderModule::TYPE_STYLES ) { @@ -456,10 +457,10 @@ JAVASCRIPT; // This should NOT be done for the site group (T29564) because anons get that too // and we shouldn't be putting timestamps in CDN-cached HTML if ( $group === 'user' ) { - // Must setModules() before makeVersionQuery() - $context->setVersion( $rl->makeVersionQuery( $context ) ); + $context->setVersion( $rl->makeVersionQuery( $context, $moduleSetNames ) ); } + // Must setModules() before createLoaderURL() $url = $rl->createLoaderURL( $source, $context, $extraQuery ); // Decide whether to use 'style' or 'script' element @@ -479,7 +480,7 @@ JAVASCRIPT; ] ); } else { $chunk = ResourceLoader::makeInlineScript( - 'mw.loader.load(' . ResourceLoader::encodeJsonForScript( $url ) . ');', + 'mw.loader.load(' . $mainContext->encodeJson( $url ) . ');', $nonce ); }