Introduce languages options to ULS

Default value of this option will be $.uls.data.autonyms().
It can be set to limit language selection to a set of languages.

Updated examples, used a config variable wgULSLanguages to set this.

Change-Id: Ia322cbdcdb14f08619d2e4df5b23e2702841d147
This commit is contained in:
Santhosh Thottingal authored and Amir E. Aharoni committed 2012-08-15 08:52:46 +03:00
1 parent bce461b980
commit 8f7382b242
7 files changed
+35 -9

No files matched your search

+1 -1
View File
@@ -48,7 +48,7 @@
</p>
</div>
<div class="container">
<div data-languages="{&quot;aa&quot;:&quot;Afar&quot;,&quot;ab&quot;:&quot;Abkhazian&quot;,&quot;ace&quot;:&quot;Achinese&quot;,&quot;af&quot;:&quot;Afrikaans&quot;,&quot;ak&quot;:&quot;Akan&quot;,&quot;aln&quot;:&quot;Gheg Albanian&quot;,&quot;als&quot;:&quot;Alemannisch&quot;,&quot;am&quot;:&quot;Amharic&quot;,&quot;an&quot;:&quot;Aragonese&quot;,&quot;ang&quot;:&quot;Old English&quot;,&quot;anp&quot;:&quot;Angika&quot;,&quot;ar&quot;:&quot;Arabic&quot;,&quot;arc&quot;:&quot;Aramaic&quot;,&quot;arn&quot;:&quot;Araucanian&quot;,&quot;ary&quot;:&quot;Moroccan Spoken Arabic&quot;,&quot;arz&quot;:&quot;Egyptian Spoken Arabic&quot;,&quot;as&quot;:&quot;Assamese&quot;,&quot;ast&quot;:&quot;Asturian&quot;,&quot;av&quot;:&quot;Avaric&quot;,&quot;avk&quot;:&quot;Kotava&quot;,&quot;ay&quot;:&quot;Aymara&quot;,&quot;az&quot;:&quot;Azerbaijani&quot;,&quot;ba&quot;:&quot;Bashkir&quot;,&quot;bar&quot;:&quot;Bavarian&quot;,&quot;bat-smg&quot;:&quot;\u017eemait\u0117\u0161ka&quot;,&quot;bcc&quot;:&quot;Southern Balochi&quot;,&quot;bcl&quot;:&quot;Bikol Central&quot;,&quot;be&quot;:&quot;Belarusian&quot;,&quot;be-tarask&quot;:&quot;Belarusian (Tara\u0161kievica orthography)&quot;,&quot;be-x-old&quot;:&quot;\u202a\u0431\u0435\u043b\u0430\u0440\u0443\u0441\u043a\u0430\u044f (\u0442\u0430\u0440\u0430\u0448\u043a\u0435\u0432\u0456\u0446\u0430)\u202c&quot;,&quot;bg&quot;:&quot;Bulgarian&quot;,&quot;bh&quot;:&quot;Bihari&quot;,&quot;bho&quot;:&quot;Bhojpuri&quot;,&quot;bi&quot;:&quot;Bislama&quot;,&quot;bjn&quot;:&quot;Banjar&quot;,&quot;bm&quot;:&quot;Bambara&quot;,&quot;bn&quot;:&quot;Bengali&quot;,&quot;bo&quot;:&quot;Tibetan&quot;,&quot;bpy&quot;:&quot;Bishnupria Manipuri&quot;,&quot;bqi&quot;:&quot;Bakhtiari&quot;,&quot;br&quot;:&quot;Breton&quot;,&quot;brh&quot;:&quot;Brahui&quot;,&quot;bs&quot;:&quot;Bosnian&quot;,&quot;bug&quot;:&quot;Buginese&quot;,&quot;bxr&quot;:&quot;\u0431\u0443\u0440\u044f\u0430\u0434&quot;,&quot;ca&quot;:&quot;Catalan&quot;,&quot;cbk-zam&quot;:&quot;Chavacano de Zamboanga&quot;,&quot;cdo&quot;:&quot;Min Dong Chinese&quot;,&quot;ce&quot;:&quot;Chechen&quot;,&quot;ceb&quot;:&quot;Cebuano&quot;,&quot;ch&quot;:&quot;Chamorro&quot;,&quot;cho&quot;:&quot;Choctaw&quot;,&quot;chr&quot;:&quot;Cherokee&quot;,&quot;chy&quot;:&quot;Cheyenne&quot;,&quot;ckb&quot;:&quot;Sorani Kurdish&quot;,&quot;co&quot;:&quot;Corsican&quot;,&quot;cps&quot;:&quot;Capiznon&quot;,&quot;cr&quot;:&quot;Cree&quot;,&quot;crh&quot;:&quot;Crimean Turkish&quot;,&quot;crh-latn&quot;:&quot;Crimean Turkish (Latin script)&quot;,&quot;crh-cyrl&quot;:&quot;Crimean Turkish (Cyrillic script)&quot;,&quot;cs&quot;:&quot;Czech&quot;,&quot;csb&quot;:&quot;Kashubian&quot;,&quot;cu&quot;:&quot;Church Slavic&quot;,&quot;cv&quot;:&quot;Chuvash&quot;,&quot;cy&quot;:&quot;Welsh&quot;,&quot;da&quot;:&quot;Danish&quot;,&quot;de&quot;:&quot;German&quot;,&quot;de-at&quot;:&quot;Austrian German&quot;,&quot;de-ch&quot;:&quot;Swiss High German&quot;,&quot;de-formal&quot;:&quot;German (formal address)&quot;,&quot;diq&quot;:&quot;Zazaki&quot;,&quot;dsb&quot;:&quot;Lower Sorbian&quot;,&quot;dtp&quot;:&quot;Central Dusun&quot;,&quot;dv&quot;:&quot;Divehi&quot;,&quot;dz&quot;:&quot;Dzongkha&quot;,&quot;ee&quot;:&quot;Ewe&quot;,&quot;egl&quot;:&quot;Emili\u00e0n&quot;,&quot;el&quot;:&quot;Greek&quot;,&quot;eml&quot;:&quot;Emiliano-Romagnolo&quot;,&quot;en&quot;:&quot;English&quot;,&quot;en-ca&quot;:&quot;Canadian English&quot;,&quot;en-gb&quot;:&quot;British English&quot;,&quot;eo&quot;:&quot;Esperanto&quot;,&quot;es&quot;:&quot;Spanish&quot;,&quot;et&quot;:&quot;Estonian&quot;,&quot;eu&quot;:&quot;Basque&quot;,&quot;ext&quot;:&quot;Extremaduran&quot;,&quot;fa&quot;:&quot;Persian&quot;,&quot;ff&quot;:&quot;Fulah&quot;,&quot;fi&quot;:&quot;Finnish&quot;,&quot;fit&quot;:&quot;me\u00e4nkieli&quot;,&quot;fiu-vro&quot;:&quot;V\u00f5ro&quot;,&quot;fj&quot;:&quot;Fijian&quot;,&quot;fo&quot;:&quot;Faroese&quot;,&quot;fr&quot;:&quot;French&quot;,&quot;frc&quot;:&quot;Cajun French&quot;,&quot;frp&quot;:&quot;Franco-Proven\u00e7al&quot;,&quot;frr&quot;:&quot;Northern Frisian&quot;,&quot;fur&quot;:&quot;Friulian&quot;,&quot;fy&quot;:&quot;Western Frisian&quot;,&quot;ga&quot;:&quot;Irish&quot;,&quot;gag&quot;:&quot;Gagauz&quot;,&quot;gan&quot;:&quot;Gan&quot;,&quot;gan-hans&quot;:&quot;Simplified Gan script&quot;,&quot;gan-hant&quot;:&quot;Traditional Gan script&quot;,&quot;gd&quot;:&quot;Scottish Gaelic&quot;,&quot;gl&quot;:&quot;Galician&quot;,&quot;glk&quot;:&quot;Gilaki&quot;,&quot;gn&quot;:&quot;Guarani&quot;,&quot;got&quot;:&quot;Gothic&quot;,&quot;grc&quot;:&quot;Ancient Greek&quot;,&quot;gsw&quot;:&quot;Swiss German&quot;,&quot;gu&quot;:&quot;Gujarati&quot;,&quot;gv&quot;:&quot;Manx&quot;,&quot;ha&quot;:&quot;Hausa&quot;,&quot;hak&quot;:&quot;Hakka&quot;,&quot;haw&quot;:&quot;Hawaiian&quot;,&quot;he&quot;:&quot;Hebrew&quot;,&quot;hi&quot;:&quot;Hindi&quot;,&quot;hif&quot;:&quot;Fiji Hindi&quot;,&quot;hif-latn&quot;:&quot;Fiji Hindi (Latin script)&quot;,&quot;hil&quoLine truncated
<div class="uls-menu">
<div class="row">
<span class="icon-close"></span>
</div>
+4 -3
View File
@@ -24,7 +24,7 @@
this.$element = $( element );
this.options = $.extend( {}, $.fn.uls.defaults, options );
this.$menu = $( this.options.menu );
this.languages = this.$menu.data( 'languages' );
this.languages = this.options.languages;
for ( var code in this.languages ) {
if ( $.uls.data.languages[code] === undefined ) {
window.console && console.log && console.log( "ULS: Unknown language " + code + "." );
@@ -104,7 +104,7 @@
that.$menu.on('keypress', $.proxy(this.keypress, this) )
.on('keyup', $.proxy(this.keyup, this) );
if ( $.browser.webkit || $.browser.msie ) {
this.$menu.on( 'keydown', $.proxy( this.keypress, this ) )
this.$menu.on( 'keydown', $.proxy( this.keypress, this ) );
}
lcd = that.$resultsView.lcd( {
@@ -208,7 +208,8 @@
$.fn.uls.defaults = {
menu: '.uls-menu',
onSelect: null, // Callback function to be called when a language is selected
searchAPI: null // Language search API
searchAPI: null, // Language search API
languages: $.uls.data.autonyms() // Languages to be used for ULS, default is all languages
};
$.fn.uls.Constructor = ULS;
@@ -47,6 +47,20 @@
return ( $.uls.data.languages[language] && $.uls.data.languages[language][2] ) || language;
};
/**
* Returns all language codes and corresponding autonyms
* @return array
*/
$.uls.data.autonyms = function() {
var autonymsByCode = {};
for ( var language in $.uls.data.languages ) {
autonymsByCode[language] = $.uls.data.autonym( language );
}
return autonymsByCode;
};
/**
* Returns an array of all region codes.
* @return array