jenkins-bot has submitted this change and it was merged.

Change subject: mediawiki.language: Expose language fallback chain
......................................................................


mediawiki.language: Expose language fallback chain

The data can now be accessed via mw.language#getFallbackLanguages or
mw.language#getFallbackLanguageChain.

Bug: 69285
Change-Id: Id0c3267f01d5c4da0e4000a0fb318a9dfb538ef3
---
M includes/resourceloader/ResourceLoaderLanguageDataModule.php
M resources/Resources.php
A resources/src/mediawiki.language/mediawiki.language.fallback.js
M resources/src/mediawiki.language/mediawiki.language.init.js
4 files changed, 39 insertions(+), 1 deletion(-)

Approvals:
  Krinkle: Looks good to me, approved
  jenkins-bot: Verified



diff --git a/includes/resourceloader/ResourceLoaderLanguageDataModule.php 
b/includes/resourceloader/ResourceLoaderLanguageDataModule.php
index a1c8ac9..09d90d6 100644
--- a/includes/resourceloader/ResourceLoaderLanguageDataModule.php
+++ b/includes/resourceloader/ResourceLoaderLanguageDataModule.php
@@ -43,6 +43,7 @@
                        'grammarForms' => $language->getGrammarForms(),
                        'pluralRules' => $language->getPluralRules(),
                        'digitGroupingPattern' => 
$language->digitGroupingPattern(),
+                       'fallbackLanguages' => 
$language->getFallbackLanguages(),
                );
        }
 
diff --git a/resources/Resources.php b/resources/Resources.php
index 24e377d..99e1e4f 100644
--- a/resources/Resources.php
+++ b/resources/Resources.php
@@ -1077,7 +1077,8 @@
        'mediawiki.language' => array(
                'scripts' => array(
                        
'resources/src/mediawiki.language/mediawiki.language.js',
-                       
'resources/src/mediawiki.language/mediawiki.language.numbers.js'
+                       
'resources/src/mediawiki.language/mediawiki.language.numbers.js',
+                       
'resources/src/mediawiki.language/mediawiki.language.fallback.js',
                ),
                'languageScripts' => array(
                        'bs' => 
'resources/src/mediawiki.language/languages/bs.js',
diff --git a/resources/src/mediawiki.language/mediawiki.language.fallback.js 
b/resources/src/mediawiki.language/mediawiki.language.fallback.js
new file mode 100644
index 0000000..b1bab02
--- /dev/null
+++ b/resources/src/mediawiki.language/mediawiki.language.fallback.js
@@ -0,0 +1,35 @@
+/*
+ * Language-fallback-chain-related utilities for mediawiki.language.
+ */
+( function ( mw, $ ) {
+       /**
+        * @class mw.language
+        */
+
+       $.extend( mw.language, {
+
+               /**
+                * Get the language fallback chain for current UI language (not 
including the language itself).
+                *
+                * @return {string[]} List of language keys, e.g. `['de', 'en']`
+                */
+               getFallbackLanguages: function () {
+                       return mw.language.getData(
+                               mw.config.get( 'wgUserLanguage' ),
+                               'fallbackLanguages'
+                       ) || [];
+               },
+
+               /**
+                * Get the language fallback chain for current UI language, 
including the language itself.
+                *
+                * @return {string[]} List of language keys, e.g. `['pfl', de', 
'en']`
+                */
+               getFallbackLanguageChain: function () {
+                       return [ mw.config.get( 'wgUserLanguage' ) ]
+                               .concat( mw.language.getFallbackLanguages() );
+               }
+
+       } );
+
+}( mediaWiki, jQuery ) );
diff --git a/resources/src/mediawiki.language/mediawiki.language.init.js 
b/resources/src/mediawiki.language/mediawiki.language.init.js
index 5b9afcf..df95d75 100644
--- a/resources/src/mediawiki.language/mediawiki.language.init.js
+++ b/resources/src/mediawiki.language/mediawiki.language.init.js
@@ -35,6 +35,7 @@
                 *  - `grammarForms`
                 *  - `pluralRules`
                 *  - `digitGroupingPattern`
+                *  - `fallbackLanguages`
                 *
                 * @property
                 */

-- 
To view, visit https://gerrit.wikimedia.org/r/153075
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings

Gerrit-MessageType: merged
Gerrit-Change-Id: Id0c3267f01d5c4da0e4000a0fb318a9dfb538ef3
Gerrit-PatchSet: 6
Gerrit-Project: mediawiki/core
Gerrit-Branch: master
Gerrit-Owner: Bartosz Dziewoński <[email protected]>
Gerrit-Reviewer: Bartosz Dziewoński <[email protected]>
Gerrit-Reviewer: Fomafix
Gerrit-Reviewer: Jack Phoenix <[email protected]>
Gerrit-Reviewer: Krinkle <[email protected]>
Gerrit-Reviewer: Nikerabbit <[email protected]>
Gerrit-Reviewer: Santhosh <[email protected]>
Gerrit-Reviewer: jenkins-bot <>

_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits

Reply via email to