From 0603c609e30a7b28f8aeb48004d8530d26723020 Mon Sep 17 00:00:00 2001 From: Tim Starling Date: Wed, 2 Sep 2009 07:19:35 +0000 Subject: [PATCH] Fixes for r51204: removed useless $wgVariant and StubUserVariant. In Skin::makeGlobalVariablesScript(), use $wgContLang->getPreferredVariant() instead, which is the variant used in the relevant server-side code. --- includes/Setup.php | 1 - includes/Skin.php | 7 +++--- includes/StubObject.php | 47 ----------------------------------------- 3 files changed, 3 insertions(+), 52 deletions(-) diff --git a/includes/Setup.php b/includes/Setup.php index d57cba19df..8db15decd0 100644 --- a/includes/Setup.php +++ b/includes/Setup.php @@ -270,7 +270,6 @@ $wgRequest->interpolateTitle(); $wgUser = new StubUser; $wgLang = new StubUserLang; -$wgVariant = new StubUserVariant; $wgOut = new StubObject( 'wgOut', 'OutputPage' ); $wgParser = new StubObject( 'wgParser', $wgParserConf['class'], array( $wgParserConf ) ); diff --git a/includes/Skin.php b/includes/Skin.php index cfb72cf72a..9118db939c 100644 --- a/includes/Skin.php +++ b/includes/Skin.php @@ -356,7 +356,7 @@ class Skin extends Linker { $skinName = $skinName['skinname']; } global $wgScript, $wgTitle, $wgStylePath, $wgUser; - global $wgArticlePath, $wgScriptPath, $wgServer, $wgContLang, $wgLang, $wgVariant; + global $wgArticlePath, $wgScriptPath, $wgServer, $wgContLang, $wgLang; global $wgCanonicalNamespaceNames, $wgOut, $wgArticle; global $wgBreakFrames, $wgRequest, $wgVariantArticlePath, $wgActionPaths; global $wgUseAjax, $wgAjaxWatch; @@ -399,7 +399,6 @@ class Skin extends Linker { 'wgIsArticle' => $wgOut->isArticle(), 'wgUserName' => $wgUser->isAnon() ? NULL : $wgUser->getName(), 'wgUserGroups' => $wgUser->isAnon() ? NULL : $wgUser->getEffectiveGroups(), - 'wgUserVariant' => $wgVariant->getCode(), 'wgUserLanguage' => $wgLang->getCode(), 'wgContentLanguage' => $wgContLang->getCode(), 'wgBreakFrames' => $wgBreakFrames, @@ -411,8 +410,8 @@ class Skin extends Linker { 'wgDigitTransformTable' => $compactDigitTransTable, 'wgMainPageTitle' => $mainPage ? $mainPage->getPrefixedText() : null, ); - if ( !( $wgContLang->hasVariants() ) ) { - unset( $vars['wgUserVariant'] ); + if ( $wgContLang->hasVariants() ) { + $vars['wgUserVariant'] = $wgContLang->getPreferredVariant(); } //if on upload page output the extension list & js_upload diff --git a/includes/StubObject.php b/includes/StubObject.php index e6cbd7856d..c8731fffdf 100644 --- a/includes/StubObject.php +++ b/includes/StubObject.php @@ -166,53 +166,6 @@ class StubUserLang extends StubObject { } } -/** - * Stub object for the user variant. It depends of the user preferences and - * "variant" parameter that can be passed to index.php. This object have to be - * in $wgVariant global. - */ -class StubUserVariant extends StubObject { - - function __construct() { - parent::__construct( 'wgVariant' ); - } - - function __call( $name, $args ) { - return $this->_call( $name, $args ); - } - - function _newObject() { - global $wgContLanguageCode, $wgRequest, $wgUser, $wgContLang; - - if( $wgContLang->hasVariants() ) { - $code = $wgRequest->getVal( 'variant', $wgUser->getOption( 'variant' ) ); - } else { - $code = $wgRequest->getVal( 'variant', $wgUser->getOption( 'language' ) ); - } - - // if variant is explicitely selected, use it instead the one from wgUser - // see bug #7605 - if( $wgContLang->hasVariants() && in_array($code, $wgContLang->getVariants()) ){ - $variant = $wgContLang->getPreferredVariant(); - if( $variant != $wgContLanguageCode ) - $code = $variant; - } - - # Validate $code - if( empty( $code ) || !preg_match( '/^[a-z-]+$/', $code ) || ( $code === 'qqq' ) ) { - wfDebug( "Invalid user variant code\n" ); - $code = $wgContLanguageCode; - } - - if( $code === $wgContLanguageCode ) { - return $wgContLang; - } else { - $obj = Language::factory( $code ); - return $obj; - } - } -} - /** * Stub object for the user. The initialisation of the will depend of * $wgCommandLineMode. If it's true, it will be an anonymous user and if it's -- 2.20.1