X-Git-Url: https://git.heureux-cyclage.org/?a=blobdiff_plain;f=includes%2Fresourceloader%2FResourceLoaderContext.php;h=67de1921b200548ec08ff061f8c29ac921123e5c;hb=7545ee16c49550b2b804baa37b283a075b59bfe9;hp=3ceb915d2768f17167aa77db71ff623a1096eb6f;hpb=925c20a9ca669c67cc44f4468d0e0f3b33b94213;p=lhc%2Fweb%2Fwiklou.git diff --git a/includes/resourceloader/ResourceLoaderContext.php b/includes/resourceloader/ResourceLoaderContext.php index 3ceb915d27..67de1921b2 100644 --- a/includes/resourceloader/ResourceLoaderContext.php +++ b/includes/resourceloader/ResourceLoaderContext.php @@ -74,7 +74,7 @@ class ResourceLoaderContext implements MessageLocalizer { $this->user = $request->getRawVal( 'user' ); $this->debug = $request->getFuzzyBool( 'debug', - $resourceLoader->getConfig()->get( 'ResourceLoaderDebug' ) + $this->getConfig()->get( 'ResourceLoaderDebug' ) ); $this->only = $request->getRawVal( 'only', null ); $this->version = $request->getRawVal( 'version', null ); @@ -89,7 +89,7 @@ class ResourceLoaderContext implements MessageLocalizer { $skinnames = Skin::getSkinNames(); // If no skin is specified, or we don't recognize the skin, use the default skin if ( !$this->skin || !isset( $skinnames[$this->skin] ) ) { - $this->skin = $resourceLoader->getConfig()->get( 'DefaultSkin' ); + $this->skin = $this->getConfig()->get( 'DefaultSkin' ); } } @@ -133,9 +133,19 @@ class ResourceLoaderContext implements MessageLocalizer { /** * Return a dummy ResourceLoaderContext object suitable for passing into * things that don't "really" need a context. + * + * Use cases: + * - Creating html5shiv script tag in OutputPage. + * - Unit tests (deprecated, create empty instance directly or use RLTestCase). + * * @return ResourceLoaderContext */ public static function newDummyContext() { + // This currently creates a non-empty instance of ResourceLoader (all modules registered), + // but that's probably not needed. So once that moves into ServiceWiring, this'll + // become more like the EmptyResourceLoader class we have in PHPUnit tests, which + // is what this should've had originally. If this turns out to be untrue, change to: + // `MediaWikiServices::getInstance()->getResourceLoader()` instead. return new self( new ResourceLoader( MediaWikiServices::getInstance()->getMainConfig(), LoggerFactory::getInstance( 'resourceloader' ) @@ -149,6 +159,13 @@ class ResourceLoaderContext implements MessageLocalizer { return $this->resourceLoader; } + /** + * @return Config + */ + public function getConfig() { + return $this->getResourceLoader()->getConfig(); + } + /** * @return WebRequest */ @@ -181,7 +198,7 @@ class ResourceLoaderContext implements MessageLocalizer { $lang = $this->getRequest()->getRawVal( 'lang', '' ); // Stricter version of RequestContext::sanitizeLangCode() if ( !Language::isValidBuiltInCode( $lang ) ) { - $lang = $this->getResourceLoader()->getConfig()->get( 'LanguageCode' ); + $lang = $this->getConfig()->get( 'LanguageCode' ); } $this->language = $lang; }