From 9db190c7e736ec8d063187d4241b59feaf7dc2d1 Mon Sep 17 00:00:00 2001 From: Pierre Schmitz Date: Wed, 22 Jun 2011 11:28:20 +0200 Subject: update to MediaWiki 1.17.0 --- resources/mediawiki.language/languages/am.js | 8 ++ resources/mediawiki.language/languages/ar.js | 38 ++++++++ resources/mediawiki.language/languages/bat-smg.js | 18 ++++ .../mediawiki.language/languages/be-tarask.js | 23 +++++ resources/mediawiki.language/languages/be.js | 20 ++++ resources/mediawiki.language/languages/bh.js | 8 ++ resources/mediawiki.language/languages/bs.js | 20 ++++ resources/mediawiki.language/languages/cs.js | 19 ++++ resources/mediawiki.language/languages/cu.js | 18 ++++ resources/mediawiki.language/languages/cy.js | 15 +++ resources/mediawiki.language/languages/dsb.js | 18 ++++ resources/mediawiki.language/languages/fr.js | 8 ++ resources/mediawiki.language/languages/ga.js | 14 +++ resources/mediawiki.language/languages/gd.js | 18 ++++ resources/mediawiki.language/languages/gv.js | 18 ++++ resources/mediawiki.language/languages/he.js | 14 +++ resources/mediawiki.language/languages/hi.js | 8 ++ resources/mediawiki.language/languages/hr.js | 20 ++++ resources/mediawiki.language/languages/hsb.js | 18 ++++ resources/mediawiki.language/languages/hy.js | 8 ++ resources/mediawiki.language/languages/ksh.js | 14 +++ resources/mediawiki.language/languages/ln.js | 8 ++ resources/mediawiki.language/languages/lt.js | 17 ++++ resources/mediawiki.language/languages/lv.js | 8 ++ resources/mediawiki.language/languages/mg.js | 8 ++ resources/mediawiki.language/languages/mk.js | 8 ++ resources/mediawiki.language/languages/mo.js | 14 +++ resources/mediawiki.language/languages/mt.js | 17 ++++ resources/mediawiki.language/languages/nso.js | 8 ++ resources/mediawiki.language/languages/pl.js | 21 +++++ resources/mediawiki.language/languages/pt-br.js | 8 ++ resources/mediawiki.language/languages/ro.js | 14 +++ resources/mediawiki.language/languages/ru.js | 23 +++++ resources/mediawiki.language/languages/se.js | 17 ++++ resources/mediawiki.language/languages/sh.js | 23 +++++ resources/mediawiki.language/languages/sk.js | 14 +++ resources/mediawiki.language/languages/sl.js | 20 ++++ resources/mediawiki.language/languages/sma.js | 14 +++ resources/mediawiki.language/languages/sr-ec.js | 20 ++++ resources/mediawiki.language/languages/sr-el.js | 20 ++++ resources/mediawiki.language/languages/sr.js | 23 +++++ resources/mediawiki.language/languages/ti.js | 8 ++ resources/mediawiki.language/languages/tl.js | 7 ++ resources/mediawiki.language/languages/uk.js | 23 +++++ resources/mediawiki.language/languages/wa.js | 8 ++ resources/mediawiki.language/mediawiki.language.js | 102 +++++++++++++++++++++ 46 files changed, 798 insertions(+) create mode 100644 resources/mediawiki.language/languages/am.js create mode 100644 resources/mediawiki.language/languages/ar.js create mode 100644 resources/mediawiki.language/languages/bat-smg.js create mode 100644 resources/mediawiki.language/languages/be-tarask.js create mode 100644 resources/mediawiki.language/languages/be.js create mode 100644 resources/mediawiki.language/languages/bh.js create mode 100644 resources/mediawiki.language/languages/bs.js create mode 100644 resources/mediawiki.language/languages/cs.js create mode 100644 resources/mediawiki.language/languages/cu.js create mode 100644 resources/mediawiki.language/languages/cy.js create mode 100644 resources/mediawiki.language/languages/dsb.js create mode 100644 resources/mediawiki.language/languages/fr.js create mode 100644 resources/mediawiki.language/languages/ga.js create mode 100644 resources/mediawiki.language/languages/gd.js create mode 100644 resources/mediawiki.language/languages/gv.js create mode 100644 resources/mediawiki.language/languages/he.js create mode 100644 resources/mediawiki.language/languages/hi.js create mode 100644 resources/mediawiki.language/languages/hr.js create mode 100644 resources/mediawiki.language/languages/hsb.js create mode 100644 resources/mediawiki.language/languages/hy.js create mode 100644 resources/mediawiki.language/languages/ksh.js create mode 100644 resources/mediawiki.language/languages/ln.js create mode 100644 resources/mediawiki.language/languages/lt.js create mode 100644 resources/mediawiki.language/languages/lv.js create mode 100644 resources/mediawiki.language/languages/mg.js create mode 100644 resources/mediawiki.language/languages/mk.js create mode 100644 resources/mediawiki.language/languages/mo.js create mode 100644 resources/mediawiki.language/languages/mt.js create mode 100644 resources/mediawiki.language/languages/nso.js create mode 100644 resources/mediawiki.language/languages/pl.js create mode 100644 resources/mediawiki.language/languages/pt-br.js create mode 100644 resources/mediawiki.language/languages/ro.js create mode 100644 resources/mediawiki.language/languages/ru.js create mode 100644 resources/mediawiki.language/languages/se.js create mode 100644 resources/mediawiki.language/languages/sh.js create mode 100644 resources/mediawiki.language/languages/sk.js create mode 100644 resources/mediawiki.language/languages/sl.js create mode 100644 resources/mediawiki.language/languages/sma.js create mode 100644 resources/mediawiki.language/languages/sr-ec.js create mode 100644 resources/mediawiki.language/languages/sr-el.js create mode 100644 resources/mediawiki.language/languages/sr.js create mode 100644 resources/mediawiki.language/languages/ti.js create mode 100644 resources/mediawiki.language/languages/tl.js create mode 100644 resources/mediawiki.language/languages/uk.js create mode 100644 resources/mediawiki.language/languages/wa.js create mode 100644 resources/mediawiki.language/mediawiki.language.js (limited to 'resources/mediawiki.language') diff --git a/resources/mediawiki.language/languages/am.js b/resources/mediawiki.language/languages/am.js new file mode 100644 index 00000000..fa5d3c57 --- /dev/null +++ b/resources/mediawiki.language/languages/am.js @@ -0,0 +1,8 @@ +/** + * Amharic (አማርኛ) language functions + */ + +mediaWiki.language.convertPlural = function( count, forms ) { + forms = mediaWiki.language.preConvertPlural( forms, 2 ); + return ( count <= 1 ) ? forms[0] : forms[1]; +}; diff --git a/resources/mediawiki.language/languages/ar.js b/resources/mediawiki.language/languages/ar.js new file mode 100644 index 00000000..7d9e114f --- /dev/null +++ b/resources/mediawiki.language/languages/ar.js @@ -0,0 +1,38 @@ +/** + * Arabic (العربية) language functions + */ + +mediaWiki.language.convertPlural = function( count, forms ) { + forms = mediaWiki.language.preConvertPlural( forms, 6 ); + if ( count == 0 ) { + return forms[0]; + } + if ( count == 1 ) { + return forms[1]; + } + if ( count == 2 ) { + return forms[2]; + } + if ( count % 100 >= 3 && count % 100 <= 10 ) { + return forms[3]; + } + if ( count % 100 >= 11 && count % 100 <= 99 ) { + return forms[4]; + } + return forms[5]; +}; + +mediaWiki.language.digitTransformTable = { + '0': '٠', // ٠ + '1': '١', // ١ + '2': '٢', // ٢ + '3': '٣', // ٣ + '4': '٤', // ٤ + '5': '٥', // ٥ + '6': '٦', // ٦ + '7': '٧', // ٧ + '8': '٨', // ٨ + '9': '٩', // ٩ + '.': '٫', // ٫ wrong table ? + ',': '٬' // ٬ +}; diff --git a/resources/mediawiki.language/languages/bat-smg.js b/resources/mediawiki.language/languages/bat-smg.js new file mode 100644 index 00000000..6e3f4cc9 --- /dev/null +++ b/resources/mediawiki.language/languages/bat-smg.js @@ -0,0 +1,18 @@ +/** + * Samogitian (Žemaitėška) language functions + */ + +mediaWiki.language.convertPlural = function( count, forms ) { + forms = mediaWiki.language.preConvertPlural( forms, 4 ); + count = Math.abs( count ); + if ( count === 0 || ( count % 100 === 0 || ( count % 100 >= 10 && count % 100 < 20 ) ) ) { + return forms[2]; + } + if ( count % 10 === 1 ) { + return forms[0]; + } + if ( count % 10 === 2 ) { + return forms[1]; + } + return forms[3]; +}; diff --git a/resources/mediawiki.language/languages/be-tarask.js b/resources/mediawiki.language/languages/be-tarask.js new file mode 100644 index 00000000..c19f47d1 --- /dev/null +++ b/resources/mediawiki.language/languages/be-tarask.js @@ -0,0 +1,23 @@ +/** + * Belarusian in Taraskievica orthography (Беларуская (тарашкевіца)) language functions + */ + +mediaWiki.language.convertPlural = function( count, forms ) { + if ( forms.length === 2 ) { + return count == 1 ? forms[0] : forms[1]; + } + forms = mediaWiki.language.preConvertPlural( forms, 3 ); + if ( count > 10 && Math.floor( ( count % 100 ) / 10 ) == 1 ) { + return forms[2]; + } + switch ( count % 10 ) { + case 1: + return forms[0]; + case 2: + case 3: + case 4: + return forms[1]; + default: + return forms[2]; + } +}; diff --git a/resources/mediawiki.language/languages/be.js b/resources/mediawiki.language/languages/be.js new file mode 100644 index 00000000..97ceee3b --- /dev/null +++ b/resources/mediawiki.language/languages/be.js @@ -0,0 +1,20 @@ +/** + * Belarusian normative (Беларуская) language functions + */ + +mediaWiki.language.convertPlural = function convertPlural( count, forms ) { + forms = mediaWiki.language.preConvertPlural( forms, 3 ); + if ( count > 10 && Math.floor( ( count % 100 ) / 10 ) == 1 ) { + return forms[2]; + } + switch ( count % 10 ) { + case 1: + return forms[0]; + case 2: + case 3: + case 4: + return forms[1]; + default: + return forms[2]; + } +}; diff --git a/resources/mediawiki.language/languages/bh.js b/resources/mediawiki.language/languages/bh.js new file mode 100644 index 00000000..abbf8bd9 --- /dev/null +++ b/resources/mediawiki.language/languages/bh.js @@ -0,0 +1,8 @@ +/** + * Bihari (भोजपुरी) language functions + */ + +mediaWiki.language.convertPlural = function( count, forms ) { + forms = mediaWiki.language.preConvertPlural( forms, 2 ); + return ( count <= 1 ) ? forms[0] : forms[1]; +}; diff --git a/resources/mediawiki.language/languages/bs.js b/resources/mediawiki.language/languages/bs.js new file mode 100644 index 00000000..9f22426a --- /dev/null +++ b/resources/mediawiki.language/languages/bs.js @@ -0,0 +1,20 @@ +/** + * Bosnian (bosanski) language functions + */ + +mediaWiki.language.convertPlural = function( count, forms ) { + forms = mediaWiki.language.preConvertPlural( forms, 3 ); + if ( count > 10 && Math.floor( ( count % 100 ) / 10 ) == 1 ) { + return forms[2]; + } + switch ( count % 10 ) { + case 1: + return forms[0]; + case 2: + case 3: + case 4: + return forms[1]; + default: + return forms[2]; + } +}; diff --git a/resources/mediawiki.language/languages/cs.js b/resources/mediawiki.language/languages/cs.js new file mode 100644 index 00000000..0b77909d --- /dev/null +++ b/resources/mediawiki.language/languages/cs.js @@ -0,0 +1,19 @@ +/** + * Czech (čeština [subst.], český [adj.], česky [adv.]) language functions + */ + +mediaWiki.language.convertPlural = function( count, forms ) { + forms = mediaWiki.language.preConvertPlural( forms, 3 ); + switch ( count ) { + case 1: + return forms[0]; + break; + case 2: + case 3: + case 4: + return forms[1]; + break; + default: + return forms[2]; + } +}; diff --git a/resources/mediawiki.language/languages/cu.js b/resources/mediawiki.language/languages/cu.js new file mode 100644 index 00000000..35a54739 --- /dev/null +++ b/resources/mediawiki.language/languages/cu.js @@ -0,0 +1,18 @@ +/** + * Old Church Slavonic (Словѣ́ньскъ / ⰔⰎⰑⰂⰡⰐⰠⰔⰍⰟ) language functions + */ + +mediaWiki.language.convertPlural = function( count, forms ) { + forms = mediaWiki.language.preConvertPlural( forms, 4 ); + switch ( count % 10 ) { + case 1: + return forms[0]; + case 2: + return forms[1]; + case 3: + case 4: + return forms[2]; + default: + return forms[3]; + } +}; diff --git a/resources/mediawiki.language/languages/cy.js b/resources/mediawiki.language/languages/cy.js new file mode 100644 index 00000000..333d956f --- /dev/null +++ b/resources/mediawiki.language/languages/cy.js @@ -0,0 +1,15 @@ +/** + * Welsh (Cymraeg) language functions + */ + +mediaWiki.language.convertPlural = function( count, forms ) { + forms = mediaWiki.language.preConvertPlural( forms, 6 ); + count = Math.abs( count ); + if ( count >= 0 && count <= 3 ) { + return forms[count]; + } + if ( count == 6 ) { + return forms[4]; + } + return forms[5]; +}; diff --git a/resources/mediawiki.language/languages/dsb.js b/resources/mediawiki.language/languages/dsb.js new file mode 100644 index 00000000..c3eaa1fc --- /dev/null +++ b/resources/mediawiki.language/languages/dsb.js @@ -0,0 +1,18 @@ +/** + * Lower Sorbian (Dolnoserbski) language functions + */ + +mediaWiki.language.convertPlural = function( count, forms ) { + forms = mediaWiki.language.preConvertPlural( forms, 4 ); + switch ( Math.abs( count ) % 100 ) { + case 1: + return forms[0]; + case 2: + return forms[1]; + case 3: + case 4: + return forms[2]; + default: + return forms[3]; + } +}; diff --git a/resources/mediawiki.language/languages/fr.js b/resources/mediawiki.language/languages/fr.js new file mode 100644 index 00000000..bfb52d28 --- /dev/null +++ b/resources/mediawiki.language/languages/fr.js @@ -0,0 +1,8 @@ +/** + * French (Français) language functions + */ + +mediaWiki.language.convertPlural = function( count, forms ) { + forms = mediaWiki.language.preConvertPlural( forms, 2 ); + return ( count <= 1 ) ? forms[0] : forms[1]; +}; diff --git a/resources/mediawiki.language/languages/ga.js b/resources/mediawiki.language/languages/ga.js new file mode 100644 index 00000000..39280138 --- /dev/null +++ b/resources/mediawiki.language/languages/ga.js @@ -0,0 +1,14 @@ +/** + * Irish (Gaeilge) language functions + */ + +mediaWiki.language.convertPlural = function( count, forms ) { + forms = mediaWiki.language.preConvertPlural( forms, 3 ); + if ( count == 1 ) { + return forms[0]; + } + if ( count == 2 ) { + return forms[1]; + } + return forms[2]; +}; diff --git a/resources/mediawiki.language/languages/gd.js b/resources/mediawiki.language/languages/gd.js new file mode 100644 index 00000000..5ac20077 --- /dev/null +++ b/resources/mediawiki.language/languages/gd.js @@ -0,0 +1,18 @@ +/** + * Scots Gaelic (Gàidhlig) language functions + */ + +mediaWiki.language.convertPlural = function( count, forms ) { + forms = mediaWiki.language.preConvertPlural( forms, 4 ); + count = Math.abs( count ); + if ( count === 1 ) { + return forms[0]; + } + if ( count === 2 ) { + return forms[1]; + } + if ( count >= 3 && count <= 10 ) { + return forms[2]; + } + return forms[3]; +}; diff --git a/resources/mediawiki.language/languages/gv.js b/resources/mediawiki.language/languages/gv.js new file mode 100644 index 00000000..afc2b5d4 --- /dev/null +++ b/resources/mediawiki.language/languages/gv.js @@ -0,0 +1,18 @@ +/** + * Manx (Gaelg) language functions + */ + +mediaWiki.language.convertPlural = function( count, forms ) { + forms = mediaWiki.language.preConvertPlural( forms, 4 ); + if ( count > 0 && ( count % 20 ) === 0 ) { + return forms[0]; + } + switch ( count % 10 ) { + case 1: + return forms[1]; + case 2: + return forms[2]; + default: + return forms[3]; + } +}; diff --git a/resources/mediawiki.language/languages/he.js b/resources/mediawiki.language/languages/he.js new file mode 100644 index 00000000..b74440e4 --- /dev/null +++ b/resources/mediawiki.language/languages/he.js @@ -0,0 +1,14 @@ +/** + * Hebrew (עברית) language functions + */ + +mediaWiki.language.convertPlural = function( count, forms ) { + forms = mediaWiki.language.preConvertPlural( forms, 3 ); + if ( count == 1 ) { + return forms[0]; + } + if ( count == 2 && forms[2] ) { + return forms[2]; + } + return forms[1]; +}; diff --git a/resources/mediawiki.language/languages/hi.js b/resources/mediawiki.language/languages/hi.js new file mode 100644 index 00000000..a22a0e17 --- /dev/null +++ b/resources/mediawiki.language/languages/hi.js @@ -0,0 +1,8 @@ +/** + * Hindi (हिन्दी) language functions + */ + +mediaWiki.language.convertPlural = function( count, forms ) { + forms = mediaWiki.language.preConvertPlural( forms, 2 ); + return ( count <= 1 ) ? forms[0] : forms[1]; +}; diff --git a/resources/mediawiki.language/languages/hr.js b/resources/mediawiki.language/languages/hr.js new file mode 100644 index 00000000..e3ce291b --- /dev/null +++ b/resources/mediawiki.language/languages/hr.js @@ -0,0 +1,20 @@ +/** + * Croatian (hrvatski) language functions + */ + +mediaWiki.language.convertPlural = function( count, forms ) { + forms = mediaWiki.language.preConvertPlural( forms, 3 ); + if ( count > 10 && Math.floor( ( count % 100 ) / 10 ) == 1 ) { + return forms[2]; + } + switch ( count % 10 ) { + case 1: + return forms[0]; + case 2: + case 3: + case 4: + return forms[1]; + default: + return forms[2]; + } +}; diff --git a/resources/mediawiki.language/languages/hsb.js b/resources/mediawiki.language/languages/hsb.js new file mode 100644 index 00000000..8651fe41 --- /dev/null +++ b/resources/mediawiki.language/languages/hsb.js @@ -0,0 +1,18 @@ +/** + * Upper Sorbian (Hornjoserbsce) language functions + */ + +mediaWiki.language.convertPlural = function( count, forms ) { + forms = mediaWiki.language.preConvertPlural( forms, 4 ); + switch ( Math.abs( count ) % 100 ) { + case 1: + return forms[0]; + case 2: + return forms[1]; + case 3: + case 4: + return forms[2]; + default: + return forms[3]; + } +}; diff --git a/resources/mediawiki.language/languages/hy.js b/resources/mediawiki.language/languages/hy.js new file mode 100644 index 00000000..734c26df --- /dev/null +++ b/resources/mediawiki.language/languages/hy.js @@ -0,0 +1,8 @@ +/** + * Armenian (Հայերեն) language functions + */ + +mediaWiki.language.convertPlural = function( count, forms ) { + forms = mediaWiki.language.preConvertPlural( forms, 2 ); + return ( Math.abs( count ) <= 1 ) ? forms[0] : forms[1]; +}; diff --git a/resources/mediawiki.language/languages/ksh.js b/resources/mediawiki.language/languages/ksh.js new file mode 100644 index 00000000..ed907325 --- /dev/null +++ b/resources/mediawiki.language/languages/ksh.js @@ -0,0 +1,14 @@ +/** + * Ripuarian (Ripoarƒósh) language functions + */ + +mediaWiki.language.convertPlural = function( count, forms ) { + forms = mediaWiki.language.preConvertPlural( forms, 3 ); + if ( count == 1 ) { + return forms[0]; + } + if ( count == 0 ) { + return forms[2]; + } + return forms[1]; +}; diff --git a/resources/mediawiki.language/languages/ln.js b/resources/mediawiki.language/languages/ln.js new file mode 100644 index 00000000..9b9e456a --- /dev/null +++ b/resources/mediawiki.language/languages/ln.js @@ -0,0 +1,8 @@ +/** + * Lingala (Lingála) language functions + */ + +mediaWiki.language.convertPlural = function( count, forms ) { + forms = mediaWiki.language.preConvertPlural( forms, 2 ); + return ( count <= 1 ) ? forms[0] : forms[1]; +}; diff --git a/resources/mediawiki.language/languages/lt.js b/resources/mediawiki.language/languages/lt.js new file mode 100644 index 00000000..ee0a609b --- /dev/null +++ b/resources/mediawiki.language/languages/lt.js @@ -0,0 +1,17 @@ +/** + * Lithuanian (Lietuvių) language functions + */ + +mediaWiki.language.convertPlural = function( count, forms ) { + if ( forms.length == 2 ) { + return count == 1 ? forms[0] : forms[1]; + } + forms = mediaWiki.language.preConvertPlural( forms, 3 ); + if ( count % 10 == 1 && count % 100 != 11 ) { + return forms[0]; + } + if ( count % 10 >= 2 && ( count % 100 < 10 || count % 100 >= 20 ) ) { + return forms[1]; + } + return forms[2]; +}; diff --git a/resources/mediawiki.language/languages/lv.js b/resources/mediawiki.language/languages/lv.js new file mode 100644 index 00000000..d4bec44a --- /dev/null +++ b/resources/mediawiki.language/languages/lv.js @@ -0,0 +1,8 @@ +/** + * Latvian (Latviešu) language functions + */ + +mediaWiki.language.convertPlural = function( count, forms ) { + forms = mediaWiki.language.preConvertPlural( forms, 2 ); + return ( ( count % 10 == 1 ) && ( count % 100 != 11 ) ) ? forms[0] : forms[1]; +}; diff --git a/resources/mediawiki.language/languages/mg.js b/resources/mediawiki.language/languages/mg.js new file mode 100644 index 00000000..b65e96e3 --- /dev/null +++ b/resources/mediawiki.language/languages/mg.js @@ -0,0 +1,8 @@ +/** + * Malagasy (Malagasy) language functions + */ + +mediaWiki.language.convertPlural = function( count, forms ) { + forms = mediaWiki.language.preConvertPlural( forms, 2 ); + return ( count <= 1 ) ? forms[0] : forms[1]; +}; diff --git a/resources/mediawiki.language/languages/mk.js b/resources/mediawiki.language/languages/mk.js new file mode 100644 index 00000000..5105025c --- /dev/null +++ b/resources/mediawiki.language/languages/mk.js @@ -0,0 +1,8 @@ +/** + * Macedonian (Македонски) language functions + */ + +mediaWiki.language.convertPlural = function( count, forms ) { + forms = mediaWiki.language.preConvertPlural( forms, 2 ); + return ( count % 10 === 1 ) ? forms[0] : forms[1]; +}; diff --git a/resources/mediawiki.language/languages/mo.js b/resources/mediawiki.language/languages/mo.js new file mode 100644 index 00000000..0c4b696a --- /dev/null +++ b/resources/mediawiki.language/languages/mo.js @@ -0,0 +1,14 @@ +/** + * Moldavian (Молдовеняскэ) language functions + */ + +mediaWiki.language.convertPlural = function( count, forms ) { + forms = mediaWiki.language.preConvertPlural( forms, 3 ); + if ( count == 1 ) { + return forms[0]; + } + if ( count == 0 || count % 100 < 20 ) { + return forms[1]; + } + return forms[2]; +}; diff --git a/resources/mediawiki.language/languages/mt.js b/resources/mediawiki.language/languages/mt.js new file mode 100644 index 00000000..44c7bfff --- /dev/null +++ b/resources/mediawiki.language/languages/mt.js @@ -0,0 +1,17 @@ +/** + * Maltese (Malti) language functions + */ + +mediaWiki.language.convertPlural = function( count, forms ) { + forms = mediaWiki.language.preConvertPlural( forms, 4 ); + if ( count == 1 ) { + return forms[0]; + } + if ( count == 0 || ( count % 100 > 1 && count % 100 < 11 ) ) { + return forms[1]; + } + if ( count % 100 > 10 && count % 100 < 20 ) { + return forms[2]; + } + return forms[3]; +}; diff --git a/resources/mediawiki.language/languages/nso.js b/resources/mediawiki.language/languages/nso.js new file mode 100644 index 00000000..30cf1892 --- /dev/null +++ b/resources/mediawiki.language/languages/nso.js @@ -0,0 +1,8 @@ +/** + * Northern Sotho (Sesotho sa Leboa) language functions + */ + +mediaWiki.language.convertPlural = function( count, forms ) { + forms = mediaWiki.language.preConvertPlural( forms, 2 ); + return ( count <= 1 ) ? forms[0] : forms[1]; +}; diff --git a/resources/mediawiki.language/languages/pl.js b/resources/mediawiki.language/languages/pl.js new file mode 100644 index 00000000..03e0d842 --- /dev/null +++ b/resources/mediawiki.language/languages/pl.js @@ -0,0 +1,21 @@ +/** + * Polish (polski) language functions + */ + +mediaWiki.language.convertPlural = function( count, forms ) { + forms = mediaWiki.language.preConvertPlural( forms, 3 ); + count = Math.abs( count ); + if ( count == 1 ) { + return forms[0]; + } + switch ( count % 10 ) { + case 2: + case 3: + case 4: + if ( count / 10 % 10 != 1 ) { + return forms[1]; + } + default: + return forms[2]; + } +}; diff --git a/resources/mediawiki.language/languages/pt-br.js b/resources/mediawiki.language/languages/pt-br.js new file mode 100644 index 00000000..eda10d2e --- /dev/null +++ b/resources/mediawiki.language/languages/pt-br.js @@ -0,0 +1,8 @@ +/** + * Brazilian Portugese (Portuguêsi do Brasil) language functions + */ + +mediaWiki.language.convertPlural = function( count, forms ) { + forms = mediaWiki.language.preConvertPlural( forms, 2 ); + return ( count <= 1 ) ? forms[0] : forms[1]; +}; diff --git a/resources/mediawiki.language/languages/ro.js b/resources/mediawiki.language/languages/ro.js new file mode 100644 index 00000000..42610fe6 --- /dev/null +++ b/resources/mediawiki.language/languages/ro.js @@ -0,0 +1,14 @@ +/** + * Romanian (Română) language functions + */ + +mediaWiki.language.convertPlural = function( count, forms ) { + forms = mediaWiki.language.preConvertPlural( forms, 3 ); + if ( count == 1 ) { + return forms[0]; + } + if ( count == 0 || count % 100 < 20 ) { + return forms[1]; + } + return forms[2]; +}; diff --git a/resources/mediawiki.language/languages/ru.js b/resources/mediawiki.language/languages/ru.js new file mode 100644 index 00000000..17c92931 --- /dev/null +++ b/resources/mediawiki.language/languages/ru.js @@ -0,0 +1,23 @@ +/** + * Russian (Русский) language functions + */ + +mediaWiki.language.convertPlural = function( count, forms ) { + if ( forms.length === 2 ) { + return count == 1 ? forms[0] : forms[1]; + } + forms = mediaWiki.language.preConvertPlural( forms, 3 ); + if ( count > 10 && Math.floor( ( count % 100 ) / 10 ) == 1 ) { + return forms[2]; + } + switch ( count % 10 ) { + case 1: + return forms[0]; + case 2: + case 3: + case 4: + return forms[1]; + default: + return forms[2]; + } +}; diff --git a/resources/mediawiki.language/languages/se.js b/resources/mediawiki.language/languages/se.js new file mode 100644 index 00000000..51ebaf25 --- /dev/null +++ b/resources/mediawiki.language/languages/se.js @@ -0,0 +1,17 @@ +/** + * Northern Sami (Sámegiella) language functions + */ + +mediaWiki.language.convertPlural = function( count, forms ) { + if ( count == 0 ) { + return ''; + } + forms = mediaWiki.language.preConvertPlural( forms, 3 ); + if ( count == 1 ) { + return forms[1]; + } + if ( count == 2 ) { + return forms[2]; + } + return '' +}; diff --git a/resources/mediawiki.language/languages/sh.js b/resources/mediawiki.language/languages/sh.js new file mode 100644 index 00000000..719b0c57 --- /dev/null +++ b/resources/mediawiki.language/languages/sh.js @@ -0,0 +1,23 @@ +/** + * Serbo-Croatian (Srpskohrvatski / Српскохрватски) language functions + */ + +mediaWiki.language.convertPlural = function( count, forms ) { + if ( forms.length === 2 ) { + return count == 1 ? forms[0] : forms[1]; + } + forms = mediaWiki.language.preConvertPlural( forms, 3 ); + if ( count > 10 && Math.floor( ( count % 100 ) / 10 ) == 1 ) { + return forms[2]; + } + switch ( count % 10 ) { + case 1: + return forms[0]; + case 2: + case 3: + case 4: + return forms[1]; + default: + return forms[2]; + } +}; diff --git a/resources/mediawiki.language/languages/sk.js b/resources/mediawiki.language/languages/sk.js new file mode 100644 index 00000000..21a22b21 --- /dev/null +++ b/resources/mediawiki.language/languages/sk.js @@ -0,0 +1,14 @@ +/** + * Slovak (Slovenƒçina) language functions + */ + +mediaWiki.language.convertPlural = function( count, forms ) { + forms = mediaWiki.language.preConvertPlural( forms, 3 ); + if ( count == 1 ) { + return forms[0]; + } + if ( count == 2 || count == 3 || count == 4 ) { + return forms[1]; + } + return forms[2]; +}; diff --git a/resources/mediawiki.language/languages/sl.js b/resources/mediawiki.language/languages/sl.js new file mode 100644 index 00000000..a887e0e0 --- /dev/null +++ b/resources/mediawiki.language/languages/sl.js @@ -0,0 +1,20 @@ +/** + * Slovenian (Slovenščina) language functions + */ + +mediaWiki.language.convertPlural = function( count, forms ) { + forms = mediaWiki.language.preConvertPlural( forms, 5 ); + if ( count % 100 == 1 ) { + return forms[0]; + } + if ( count % 100 == 2 ) { + return forms[1]; + } + if ( count % 100 == 3 || count % 100 == 4 ) { + return forms[2]; + } + if ( count != 0 ) { + return forms[3]; + } + return forms[4]; +}; diff --git a/resources/mediawiki.language/languages/sma.js b/resources/mediawiki.language/languages/sma.js new file mode 100644 index 00000000..d3ccf625 --- /dev/null +++ b/resources/mediawiki.language/languages/sma.js @@ -0,0 +1,14 @@ +/** + * Southern Sami (Åarjelsaemien) language functions + */ + +mediaWiki.language.convertPlural = function( count, forms ) { + forms = mediaWiki.language.preConvertPlural( forms, 4 ); + if ( count == 1 ) { + return forms[1]; + } + if ( count == 2 ) { + return forms[2]; + } + return forms[3]; +}; diff --git a/resources/mediawiki.language/languages/sr-ec.js b/resources/mediawiki.language/languages/sr-ec.js new file mode 100644 index 00000000..af48eb07 --- /dev/null +++ b/resources/mediawiki.language/languages/sr-ec.js @@ -0,0 +1,20 @@ +/** + * Serbian (cyrillic script) language functions + */ + +mediaWiki.language.convertPlural = function( count, forms ) { + forms = mediaWiki.language.preConvertPlural( forms, 3 ); + if ( count > 10 && Math.floor( ( count % 100 ) / 10 ) == 1 ) { + return forms[2]; + } + switch ( count % 10 ) { + case 1: + return forms[0]; + case 2: + case 3: + case 4: + return forms[1]; + default: + return forms[2]; + } +}; diff --git a/resources/mediawiki.language/languages/sr-el.js b/resources/mediawiki.language/languages/sr-el.js new file mode 100644 index 00000000..fd6ca012 --- /dev/null +++ b/resources/mediawiki.language/languages/sr-el.js @@ -0,0 +1,20 @@ +/** + * Serbian (latin script) language functions + */ + +mediaWiki.language.convertPlural = function( count, forms ) { + forms = mediaWiki.language.preConvertPlural( forms, 3 ); + if ( count > 10 && Math.floor( ( count % 100 ) / 10 ) == 1 ) { + return forms[2]; + } + switch ( count % 10 ) { + case 1: + return forms[0]; + case 2: + case 3: + case 4: + return forms[1]; + default: + return forms[2]; + } +}; diff --git a/resources/mediawiki.language/languages/sr.js b/resources/mediawiki.language/languages/sr.js new file mode 100644 index 00000000..25cdc8a2 --- /dev/null +++ b/resources/mediawiki.language/languages/sr.js @@ -0,0 +1,23 @@ +/** + * Serbian (Српски / Srpski) language functions + */ + +mediaWiki.language.convertPlural = function( count, forms ) { + if ( forms.length === 2 ) { + return ( count == 1 ) ? forms[0] : forms[1]; + } + forms = mediaWiki.language.preConvertPlural( forms, 3 ); + if ( count > 10 && Math.floor( ( count % 100 ) / 10 ) == 1 ) { + return forms[2]; + } + switch ( count % 10 ) { + case 1: + return forms[0]; + case 2: + case 3: + case 4: + return forms[1]; + default: + return forms[2]; + } +}; diff --git a/resources/mediawiki.language/languages/ti.js b/resources/mediawiki.language/languages/ti.js new file mode 100644 index 00000000..69b6d9b8 --- /dev/null +++ b/resources/mediawiki.language/languages/ti.js @@ -0,0 +1,8 @@ +/** + * Tigrinya (ትግርኛ) language functions + */ + +mediaWiki.language.convertPlural = function( count, forms ) { + forms = mediaWiki.language.preConvertPlural(forms, 2); + return (count <= 1) ? forms[0] : forms[1]; +}; diff --git a/resources/mediawiki.language/languages/tl.js b/resources/mediawiki.language/languages/tl.js new file mode 100644 index 00000000..29219fdb --- /dev/null +++ b/resources/mediawiki.language/languages/tl.js @@ -0,0 +1,7 @@ +/** + * Tagalog (Tagalog) language functions + */ +mediaWiki.language.convertPlural = function( count, forms ) { + forms = mediaWiki.language.preConvertPlural( forms, 2 ); + return ( count <= 1 ) ? forms[0] : forms[1]; +}; diff --git a/resources/mediawiki.language/languages/uk.js b/resources/mediawiki.language/languages/uk.js new file mode 100644 index 00000000..5c1294e7 --- /dev/null +++ b/resources/mediawiki.language/languages/uk.js @@ -0,0 +1,23 @@ +/** + * Ukrainian (Українська) language functions + */ + +mediaWiki.language.convertPlural = function( count, forms ) { + if ( forms.length === 2 ) { + return count == 1 ? forms[0] : forms[1]; + } + forms = mediaWiki.language.preConvertPlural( forms, 3 ); + if ( count > 10 && Math.floor( ( count % 100 ) / 10 ) == 1 ) { + return forms[2]; + } + switch ( count % 10 ) { + case 1: + return forms[0]; + case 2: + case 3: + case 4: + return forms[1]; + default: + return forms[2]; + } +}; diff --git a/resources/mediawiki.language/languages/wa.js b/resources/mediawiki.language/languages/wa.js new file mode 100644 index 00000000..e1773759 --- /dev/null +++ b/resources/mediawiki.language/languages/wa.js @@ -0,0 +1,8 @@ +/** + * Walloon (Walon) language functions + */ + +mediaWiki.language.convertPlural = function( count, forms ) { + forms = mediaWiki.language.preConvertPlural( forms, 2 ); + return ( count <= 1 ) ? forms[0] : forms[1]; +}; diff --git a/resources/mediawiki.language/mediawiki.language.js b/resources/mediawiki.language/mediawiki.language.js new file mode 100644 index 00000000..f199101b --- /dev/null +++ b/resources/mediawiki.language/mediawiki.language.js @@ -0,0 +1,102 @@ +/** + * Base language object + * + * Localized Language support attempts to mirror some of the functionality of + * Language.php in MediaWiki. This object contains methods for loading and + * transforming message text. + */ +( function( $, mw ) { + +mw.language = { + /** + * Process the PLURAL template substitution + * + * @param {object} template Template object + * @format template + * { + * 'title': [title of template], + * 'parameters': [template parameters] + * } + * @example {{Template:title|params}} + */ + 'procPLURAL': function( template ) { + if ( template.title && template.parameters && mw.language.convertPlural ) { + // Check if we have forms to replace + if ( template.parameters.length == 0 ) { + return ''; + } + // Restore the count into a Number ( if it got converted earlier ) + var count = mw.language.convertNumber( template.title, true ); + // Do convertPlural call + return mw.language.convertPlural( parseInt( count ), template.parameters ); + } + // Could not process plural return first form or nothing + if ( template.parameters[0] ) { + return template.parameters[0]; + } + return ''; + }, + /** + * Plural form transformations, needed for some languages. + * + * @param count integer Non-localized quantifier + * @param forms array List of plural forms + * @return string Correct form for quantifier in this language + */ + 'convertPlural': function( count, forms ){ + if ( !forms || forms.length == 0 ) { + return ''; + } + return ( parseInt( count ) == 1 ) ? forms[0] : forms[1]; + }, + /** + * Pads an array to a specific length by copying the last one element. + * + * @param forms array Number of forms given to convertPlural + * @param count integer Number of forms required + * @return array Padded array of forms + */ + 'preConvertPlural': function( forms, count ) { + while ( forms.length < count ) { + forms.push( forms[ forms.length-1 ] ); + } + return forms; + }, + /** + * Converts a number using digitTransformTable. + * + * @param {number} number Value to be converted + * @param {boolean} integer Convert the return value to an integer + */ + 'convertNumber': function( number, integer ) { + if ( !mw.language.digitTransformTable ) { + return number; + } + // Set the target Transform table: + var transformTable = mw.language.digitTransformTable; + // Check if the "restore" to Latin number flag is set: + if ( integer ) { + if ( parseInt( number ) == number ) { + return number; + } + var tmp = []; + for ( var i in transformTable ) { + tmp[ transformTable[ i ] ] = i; + } + transformTable = tmp; + } + var numberString = '' + number; + var convertedNumber = ''; + for ( var i = 0; i < numberString.length; i++ ) { + if ( transformTable[ numberString[i] ] ) { + convertedNumber += transformTable[numberString[i]]; + } else { + convertedNumber += numberString[i]; + } + } + return integer ? parseInt( convertedNumber ) : convertedNumber; + }, + // Digit Transform Table, populated by language classes where applicable + 'digitTransformTable': null +}; +} )( jQuery, mediaWiki ); \ No newline at end of file -- cgit v1.2.2