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

Change subject: Fix the behavior of be-tarask and nb in gray interlanguage links
......................................................................


Fix the behavior of be-tarask and nb in gray interlanguage links

* Having 'nb' in Accept-Language was creating a "norsk (bokmal)"
  link even if there already was an no.wikipedia.org link.
  This is fixed by using SiteMapper's getWikiDomainCode().
  Also give a more meaningful name to the variable that holds
  such language codes.
* Having 'be' was only showing 'be' itself, but not 'be-tarask'.
  The situation with them is similar to having "no" for Norwegian,
  and the solution is the same - to show both domains for this code.

Bug: T113945
Change-Id: I46e9e0ef933f156b5914e3a78af9ddfce6cb19b7
---
M extension.json
M modules/entrypoint/ext.cx.interlanguagelink.js
2 files changed, 18 insertions(+), 8 deletions(-)

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



diff --git a/extension.json b/extension.json
index fd8a700..9f655bc 100644
--- a/extension.json
+++ b/extension.json
@@ -741,9 +741,10 @@
                                "cx-entrypoint-title"
                        ],
                        "dependencies": [
+                               "ext.cx.sitemapper",
                                "ext.cx.util",
-                               "jquery.uls.data",
                                "ext.uls.init",
+                               "jquery.uls.data",
                                "mediawiki.jqueryMsg"
                        ]
                },
diff --git a/modules/entrypoint/ext.cx.interlanguagelink.js 
b/modules/entrypoint/ext.cx.interlanguagelink.js
index 1e14da2..bec19ac 100644
--- a/modules/entrypoint/ext.cx.interlanguagelink.js
+++ b/modules/entrypoint/ext.cx.interlanguagelink.js
@@ -12,6 +12,7 @@
        'use strict';
 
        var campaign = 'interlanguagelink';
+
        /**
         * Get the list of target languages that should be suggested
         * to the current user:
@@ -22,7 +23,7 @@
         * @return {string[]} target languages
         */
        function getSuggestedTargetLanguages() {
-               var i, specialCode, specialCodes, specialCodeIndex,
+               var i, splitCode, splitCodes, specialCodeIndex,
                        uniquePossibleTargetLanguages,
                        acceptLanguages,
                        possibleTargetLanguages = [],
@@ -47,16 +48,18 @@
 
                // Replace possibly non-standard, macro and duplicate language 
codes
                // with normalized counterparts
-               specialCodes = {
-                       // Suggest both varieties of Norwegian when requesting 
macro Norwegian
+               splitCodes = {
+                       // Suggest both varieties of Belarusian when requesting 
'be'
+                       be: [ 'be', 'be-tarask' ],
+                       // Suggest both varieties of Norwegian when requesting 
'no'
                        no: [ 'nb', 'nn' ]
                };
 
-               for ( specialCode in specialCodes ) {
-                       specialCodeIndex = possibleTargetLanguages.indexOf( 
specialCode );
+               for ( splitCode in splitCodes ) {
+                       specialCodeIndex = possibleTargetLanguages.indexOf( 
splitCode );
                        if ( specialCodeIndex > -1 ) {
                                possibleTargetLanguages.splice( 
specialCodeIndex, 1 );
-                               $.merge( possibleTargetLanguages, specialCodes[ 
specialCode ] );
+                               $.merge( possibleTargetLanguages, splitCodes[ 
splitCode ] );
                        }
                }
 
@@ -73,7 +76,11 @@
         * @return {boolean}
         */
        function pageInLanguageExists( code ) {
-               return $( 'li.interlanguage-link.interwiki-' + code ).length 
=== 1;
+               var domainCode;
+
+               domainCode = mw.cx.siteMapper.getWikiDomainCode( code );
+
+               return $( 'li.interlanguage-link.interwiki-' + domainCode 
).length === 1;
        }
 
        function createCXInterlanguageItem( code ) {
@@ -153,6 +160,8 @@
        }
 
        $( function () {
+               mw.cx.siteMapper = new mw.cx.SiteMapper( mw.config.get( 
'wgContentTranslationSiteTemplates' ) );
+
                prepareCXInterLanguageLinks();
        } );
 }( jQuery, mediaWiki ) );

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

Gerrit-MessageType: merged
Gerrit-Change-Id: I46e9e0ef933f156b5914e3a78af9ddfce6cb19b7
Gerrit-PatchSet: 7
Gerrit-Project: mediawiki/extensions/ContentTranslation
Gerrit-Branch: master
Gerrit-Owner: Amire80 <[email protected]>
Gerrit-Reviewer: KartikMistry <[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