From 5167cf4cadfadf35d269550bcf13e64fb050355c Mon Sep 17 00:00:00 2001 From: Alexandre Emsenhuber Date: Tue, 30 Sep 2008 17:15:11 +0000 Subject: [PATCH] Fix for r41430: wfMsgExt() now accepts a Language object in the language key of $options --- includes/GlobalFunctions.php | 13 ++++--------- languages/Language.php | 16 +++------------- 2 files changed, 7 insertions(+), 22 deletions(-) diff --git a/includes/GlobalFunctions.php b/includes/GlobalFunctions.php index 4ceb2c74cb..3119d22df4 100644 --- a/includes/GlobalFunctions.php +++ b/includes/GlobalFunctions.php @@ -676,9 +676,9 @@ function wfMsgWikiHtml( $key ) { * parsemag: transform the message using magic phrases * content: fetch message for content language instead of interface * Also can accept a single associative argument, of the form 'language' => 'xx': - * language: language code to fetch message for (overriden by - * content), its behaviour with parser, parseinline and parsemag - * is undefined. + * language: Language object or language code to fetch message for + * (overriden by content), its behaviour with parser, parseinline + * and parsemag is undefined. * Behavior for conflicting options (e.g., parse+parseinline) is undefined. */ function wfMsgExt( $key, $options ) { @@ -706,12 +706,7 @@ function wfMsgExt( $key, $options ) { $langCode = true; } elseif( array_key_exists('language', $options) ) { $forContent = false; - $langCode = $options['language']; - $validCodes = array_keys( Language::getLanguageNames() ); - if( !in_array($options['language'], $validCodes) ) { - # Fallback to en, instead of whatever interface language we might have - $langCode = 'en'; - } + $langCode = wfGetLangObj( $options['language'] ); } else { $forContent = false; $langCode = false; diff --git a/languages/Language.php b/languages/Language.php index 4c878d0137..4aebb0cb45 100644 --- a/languages/Language.php +++ b/languages/Language.php @@ -1903,33 +1903,23 @@ class Language { * Take a list of strings and build a locale-friendly comma-separated * list, using the local comma-separator message. * @param $list array of strings to put in a comma list - * @param $forContent bool Use $wgContentLang instead of the UI lang * @return string */ function commaList( $list, $forContent = false ) { - $params = array( 'escapenoentities' ); - if ( $forContent === true ) { - $params[] = 'content'; - } return implode( $list, - wfMsgExt( 'comma-separator', $params ) ); + wfMsgExt( 'comma-separator', array( 'escapenoentities', 'language' => $this ) ) ); } /** * Same as commaList, but separate it with the pipe instead. * @param $list array of strings to put in a pipe list - * @param $forContent bool Use $wgContentLang instead of the UI lang * @return string */ - function pipeList( $list, $forContent = false ) { - $params = array( 'escapenoentities' ); - if ( $forContent === true ) { - $params[] = 'content'; - } + function pipeList( $list ) { return implode( $list, - wfMsgExt( 'pipe-separator', $params ) ); + wfMsgExt( 'pipe-separator', array( 'escapenoentities', 'language' => $this ) ) ); } /** -- 2.20.1