diff options
author | Luke Shumaker <lukeshu@sbcglobal.net> | 2016-05-01 15:12:12 -0400 |
---|---|---|
committer | Luke Shumaker <lukeshu@sbcglobal.net> | 2016-05-01 15:12:12 -0400 |
commit | c9aa36da061816dee256a979c2ff8d2ee41824d9 (patch) | |
tree | 29f7002b80ee984b488bd047dbbd80b36bf892e9 /includes/resourceloader/ResourceLoaderContext.php | |
parent | b4274e0e33eafb5e9ead9d949ebf031a9fb8363b (diff) | |
parent | d1ba966140d7a60cd5ae4e8667ceb27c1a138592 (diff) |
Merge branch 'archwiki'
# Conflicts:
# skins/ArchLinux.php
# skins/ArchLinux/archlogo.gif
Diffstat (limited to 'includes/resourceloader/ResourceLoaderContext.php')
-rw-r--r-- | includes/resourceloader/ResourceLoaderContext.php | 49 |
1 files changed, 23 insertions, 26 deletions
diff --git a/includes/resourceloader/ResourceLoaderContext.php b/includes/resourceloader/ResourceLoaderContext.php index 22ff6a7e..7af7b898 100644 --- a/includes/resourceloader/ResourceLoaderContext.php +++ b/includes/resourceloader/ResourceLoaderContext.php @@ -27,7 +27,6 @@ * of a specific loader request */ class ResourceLoaderContext { - /* Protected Members */ protected $resourceLoader; @@ -46,12 +45,10 @@ class ResourceLoaderContext { /* Methods */ /** - * @param $resourceLoader ResourceLoader - * @param $request WebRequest + * @param ResourceLoader $resourceLoader + * @param WebRequest $request */ - public function __construct( $resourceLoader, WebRequest $request ) { - global $wgDefaultSkin, $wgResourceLoaderDebug; - + public function __construct( ResourceLoader $resourceLoader, WebRequest $request ) { $this->resourceLoader = $resourceLoader; $this->request = $request; @@ -62,7 +59,9 @@ class ResourceLoaderContext { // Various parameters $this->skin = $request->getVal( 'skin' ); $this->user = $request->getVal( 'user' ); - $this->debug = $request->getFuzzyBool( 'debug', $wgResourceLoaderDebug ); + $this->debug = $request->getFuzzyBool( + 'debug', $resourceLoader->getConfig()->get( 'ResourceLoaderDebug' ) + ); $this->only = $request->getVal( 'only' ); $this->version = $request->getVal( 'version' ); $this->raw = $request->getFuzzyBool( 'raw' ); @@ -70,7 +69,7 @@ class ResourceLoaderContext { $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 = $wgDefaultSkin; + $this->skin = $resourceLoader->getConfig()->get( 'DefaultSkin' ); } } @@ -79,12 +78,10 @@ class ResourceLoaderContext { * an array of module names like array( 'jquery.foo', 'jquery.bar', * 'jquery.ui.baz', 'jquery.ui.quux' ) * @param string $modules Packed module name list - * @return array of module names + * @return array Array of module names */ public static function expandModuleNames( $modules ) { $retval = array(); - // For backwards compatibility with an earlier hack, replace ! with . - $modules = str_replace( '!', '.', $modules ); $exploded = explode( '|', $modules ); foreach ( $exploded as $group ) { if ( strpos( $group, ',' ) === false ) { @@ -111,11 +108,14 @@ class ResourceLoaderContext { } /** - * Return a dummy ResourceLoaderContext object suitable for passing into things that don't "really" need a context + * Return a dummy ResourceLoaderContext object suitable for passing into + * things that don't "really" need a context. * @return ResourceLoaderContext */ public static function newDummyContext() { - return new self( null, new FauxRequest( array() ) ); + return new self( new ResourceLoader( + ConfigFactory::getDefaultInstance()->makeConfig( 'main' ) + ), new FauxRequest( array() ) ); } /** @@ -144,11 +144,8 @@ class ResourceLoaderContext { */ public function getLanguage() { if ( $this->language === null ) { - global $wgLang; - $this->language = $this->request->getVal( 'lang' ); - if ( !$this->language ) { - $this->language = $wgLang->getCode(); - } + // Must be a valid language code after this point (bug 62849) + $this->language = RequestContext::sanitizeLangCode( $this->request->getVal( 'lang' ) ); } return $this->language; } @@ -160,7 +157,7 @@ class ResourceLoaderContext { if ( $this->direction === null ) { $this->direction = $this->request->getVal( 'dir' ); if ( !$this->direction ) { - # directionality based on user language (see bug 6100) + // Determine directionality based on user language (bug 6100) $this->direction = Language::factory( $this->getLanguage() )->getDir(); } } @@ -189,14 +186,14 @@ class ResourceLoaderContext { } /** - * @return String|null + * @return string|null */ public function getOnly() { return $this->only; } /** - * @return String|null + * @return string|null */ public function getVersion() { return $this->version; @@ -213,21 +210,21 @@ class ResourceLoaderContext { * @return bool */ public function shouldIncludeScripts() { - return is_null( $this->only ) || $this->only === 'scripts'; + return is_null( $this->getOnly() ) || $this->getOnly() === 'scripts'; } /** * @return bool */ public function shouldIncludeStyles() { - return is_null( $this->only ) || $this->only === 'styles'; + return is_null( $this->getOnly() ) || $this->getOnly() === 'styles'; } /** * @return bool */ public function shouldIncludeMessages() { - return is_null( $this->only ) || $this->only === 'messages'; + return is_null( $this->getOnly() ) || $this->getOnly() === 'messages'; } /** @@ -236,8 +233,8 @@ class ResourceLoaderContext { public function getHash() { if ( !isset( $this->hash ) ) { $this->hash = implode( '|', array( - $this->getLanguage(), $this->getDirection(), $this->skin, $this->user, - $this->debug, $this->only, $this->version + $this->getLanguage(), $this->getDirection(), $this->getSkin(), $this->getUser(), + $this->getDebug(), $this->getOnly(), $this->getVersion() ) ); } return $this->hash; |