From bac0e0160f4d94fd783fcf6fb2e87b4af43ff2b0 Mon Sep 17 00:00:00 2001 From: Fomafix Date: Tue, 2 Jul 2019 19:06:49 +0200 Subject: [PATCH] Remove JavaScript global variable wgLoadScript Use mw.util.wikiScript( 'load' ) instead of mw.config.get( 'wgLoadScript' ) The module 'mediawiki.util' now gets the value from a private config variable. Change-Id: Iae4f4754f40999ba9d7c7161e9a37820c4b5931c --- RELEASE-NOTES-1.34 | 2 ++ includes/resourceloader/ResourceLoaderStartUpModule.php | 1 - resources/Resources.php | 5 ++++- resources/src/mediawiki.util.js | 2 +- .../suites/resources/mediawiki/mediawiki.util.test.js | 9 +++++---- 5 files changed, 12 insertions(+), 7 deletions(-) diff --git a/RELEASE-NOTES-1.34 b/RELEASE-NOTES-1.34 index fdf26166dd..83f54fe19b 100644 --- a/RELEASE-NOTES-1.34 +++ b/RELEASE-NOTES-1.34 @@ -258,6 +258,8 @@ because of Phabricator reports. all deprecated in 1.25 and ignored, have been removed. * The API module method getDescriptionMessage(), deprecated in 1.30, has been removed. +* The JavaScript global variable wgLoadScript has been removed. Use + mw.util.wikiScript( 'load' ) instead. * … === Deprecations in 1.34 === diff --git a/includes/resourceloader/ResourceLoaderStartUpModule.php b/includes/resourceloader/ResourceLoaderStartUpModule.php index 2959b22be0..f0de411f84 100644 --- a/includes/resourceloader/ResourceLoaderStartUpModule.php +++ b/includes/resourceloader/ResourceLoaderStartUpModule.php @@ -70,7 +70,6 @@ class ResourceLoaderStartUpModule extends ResourceLoaderModule { // Build list of variables $skin = $context->getSkin(); $vars = [ - 'wgLoadScript' => $conf->get( 'LoadScript' ), 'debug' => $context->getDebug(), 'skin' => $skin, 'stylepath' => $conf->get( 'StylePath' ), diff --git a/resources/Resources.php b/resources/Resources.php index 92b4fd4492..8d4a18b434 100644 --- a/resources/Resources.php +++ b/resources/Resources.php @@ -1262,7 +1262,10 @@ return [ 'remoteBasePath' => "$wgResourceBasePath/resources/src", 'packageFiles' => [ 'mediawiki.util.js', - [ 'name' => 'config.json', 'config' => [ 'FragmentMode' ] ], + [ 'name' => 'config.json', 'config' => [ + 'FragmentMode', + 'LoadScript', + ] ], ], 'dependencies' => [ 'jquery.accessKeyLabel', diff --git a/resources/src/mediawiki.util.js b/resources/src/mediawiki.util.js index 7cda45fb28..56bfc42668 100644 --- a/resources/src/mediawiki.util.js +++ b/resources/src/mediawiki.util.js @@ -188,7 +188,7 @@ if ( str === 'index' ) { return mw.config.get( 'wgScript' ); } else if ( str === 'load' ) { - return mw.config.get( 'wgLoadScript' ); + return config.LoadScript; } else { return mw.config.get( 'wgScriptPath' ) + '/' + str + '.php'; } diff --git a/tests/qunit/suites/resources/mediawiki/mediawiki.util.test.js b/tests/qunit/suites/resources/mediawiki/mediawiki.util.test.js index 01dea8e924..3679ed76f9 100644 --- a/tests/qunit/suites/resources/mediawiki/mediawiki.util.test.js +++ b/tests/qunit/suites/resources/mediawiki/mediawiki.util.test.js @@ -232,11 +232,12 @@ } ); QUnit.test( 'wikiScript', function ( assert ) { + mw.util.setOptionsForTest( { + LoadScript: '/w/l.php' + } ); mw.config.set( { // customized wgScript for T41103 wgScript: '/w/i.php', - // customized wgLoadScript for T41103 - wgLoadScript: '/w/l.php', wgScriptPath: '/w' } ); @@ -246,8 +247,8 @@ assert.strictEqual( util.wikiScript( 'index' ), mw.config.get( 'wgScript' ), 'wikiScript( index ) returns wgScript' ); - assert.strictEqual( util.wikiScript( 'load' ), mw.config.get( 'wgLoadScript' ), - 'wikiScript( load ) returns wgLoadScript' + assert.strictEqual( util.wikiScript( 'load' ), '/w/l.php', + 'wikiScript( load ) returns /w/l.php' ); assert.strictEqual( util.wikiScript( 'api' ), '/w/api.php', 'API path' ); } ); -- 2.20.1