From: Alexandre Emsenhuber Date: Tue, 30 Sep 2008 17:15:11 +0000 (+0000) Subject: Fix for r41430: wfMsgExt() now accepts a Language object in the language key of ... X-Git-Tag: 1.31.0-rc.0~44984 X-Git-Url: http://git.cyclocoop.org/?a=commitdiff_plain;h=5167cf4cadfadf35d269550bcf13e64fb050355c;p=lhc%2Fweb%2Fwiklou.git Fix for r41430: wfMsgExt() now accepts a Language object in the language key of $options --- 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 ) ) ); } /**