update jquery.uls from upstream

Change-Id: I5d043ab57eb05ee061ef5508cd5180d1dade19f2
This commit is contained in:
Santhosh Thottingal committed 2013-01-07 16:17:30 +05:30
1 parent f6aaba4d93
commit 4701f930c9
1 file changed
+32 -3
+32 -3
View File
@@ -1,11 +1,11 @@
/*! jquery.uls - v0.1.0 - 2013-01-02 /*! jquery.uls - v0.1.0 - 2013-01-07
* https://github.com/wikimedia/jquery.uls * https://github.com/wikimedia/jquery.uls
* Copyright (c) 2013 Santhosh Thottingal; Licensed GPL, MIT */ * Copyright (c) 2013 Santhosh Thottingal; Licensed GPL, MIT */
// Please do not edit. This file is generated from data/langdb.yaml by ulsdata2json.php // Please do not edit. This file is generated from data/langdb.yaml by ulsdata2json.php
( function ( $ ) { ( function ( $ ) {
$.uls = $.uls || {}; $.uls = $.uls || {};
$.uls.data = {"languages":{"aa":["Latn",["AF"],"Qaf\u00e1r af"],"ab":["Cyrl",["EU"],"\u0410\u04a7\u0441\u0448\u04d9\u0430"],"ace":["Latn",["AS","PA"],"Ac\u00e8h"],"ady":["Cyrl",["EU","ME"],"\u0410\u0434\u044b\u0433\u044d\u0431\u0437\u044d"],"ady-cyrl":["ady"],"ady-latn":["Latn",["EU","ME"],"Adygabze"],"aeb":["Arab",["AF"],"\u0632\u064e\u0648\u064f\u0646"],"af":["Latn",["AF"],"Afrikaans"],"ahr":["Deva",["AS"],"\u0905\u0939\u093f\u0930\u093e\u0923\u0940"],"ak":["Latn",["AF"],"Akan"],"akz":["Latn",["AM"],"Albaamo innaa\u026ciilka"],"aln":["Latn",["EU"],"Geg\u00eb"],"am":["Ethi",["AF"],"\u12a0\u121b\u122d\u129b"],"an":["Latn",["EU"],"aragon\u00e9s"],"ang":["Latn",["EU"],"\u00c6nglisc"],"anp":["Deva",["AS"],"\u0905\u0919\u094d\u0917\u093f\u0915\u093e"],"ar":["Arab",["ME"],"\u0627\u0644\u0639\u0631\u0628\u064a\u0629"],"arc":["Syrc",["ME"],"\u0710\u072a\u0721\u071d\u0710"],"arn":["Latn",["AM"],"mapudungun"],"aro":["Latn",["AM"],"Araona"],"arq":["Latn",["AF"],"Dziri"],"ary":["Latn",["ME"],"Ma\u0121ribi"],"arz":["Arab",["ME"],"\u0645\u0635\u0631\u0649"],"as":["Beng",["AS"],"\u0985\u09b8\u09ae\u09c0\u09af\u09bc\u09be"],"ase":["Sgnw",["AM"],"American sign language"],"ast":["Latn",["EU"],"asturianu"],"av":["Cyrl",["EU"],"\u0430\u0432\u0430\u0440"],"avk":["Latn",["WW"],"Kotava"],"ay":["Latn",["AM"],"Aymar aru"],"az":["az-latn"],"az-latn":["Latn",["EU","ME"],"az\u0259rbaycanca"],"az-arab":["Arab",["EU","ME"],"\u0622\u0630\u0631\u0628\u0627\u064a\u062c\u0627\u0646\u062c\u0627"],"az-cyrl":["Latn",["EU","ME"],"\u0430\u0437\u04d9\u0440\u0431\u0430\u0458\u04b9\u0430\u043d\u04b9\u0430"],"azb":["az-arab"],"ba":["Cyrl",["EU"],"\u0431\u0430\u0448\u04a1\u043e\u0440\u0442\u0441\u0430"],"bar":["Latn",["EU"],"Boarisch"],"bbc-latn":["Latn",["AS"],"Batak Toba"],"bbc-batk":["Batk",["AS"],"Batak Toba"],"bbc":["Latn",["AS"],"Batak Toba"],"bcc":["Arab",["AS","ME"],"\u0628\u0644\u0648\u0686\u06cc \u0645\u06a9\u0631\u0627\u0646\u06cc"],"bcl":["Latn",["AS"],"Bikol Central"],"be-tarask":["Cyrl",["EU"],"\u0431\u0435\u043b\u0430\u0440\u0443\u0441\u043a\u0430\u044f (\u0442\u0430\u0440\u0430\u0448\u043a\u0435\u0432\u0456\u0446\u0430)"],"be-x-old":["be-tarask"],"be":["Cyrl",["EU"],"\u0431\u0435\u043b\u0430\u0440\u0443\u0441\u043a\u0430\u044f"],"bew":["Latn",["AS"],"Bahasa Betawi"],"bfq":["Taml",["AS"],"\u0baa\u0b9f\u0b95\u0bbe"],"bg":["Cyrl",["EU"],"\u0431\u044a\u043b\u0433\u0430\u0440\u0441\u043a\u0438"],"bh":["Deva",["AS"],"\u092d\u094b\u091c\u092a\u0941\u0930\u0940"],"bho":["Deva",["AS"],"\u092d\u094b\u091c\u092a\u0941\u0930\u0940"],"bi":["Latn",["PA"],"Bislama"],"bjn":["Latn",["AS"],"Bahasa Banjar"],"bm":["Latn",["AF"],"bamanankan"],"bn":["Beng",["AS"],"\u09ac\u09be\u0982\u09b2\u09be"],"bo":["Tibt",["AS"],"\u0f56\u0f7c\u0f51\u0f0b\u0f61\u0f72\u0f42"],"bpy":["Beng",["AS"],"\u09ac\u09bf\u09b7\u09cd\u09a3\u09c1\u09aa\u09cd\u09b0\u09bf\u09af\u09bc\u09be \u09ae\u09a3\u09bf\u09aa\u09c1\u09b0\u09c0"],"bqi":["Arab",["ME"],"\u0628\u062e\u062a\u064a\u0627\u0631\u064a"],"br":["Latn",["EU"],"brezhoneg"],"brh":["Latn",["ME","AS"],"Br\u00e1hu\u00ed"],"bs":["Latn",["EU"],"bosanski"],"bto":["Latn",["AS"],"Iriga Bicolano"],"bug":["Bugi",["AS"],"\u1a05\u1a14 \u1a15\u1a18\u1a01\u1a17"],"bxr":["Cyrl",["AS"],"\u0431\u0443\u0440\u044f\u0430\u0434"],"ca":["Latn",["EU"],"catal\u00e0"],"cbk-zam":["Latn",["AS"],"Chavacano de Zamboanga"],"cdo":["Latn",["AS"],"M\u00ecng-d\u0115\u0324ng-ng\u1e73\u0304"],"ce":["Cyrl",["EU"],"\u043d\u043e\u0445\u0447\u0438\u0439\u043d"],"ceb":["Latn",["AS"],"Cebuano"],"ch":["Latn",["PA"],"Chamoru"],"cho":["Latn",["AM"],"Choctaw"],"chr":["Cher",["AM"],"\u13e3\u13b3\u13a9"],"chy":["Latn",["AM"],"Tsets\u00eahest\u00e2hese"],"ckb":["Arab",["ME"],"\u06a9\u0648\u0631\u062f\u06cc"],"co":["Latn",["EU"],"corsu"],"cps":["Latn",["AS"],"Capice\u00f1o"],"cr":["Cans",["AM"],"\u14c0\u1426\u1403\u152d\u140d\u140f\u1423"],"cr-cans":["cr"],"cr-latn":["Latn",["AM"],"N\u0113hiyaw\u0113win"],"crh":["Latn",["EU"],"q\u0131r\u0131mtatarca"],"crh-cyrl":["Cyrl",["EU"],"\u043a\u044a\u044b\u0440\u044b\u043c\u0442\u0430\u0442\u0430\u0440\u0434\u0436\u0430"],"crh-latn":["crh"],"cs":["Latn",["EU"],"\u010desky"],"csb":["Latn",["EU"],"kasz\u00ebbsczi"],"cu":["Cyrl",["EU"],"\u0441\u043b\u043e\u0432\u0463\u0301\u043d\u044c\u0441\u043a\u044a \/ \u2c14\u2c0e\u2c11\u2c02\u2c21\u2c10\u2c20\u2c14\u2c0d\u2c1f"],"cv":["Cyrl",["EU"],"\u0427\u04d1\u0432\u0430\u0448\u043b\u0430"],"cy":["Latn",["EU"],"Cymraeg"],"da":["Latn",["EU"],"dansk"],"de-at":["Latn",["EU"],"\u00d6sterreichisches Deutsch"],"de-ch":["Latn",["EU"],"Schweizer Hochdeutsch"],"de-formal":["Latn",["EU"],"Deutsch (Sie-Form)"],"de":["Latn",["EU"],"Deutsch"],"diq":["Latn",["EU","AS"],"Zazaki"],"dsb":["Latn",["EU"],"dolnoserbski"],"dtp":["Latn",["AS"],"Dusun Bundu-liwan"],"dv":["Thaa",["AS"],"\u078b\u07a8\u0788\u07ac\u0780\u07a8\u0784\u07a6\u0790\u07b0"],"dz":["Tibt",["AS"],"\u0f47\u0f7c\u0f44\u0f0b\u0f41"],"ee":["Latn",["AF"],"e\u028begbe"],"egl":["Latn",["EU"],"Emili\u00e0n"],"el":["Grek",["EU"],"\u0395\u03bb\u03bb\u03b7\Line truncated $.uls.data = {"languages":{"aa":["Latn",["AF"],"Qaf\u00e1r af"],"ab":["Cyrl",["EU"],"\u0410\u04a7\u0441\u0448\u04d9\u0430"],"ace":["Latn",["AS","PA"],"Ac\u00e8h"],"ady":["Cyrl",["EU","ME"],"\u0410\u0434\u044b\u0433\u044d\u0431\u0437\u044d"],"ady-cyrl":["ady"],"ady-latn":["Latn",["EU","ME"],"Adygabze"],"aeb":["Arab",["AF"],"\u0632\u064e\u0648\u064f\u0646"],"af":["Latn",["AF"],"Afrikaans"],"ahr":["Deva",["AS"],"\u0905\u0939\u093f\u0930\u093e\u0923\u0940"],"ak":["Latn",["AF"],"Akan"],"akz":["Latn",["AM"],"Albaamo innaa\u026ciilka"],"aln":["Latn",["EU"],"Geg\u00eb"],"am":["Ethi",["AF"],"\u12a0\u121b\u122d\u129b"],"an":["Latn",["EU"],"aragon\u00e9s"],"ang":["Latn",["EU"],"\u00c6nglisc"],"anp":["Deva",["AS"],"\u0905\u0919\u094d\u0917\u093f\u0915\u093e"],"ar":["Arab",["ME"],"\u0627\u0644\u0639\u0631\u0628\u064a\u0629"],"arc":["Syrc",["ME"],"\u0710\u072a\u0721\u071d\u0710"],"arn":["Latn",["AM"],"mapudungun"],"aro":["Latn",["AM"],"Araona"],"arq":["Latn",["AF"],"Dziri"],"ary":["Latn",["ME"],"Ma\u0121ribi"],"arz":["Arab",["ME"],"\u0645\u0635\u0631\u0649"],"as":["Beng",["AS"],"\u0985\u09b8\u09ae\u09c0\u09af\u09bc\u09be"],"ase":["Sgnw",["AM"],"American sign language"],"ast":["Latn",["EU"],"asturianu"],"av":["Cyrl",["EU"],"\u0430\u0432\u0430\u0440"],"avk":["Latn",["WW"],"Kotava"],"ay":["Latn",["AM"],"Aymar aru"],"az":["az-latn"],"az-latn":["Latn",["EU","ME"],"az\u0259rbaycanca"],"az-arab":["Arab",["EU","ME"],"\u0622\u0630\u0631\u0628\u0627\u064a\u062c\u0627\u0646\u062c\u0627"],"az-cyrl":["Latn",["EU","ME"],"\u0430\u0437\u04d9\u0440\u0431\u0430\u0458\u04b9\u0430\u043d\u04b9\u0430"],"azb":["az-arab"],"ba":["Cyrl",["EU"],"\u0431\u0430\u0448\u04a1\u043e\u0440\u0442\u0441\u0430"],"bar":["Latn",["EU"],"Boarisch"],"bat-smg":["sgs"],"bbc-latn":["Latn",["AS"],"Batak Toba"],"bbc-batk":["Batk",["AS"],"Batak Toba"],"bbc":["Latn",["AS"],"Batak Toba"],"bcc":["Arab",["AS","ME"],"\u0628\u0644\u0648\u0686\u06cc \u0645\u06a9\u0631\u0627\u0646\u06cc"],"bcl":["Latn",["AS"],"Bikol Central"],"be-tarask":["Cyrl",["EU"],"\u0431\u0435\u043b\u0430\u0440\u0443\u0441\u043a\u0430\u044f (\u0442\u0430\u0440\u0430\u0448\u043a\u0435\u0432\u0456\u0446\u0430)"],"be-x-old":["be-tarask"],"be":["Cyrl",["EU"],"\u0431\u0435\u043b\u0430\u0440\u0443\u0441\u043a\u0430\u044f"],"bew":["Latn",["AS"],"Bahasa Betawi"],"bfq":["Taml",["AS"],"\u0baa\u0b9f\u0b95\u0bbe"],"bg":["Cyrl",["EU"],"\u0431\u044a\u043b\u0433\u0430\u0440\u0441\u043a\u0438"],"bh":["Deva",["AS"],"\u092d\u094b\u091c\u092a\u0941\u0930\u0940"],"bho":["Deva",["AS"],"\u092d\u094b\u091c\u092a\u0941\u0930\u0940"],"bi":["Latn",["PA"],"Bislama"],"bjn":["Latn",["AS"],"Bahasa Banjar"],"bm":["Latn",["AF"],"bamanankan"],"bn":["Beng",["AS"],"\u09ac\u09be\u0982\u09b2\u09be"],"bo":["Tibt",["AS"],"\u0f56\u0f7c\u0f51\u0f0b\u0f61\u0f72\u0f42"],"bpy":["Beng",["AS"],"\u09ac\u09bf\u09b7\u09cd\u09a3\u09c1\u09aa\u09cd\u09b0\u09bf\u09af\u09bc\u09be \u09ae\u09a3\u09bf\u09aa\u09c1\u09b0\u09c0"],"bqi":["Arab",["ME"],"\u0628\u062e\u062a\u064a\u0627\u0631\u064a"],"br":["Latn",["EU"],"brezhoneg"],"brh":["Latn",["ME","AS"],"Br\u00e1hu\u00ed"],"brx":["Deva",["AS"],"\u092c\u0921\u093c\u094b"],"bs":["Latn",["EU"],"bosanski"],"bto":["Latn",["AS"],"Iriga Bicolano"],"bug":["Bugi",["AS"],"\u1a05\u1a14 \u1a15\u1a18\u1a01\u1a17"],"bxr":["Cyrl",["AS"],"\u0431\u0443\u0440\u044f\u0430\u0434"],"ca":["Latn",["EU"],"catal\u00e0"],"cbk-zam":["Latn",["AS"],"Chavacano de Zamboanga"],"cdo":["Latn",["AS"],"M\u00ecng-d\u0115\u0324ng-ng\u1e73\u0304"],"ce":["Cyrl",["EU"],"\u043d\u043e\u0445\u0447\u0438\u0439\u043d"],"ceb":["Latn",["AS"],"Cebuano"],"ch":["Latn",["PA"],"Chamoru"],"cho":["Latn",["AM"],"Choctaw"],"chr":["Cher",["AM"],"\u13e3\u13b3\u13a9"],"chy":["Latn",["AM"],"Tsets\u00eahest\u00e2hese"],"ckb":["Arab",["ME"],"\u06a9\u0648\u0631\u062f\u06cc"],"co":["Latn",["EU"],"corsu"],"cps":["Latn",["AS"],"Capice\u00f1o"],"cr":["Cans",["AM"],"\u14c0\u1426\u1403\u152d\u140d\u140f\u1423"],"cr-cans":["cr"],"cr-latn":["Latn",["AM"],"N\u0113hiyaw\u0113win"],"crh":["Latn",["EU"],"q\u0131r\u0131mtatarca"],"crh-cyrl":["Cyrl",["EU"],"\u043a\u044a\u044b\u0440\u044b\u043c\u0442\u0430\u0442\u0430\u0440\u0434\u0436\u0430"],"crh-latn":["crh"],"cs":["Latn",["EU"],"\u010desky"],"csb":["Latn",["EU"],"kasz\u00ebbsczi"],"cu":["Cyrl",["EU"],"\u0441\u043b\u043e\u0432\u0463\u0301\u043d\u044c\u0441\u043a\u044a \/ \u2c14\u2c0e\u2c11\u2c02\u2c21\u2c10\u2c20\u2c14\u2c0d\u2c1f"],"cv":["Cyrl",["EU"],"\u0427\u04d1\u0432\u0430\u0448\u043b\u0430"],"cy":["Latn",["EU"],"Cymraeg"],"da":["Latn",["EU"],"dansk"],"de-at":["Latn",["EU"],"\u00d6sterreichisches Deutsch"],"de-ch":["Latn",["EU"],"Schweizer Hochdeutsch"],"de-formal":["Latn",["EU"],"Deutsch (Sie-Form)"],"de":["Latn",["EU"],"Deutsch"],"diq":["Latn",["EU","AS"],"Zazaki"],"dsb":["Latn",["EU"],"dolnoserbski"],"dtp":["Latn",["AS"],"Dusun Bundu-liwan"],"dv":["Thaa",["AS"],"\u078b\u07a8\u0788\u07ac\u0780\u07a8\u0784\u07a6\u0790\u07b0"],"dz":["Tibt",["AS"],"\u0f47\u0f7c\u0f44\u0f0b\u0f41"],"ee":["Latn",["AF"],"e\u028begbe"],"egl":["Latn",["Line truncated
} ( jQuery ) ); } ( jQuery ) );
/** /**
@@ -209,6 +209,7 @@
if ( $.inArray( region, $.uls.data.getRegions( language ) ) !== -1 ) { if ( $.inArray( region, $.uls.data.getRegions( language ) ) !== -1 ) {
var script = $.uls.data.getScript( language ); var script = $.uls.data.getScript( language );
if ( languagesByScriptInRegion[script] === undefined ) { if ( languagesByScriptInRegion[script] === undefined ) {
languagesByScriptInRegion[script] = []; languagesByScriptInRegion[script] = [];
} }
@@ -253,12 +254,15 @@
for ( scriptGroup in $.uls.data.scriptgroups ) { for ( scriptGroup in $.uls.data.scriptgroups ) {
for ( language in languages ) { for ( language in languages ) {
langScriptGroup = $.uls.data.getScriptGroupOfLanguage( language ); langScriptGroup = $.uls.data.getScriptGroupOfLanguage( language );
if ( langScriptGroup !== scriptGroup ) { if ( langScriptGroup !== scriptGroup ) {
continue; continue;
} }
if ( !languagesByScriptGroup[scriptGroup] ) { if ( !languagesByScriptGroup[scriptGroup] ) {
languagesByScriptGroup[scriptGroup] = []; languagesByScriptGroup[scriptGroup] = [];
} }
languagesByScriptGroup[scriptGroup].push( language ); languagesByScriptGroup[scriptGroup].push( language );
} }
} }
@@ -397,6 +401,7 @@
$.uls.data.sortByAutonym = function ( a, b ) { $.uls.data.sortByAutonym = function ( a, b ) {
var autonymA = $.uls.data.getAutonym( a ) || a, var autonymA = $.uls.data.getAutonym( a ) || a,
autonymB = $.uls.data.getAutonym( b ) || b; autonymB = $.uls.data.getAutonym( b ) || b;
return ( autonymA.toLowerCase() < autonymB.toLowerCase() ) ? -1 : 1; return ( autonymA.toLowerCase() < autonymB.toLowerCase() ) ? -1 : 1;
}; };
@@ -459,6 +464,7 @@
return false; return false;
}; };
} ( jQuery ) ); } ( jQuery ) );
/** /**
@@ -483,7 +489,7 @@
*/ */
( function ( $ ) { ( function ( $ ) {
"use strict"; 'use strict';
var noResultsTemplate = '\ var noResultsTemplate = '\
<div class="twelve columns uls-no-results-view">\ <div class="twelve columns uls-no-results-view">\
@@ -583,6 +589,7 @@
$column.append( $li ); $column.append( $li );
} }
}, },
/** /**
* Get a column to add language. * Get a column to add language.
* @param regionCode string The region code * @param regionCode string The region code
@@ -634,9 +641,11 @@
$.each( $.uls.data.regiongroups, function ( regionCode, regionIndex ) { $.each( $.uls.data.regiongroups, function ( regionCode, regionIndex ) {
$section = $( '<div>' ).addClass( 'twelve columns uls-lcd-region-section' ).prop( 'id', regionCode ); $section = $( '<div>' ).addClass( 'twelve columns uls-lcd-region-section' ).prop( 'id', regionCode );
$sectionTitle = $( '<h3 data-i18n="uls-region-' + regionCode + '">' ) $sectionTitle = $( '<h3 data-i18n="uls-region-' + regionCode + '">' )
.addClass( 'eleven columns uls-lcd-region-section uls-lcd-region-title offset-by-one' ) .addClass( 'eleven columns uls-lcd-region-section uls-lcd-region-title offset-by-one' )
.text( regions[regionCode] ); .text( regions[regionCode] );
$section.append( $sectionTitle ); $section.append( $sectionTitle );
lcd.$element.append( $section ); lcd.$element.append( $section );
$section.hide(); $section.hide();
@@ -664,6 +673,7 @@
var quickList = this.options.quickList; var quickList = this.options.quickList;
quickList = quickList.slice( 0, 16 ); quickList = quickList.slice( 0, 16 );
quickList.sort( $.uls.data.sortByAutonym ); quickList.sort( $.uls.data.sortByAutonym );
var $quickListSection = $( '<div>' ).addClass( 'twelve columns uls-lcd-region-section' ).prop( 'id', 'uls-lcd-quicklist' ); var $quickListSection = $( '<div>' ).addClass( 'twelve columns uls-lcd-region-section' ).prop( 'id', 'uls-lcd-quicklist' );
var $quickListSectionTitle = $( '<h3 data-i18n="uls-common-languages">' ) var $quickListSectionTitle = $( '<h3 data-i18n="uls-common-languages">' )
.addClass( 'eleven columns uls-lcd-region-section uls-lcd-region-title offset-by-one' ) .addClass( 'eleven columns uls-lcd-region-section uls-lcd-region-title offset-by-one' )
@@ -671,6 +681,7 @@
$quickListSection.append( $quickListSectionTitle ); $quickListSection.append( $quickListSectionTitle );
this.$element.prepend( $quickListSection ); this.$element.prepend( $quickListSection );
this.regionDivs[ 'quick' ] = $quickListSection; this.regionDivs[ 'quick' ] = $quickListSection;
for ( var i = 0; i < quickList.length; i++) { for ( var i = 0; i < quickList.length; i++) {
var $column = this.getColumn( 'quick', i % 4 === 0 ); var $column = this.getColumn( 'quick', i % 4 === 0 );
var langCode = quickList[i]; var langCode = quickList[i];
@@ -687,8 +698,10 @@
); );
$column.append( $li ); $column.append( $li );
} }
$quickListSection.show(); $quickListSection.show();
$quickListSectionTitle.i18n(); $quickListSectionTitle.i18n();
return $quickListSection; return $quickListSection;
}, },
@@ -731,6 +744,7 @@
var $ulsLanguageList = $( this ), var $ulsLanguageList = $( this ),
scrollTop = $ulsLanguageList.position().top, scrollTop = $ulsLanguageList.position().top,
scrollBottom = $ulsLanguageList.height(); scrollBottom = $ulsLanguageList.height();
if ( lcd.options.lazyload && lcd.options.source.val() === '' ) { if ( lcd.options.lazyload && lcd.options.source.val() === '' ) {
if ( this.offsetHeight + this.scrollTop >= this.scrollHeight / 2 ) { if ( this.offsetHeight + this.scrollTop >= this.scrollHeight / 2 ) {
lcd.$element.trigger( 'scrollend' ); lcd.$element.trigger( 'scrollend' );
@@ -746,6 +760,7 @@
if ( top - padding <= scrollTop && height > scrollBottom ) { if ( top - padding <= scrollTop && height > scrollBottom ) {
inviewRegion = $lcdRegionSection.attr( 'id' ); inviewRegion = $lcdRegionSection.attr( 'id' );
return true; return true;
} }
} ); } );
@@ -766,6 +781,7 @@
if ( !data ) { if ( !data ) {
$this.data( 'lcd', ( data = new LanguageCategoryDisplay( this, options ) ) ); $this.data( 'lcd', ( data = new LanguageCategoryDisplay( this, options ) ) );
} }
if ( typeof option === 'string') { if ( typeof option === 'string') {
data[option](); data[option]();
} }
@@ -1172,6 +1188,7 @@
init: function () { init: function () {
var region = this.$element.data( 'region' ); var region = this.$element.data( 'region' );
this.regions = $.uls.data.getRegionsInGroup( this.regionGroup ); this.regions = $.uls.data.getRegionsInGroup( this.regionGroup );
if ( region ) { if ( region ) {
this.regions.push( region ); this.regions.push( region );
} }
@@ -1183,9 +1200,11 @@
for ( var i = 0; i < this.regions.length; i++ ) { for ( var i = 0; i < this.regions.length; i++ ) {
region = this.regions[i]; region = this.regions[i];
if ( $.inArray( region, langRegions ) >= 0 ) { if ( $.inArray( region, langRegions ) >= 0 ) {
this.render( langCode, region ); this.render( langCode, region );
this.cache[langCode] = region; this.cache[langCode] = region;
return; return;
} }
} }
@@ -1195,6 +1214,7 @@
if ( this.cache ) { if ( this.cache ) {
// If the result cache is present, render the results from there. // If the result cache is present, render the results from there.
var result = null; var result = null;
for ( result in this.cache ) { for ( result in this.cache ) {
this.render( result, this.cache[result] ); this.render( result, this.cache[result] );
} }
@@ -1202,11 +1222,14 @@
this.cache = {}; this.cache = {};
// Get the languages grouped by script group // Get the languages grouped by script group
var languagesByScriptGroup = $.uls.data.getLanguagesByScriptGroup( this.options.languages ); var languagesByScriptGroup = $.uls.data.getLanguagesByScriptGroup( this.options.languages );
for ( var scriptGroup in languagesByScriptGroup ) { for ( var scriptGroup in languagesByScriptGroup ) {
// Get the languages for the script group // Get the languages for the script group
var languages = languagesByScriptGroup[scriptGroup]; var languages = languagesByScriptGroup[scriptGroup];
// Sort it based on autonym // Sort it based on autonym
languages.sort( $.uls.data.sortByAutonym ); languages.sort( $.uls.data.sortByAutonym );
for ( var i = 0; i < languages.length; i++ ) { for ( var i = 0; i < languages.length; i++ ) {
// Check whether it belongs to the region // Check whether it belongs to the region
this.test( languages[i] ); this.test( languages[i] );
@@ -1221,9 +1244,11 @@
render: function ( langCode, region ) { render: function ( langCode, region ) {
var $target = this.options.$target; var $target = this.options.$target;
if ( !$target ) { if ( !$target ) {
return; return;
} }
$target.append( langCode, region ); $target.append( langCode, region );
}, },
@@ -1240,10 +1265,12 @@
var $nextRegion = $( '#uls-region-' + nextRegiongroup ); var $nextRegion = $( '#uls-region-' + nextRegiongroup );
var next = $nextRegion.length && $nextRegion.data( 'regionselector' ); var next = $nextRegion.length && $nextRegion.data( 'regionselector' );
if ( next ) { if ( next ) {
next.show(); next.show();
} }
}, 100 ); }, 100 );
return false; return false;
}, },
@@ -1263,6 +1290,7 @@
this.show(); this.show();
// Make the selected region (and it only) active // Make the selected region (and it only) active
$( '.regionselector' ).removeClass( 'active' ); $( '.regionselector' ).removeClass( 'active' );
if ( this.regionGroup ) { if ( this.regionGroup ) {
// if there is a region group, make it active. // if there is a region group, make it active.
this.$element.addClass( 'active' ); this.$element.addClass( 'active' );
@@ -1281,6 +1309,7 @@
if ( !data ) { if ( !data ) {
$this.data( 'regionselector', ( data = new RegionSelector( this, options ) ) ); $this.data( 'regionselector', ( data = new RegionSelector( this, options ) ) );
} }
if ( typeof option === 'string' ) { if ( typeof option === 'string' ) {
data[option](); data[option]();
} }