Merge "resourceloader: Set value for getStoreKey in server-side"
authorjenkins-bot <jenkins-bot@gerrit.wikimedia.org>
Thu, 4 Jul 2019 19:25:12 +0000 (19:25 +0000)
committerGerrit Code Review <gerrit@wikimedia.org>
Thu, 4 Jul 2019 19:25:12 +0000 (19:25 +0000)
includes/resourceloader/ResourceLoaderStartUpModule.php
resources/src/startup/mediawiki.js

index 41e66ef..7880f6f 100644 (file)
@@ -366,6 +366,16 @@ class ResourceLoaderStartUpModule extends ResourceLoaderModule {
                return $baseModules;
        }
 
+       /**
+        * Get the localStorage key for the entire module store. The key references
+        * $wgDBname to prevent clashes between wikis under the same web domain.
+        *
+        * @return string localStorage item key for JavaScript
+        */
+       private function getStoreKey() {
+               return 'MediaWikiModuleStore:' . $this->getConfig()->get( 'DBname' );
+       }
+
        /**
         * Get the key on which the JavaScript module cache (mw.loader.store) will vary.
         *
@@ -412,6 +422,7 @@ class ResourceLoaderStartUpModule extends ResourceLoaderModule {
                        '$VARS.maxQueryLength' => ResourceLoader::encodeJsonForScript(
                                $conf->get( 'ResourceLoaderMaxQueryLength' )
                        ),
+                       '$VARS.storeKey' => ResourceLoader::encodeJsonForScript( $this->getStoreKey() ),
                        '$VARS.storeVary' => ResourceLoader::encodeJsonForScript( $this->getStoreVary( $context ) ),
                ];
                $profilerStubs = [
index e14103a..dbb32e5 100644 (file)
                                         * @return {string} localStorage item key
                                         */
                                        getStoreKey: function () {
-                                               return 'MediaWikiModuleStore:' + mw.config.get( 'wgDBname' );
+                                               return $VARS.storeKey;
                                        },
 
                                        /**