From 90a78232ede9d6378a2393c5e6157f4ee7668575 Mon Sep 17 00:00:00 2001 From: phpnut Date: Thu, 21 Dec 2006 22:05:42 +0000 Subject: [PATCH] Changed Configure::read() so it would return null if key is not set. Refactored I18n and I10n classes. Removing languages that are not found in browsers git-svn-id: https://svn.cakephp.org/repo/branches/1.2.x.x@4117 3807eeeb-6ff5-0310-8944-8be069107fe0 --- cake/libs/configure.php | 10 +- cake/libs/i18n.php | 6 +- cake/libs/l10n.php | 1396 +++++++++------------------------------ 3 files changed, 311 insertions(+), 1101 deletions(-) diff --git a/cake/libs/configure.php b/cake/libs/configure.php index f32d34108..3a20ecbab 100644 --- a/cake/libs/configure.php +++ b/cake/libs/configure.php @@ -162,9 +162,15 @@ class Configure extends Object { $name = $_this->__configVarNames($var); if(count($name) > 1){ - return $_this->{$name[0]}[$name[1]]; + if(isset($_this->{$name[0]}[$name[1]])) { + return $_this->{$name[0]}[$name[1]]; + } + return null; } else { - return $_this->{$name[0]}; + if(isset($_this->{$name[0]})) { + return $_this->{$name[0]}; + } + return null; } } /** diff --git a/cake/libs/i18n.php b/cake/libs/i18n.php index 40187ec9a..f2d6d2ca3 100644 --- a/cake/libs/i18n.php +++ b/cake/libs/i18n.php @@ -20,7 +20,7 @@ * @link http://www.cakefoundation.org/projects/info/cakephp CakePHP Project * @package cake * @subpackage cake.cake.libs - * @since CakePHP v 1.2.0.4114 + * @since CakePHP v 1.2.0.4116 * @version $Revision$ * @modifiedby $LastChangedBy$ * @lastmodified $Date$ @@ -93,10 +93,12 @@ class I18n extends Object { */ function translate($message, $message2 = null, $domain = null, $category = null, $count = null, $directory) { $_this =& I18n::getInstance(); + $language = Configure::read('Config.language'); if(!empty($_SESSION['Config']['locale'])) { $_this->locale = $_SESSION['Config']['locale']; - } else { + } else{ + $_this->__l10n->get($language); $_this->locale = $_this->__l10n->locale; } diff --git a/cake/libs/l10n.php b/cake/libs/l10n.php index 06618e131..5acc6d907 100644 --- a/cake/libs/l10n.php +++ b/cake/libs/l10n.php @@ -20,7 +20,7 @@ * @link http://www.cakefoundation.org/projects/info/cakephp CakePHP Project * @package cake * @subpackage cake.cake.libs - * @since CakePHP v 1.2.0.4114 + * @since CakePHP v 1.2.0.4116 * @version $Revision$ * @modifiedby $LastChangedBy$ * @lastmodified $Date$ @@ -35,1121 +35,323 @@ * @subpackage cake.cake.libs */ class L10n extends Object { +/** + * Enter description here... + * + * @var string + * @access public + */ var $language = 'English (United States)'; +/** + * Enter description here... + * + * @var string + * @access public + */ var $languagePath = 'eng'; +/** + * Enter description here... + * + * @var string + * @access public + */ var $lang = 'en-us'; - var $locale = 'en_US'; +/** + * Enter description here... + * + * @var string + * @access public + */ + var $locale = 'en_us'; +/** + * Enter description here... + * + * @var string + * @access public + */ var $winLocale = 'eng'; - var $_l10nMap = array( -/*Afar*/ 'aar' => 'aa', -/*Abkhazian*/ 'abk' => 'ab', -/*Achinese*/ 'ace' => 'ace', -/*Acoli*/ 'ach' => 'ach', -/*Adangme*/ 'ada' => 'ada', -/*Adyghe; Adygei*/ 'ady' => 'ady', -/*Afro-Asiatic (Other)*/ 'afa' => 'afa', -/*Afrihili*/ 'afh' => 'afh', -/*Afrikaans*/ 'afr' => 'af', -/*Ainu*/ 'ain' => 'ain', -/*Akan*/ 'aka' => 'ak', -/*Akkadian*/ 'akk' => 'akk', -/*Albanian*/ 'alb' => 'sq', -/*Aleut*/ 'ale' => 'ale', -/*Algonquian Languages*/ 'alg' => 'alg', -/*Southern Altai*/ 'alt' => 'alt', -/*Amharic*/ 'amh' => 'am', -/*English, Old*/ 'ang' => 'ang', -/*Apache languages*/ 'apa' => 'apa', -/*Arabic*/ 'ara' => 'ar', -/*Aramaic*/ 'arc' => 'arc', -/*Aragonese*/ 'arg' => 'an', -/*Armenian*/ 'arm' => 'hy', -/*Araucanian*/ 'arn' => 'arn', -/*Arapaho*/ 'arp' => 'arp', -/*Arawak*/ 'arw' => 'arw', -/*Assamese */ 'asm' => 'as', -/*Asturian; Bable*/ 'ast' => 'ast', -/*Athapascan languages*/ 'ath' => 'ath', -/*Australian languages*/ 'aus' => 'aus', -/*Avaric*/ 'ava' => 'av', -/*Avestan*/ 'ave' => 'ae', -/*Awadhi*/ 'awa' => 'awa', -/*Aymara*/ 'aym' => 'ay', -/*Azerbaijani*/ 'aze' => 'az', -/*Banda*/ 'bad' => 'bad', -/*Bamileke languages*/ 'bai' => 'bai', -/*Bashkir*/ 'bak' => 'ba', -/*Baluchi*/ 'bal' => 'bal', -/*Bambara*/ 'bam' => 'bm', -/*Balinese*/ 'ban' => 'ban', -/*Basque*/ 'baq' => 'eu', -/*Basa*/ 'bas' => 'bas', -/*Baltic (Other)*/ 'bat' => 'bat', -/*Beja*/ 'bej' => 'bej', -/*Belarusian*/ 'bel' => 'be', -/*Bemba*/ 'bem' => 'bem', -/*Bengali*/ 'ben' => 'ben', -/*Berber (Other)*/ 'ber' => 'ber', -/*Bhojpuri*/ 'bho' => 'bho', -/*Bihari*/ 'bih' => 'bh', -/*Bikol*/ 'bik' => 'bik', -/*Bini*/ 'bin' => 'bin', -/*Bislama*/ 'bis' => 'bis', -/*Siksika*/ 'bla' => 'bla', -/*Bantu (Other)*/ 'bnt' => 'bnt', -/*Bosnian*/ 'bos' => 'bs', -/*Braj*/ 'bra' => 'bra', -/*Breton*/ 'bre' => 'br', -/*Batak (Indonesia)*/ 'btk' => 'btk', -/*Buriat*/ 'bua' => 'bua', -/*Buginese*/ 'bug' => 'bug', -/*Bulgarian*/ 'bul' => 'bg', -/*Burmese*/ 'bur' => 'my', -/*Blin; Bilin*/ 'byn' => 'byn', -/*Caddo*/ 'cad' => 'cad', -/*Central American Indian*/ 'cai' => 'cai', -/*Carib*/ 'car' => 'car', -/*Catalan; Valencian*/ 'cat' => 'ca', -/*Caucasian (Other)*/ 'cau' => 'cau', -/*Cebuano*/ 'ceb' => 'ceb', -/*Celtic (Other)*/ 'cel' => 'cel', -/*Chamorro*/ 'cha' => 'cha', -/*Chibcha*/ 'chb' => 'chb', -/*Chechen*/ 'che' => 'ce', -/*Chagatai*/ 'chg' => 'chg', -/*Chinese*/ 'chi' => 'zh', -/*Chuukese*/ 'chk' => 'chk', -/*Mari*/ 'chm' => 'chm', -/*Chinook jargon*/ 'chn' => 'chn', -/*Choctaw*/ 'cho' => 'cho', -/*Chipewyan*/ 'chp' => 'chp', -/*Cherokee*/ 'chr' => 'chr', -/*Church Slavic; - Old Slavonic; - Church Slavonic;*/ 'chu' => 'cu', -/*Chuvash*/ 'chv' => 'cv', -/*Cheyenne*/ 'chy' => 'chy', -/*Chamic languages*/ 'cmc' => 'cmc', -/*Coptic*/ 'cop' => 'cop', -/*Cornish*/ 'cor' => 'kw', -/*Corsican*/ 'cos' => 'co', -/*Creoles and pidgins, - English based (Other)*/ 'cpe' => 'cpe', -/*Creoles and pidgins, - French-based (Other)*/ 'cpf' => 'cpf', -/*Creoles and pidgins*/ 'cpp' => 'cpp', -/*Cree*/ 'cre' => 'cr', -/*Crimean Tatar; - Crimean Turkish*/ 'crh' => 'crh', -/*Creoles and pidgins - (Other)*/ 'crp' => 'crp', -/*Kashubian*/ 'csb' => 'csb', -/*Cushitic (Other)*/ 'cus' => 'cus', -/*Czech*/ 'cze' => 'cs', -/*Dakota*/ 'dak' => 'dak', -/*Danish*/ 'dan' => 'da', -/*Dargwa*/ 'dar' => 'dar', -/*Dayak*/ 'day' => 'day', -/*Delaware*/ 'del' => 'del', -/*Slave (Athapascan)*/ 'den' => 'den', -/*Dogrib*/ 'dgr' => 'dgr', -/*Dinka*/ 'din' => 'din', -/*Divehi*/ 'div' => 'dv', -/*Dogri*/ 'doi' => 'doi', -/*Dravidian (Other)*/ 'dra' => 'dra', -/*Lower Sorbian*/ 'dsb' => 'dsb', -/*Duala*/ 'dua' => 'dua', -/*Dutch, Middle*/ 'dum' => 'dum', -/*Dutch; Flemish*/ 'dut' => 'nl', -/*Dyula*/ 'dyu' => 'dyu', -/*Dzongkha*/ 'dzo' => 'dzo', -/*Efik*/ 'efi' => 'efi', -/*Egyptian (Ancient)*/ 'egy' => 'egy', -/*Ekajuk*/ 'eka' => 'eka', -/*Elamite*/ 'elx' => 'elx', -/*English*/ 'eng' => 'en', -/*English, Middle*/ 'enm' => 'enm', -/*Esperanto*/ 'epo' => 'eo', -/*Estonian*/ 'est' => 'et', -/*Ewe*/ 'ewe' => 'ee', -/*Ewondo*/ 'ewo' => 'ewo', -/*Fang*/ 'fan' => 'fan', -/*Faroese*/ 'fao' => 'fo', -/*Fanti*/ 'fat' => 'fat', -/*Fijian*/ 'fij' => 'fj', -/*Filipino; Pilipino*/ 'fil' => 'fil', -/*Finnish*/ 'fin' => 'fi', -/*Finno-Ugrian (Other)*/ 'fiu' => 'fiu', -/*Fon*/ 'fon' => 'fon', -/*French*/ 'fre' => 'fr', -/*French, Middle*/ 'frm' => 'frm', -/*French, Old*/ 'fro' => 'fro', -/*Frisian*/ 'fry' => 'fy', -/*Fulah*/ 'ful' => 'ff', -/*Friulian*/ 'fur' => 'fur', -/*Ga*/ 'gaa' => 'gaa', -/*Gayo*/ 'gay' => 'gay', -/*Gbaya*/ 'gba' => 'gba', -/*Germanic (Other)*/ 'gem' => 'gem', -/*Georgian*/ 'geo' => 'ka', -/*German*/ 'ger' => 'de', -/*Geez*/ 'gez' => 'gez', -/*Gilbertese*/ 'gil' => 'gil', -/*Gaelic; - Scottish Gaelic*/ 'gla' => 'gd', -/*Irish*/ 'gle' => 'ga', -/*Galician*/ 'glg' => 'gl', -/*Manx*/ 'glv' => 'gv', -/*German, Middle High*/ 'gmh' => 'gmh', -/*German, Old High*/ 'goh' => 'goh', -/*Gondi*/ 'gon' => 'gon', -/*Gorontalo*/ 'gor' => 'gor', -/*Gothic*/ 'got' => 'got', -/*Grebo*/ 'grb' => 'grb', -/*Greek, Ancient*/ 'grc' => 'grc', -/*Greek, Modern*/ 'gre' => 'el', -/*Guarani*/ 'grn' => 'gn', -/*Gujarati*/ 'guj' => 'gu', -/*Gwich´in*/ 'gwi' => 'gwi', -/*Haida*/ 'hai' => 'hai', -/*Haitian; - Haitian Creole*/ 'hat' => 'ht', -/*Hausa*/ 'hau' => 'ha', -/*Hawaiian*/ 'haw' => 'haw', -/*Hebrew*/ 'heb' => 'he', -/*Herero*/ 'her' => 'hz', -/*Hiligaynon*/ 'hil' => 'hil', -/*Himachali*/ 'him' => 'him', -/*Hindi*/ 'hin' => 'hi', -/*Hmong*/ 'hmn' => 'hmn', -/*Hiri Motu*/ 'hmo' => 'ho', -/*Upper Sorbian*/ 'hsb' => 'hsb', -/*Hungarian*/ 'hun' => 'hu', -/*Hupa*/ 'hup' => 'hup', -/*Iban*/ 'iba' => 'iba', -/*Igbo*/ 'ibo' => 'ig', -/*Icelandic*/ 'ice' => 'is', -/*Ido*/ 'ido' => 'io', -/*Sichuan Yi*/ 'iii' => 'ii', -/*Ijo*/ 'ijo' => 'ijo', -/*Inuktitut*/ 'iku' => 'iku', -/*Interlingue*/ 'ile' => 'ie', -/*Iloko*/ 'ilo' => 'ilo', -/*Indic (Other)*/ 'inc' => 'inc', -/*Indonesian*/ 'ind' => 'id', -/*Indo-European (Other)*/ 'ine' => 'ine', -/*Ingush*/ 'inh' => 'inh', -/*Inupiaq*/ 'ipk' => 'ik', -/*Iranian (Other)*/ 'ira' => 'ira', -/*Iroquoian languages*/ 'iro' => 'iro', -/*Italian*/ 'ita' => 'it', -/*Javanese*/ 'jav' => 'jav', -/*Lojban*/ 'jbo' => 'jbo', -/*Japanese*/ 'jpn' => 'jpn', -/*Judeo-Persian*/ 'jpr' => 'jpr', -/*Judeo-Arabic*/ 'jrb' => 'jrb', -/*Kara-Kalpak*/ 'kaa' => 'kaa', -/*Kabyle*/ 'kab' => 'kab', -/*Kachin*/ 'kac' => 'kac', -/*Kalaallisut; Greenlandic*/'kal' => 'kl', -/*Kamba*/ 'kam' => 'kam', -/*Kannada*/ 'kan' => 'kan', -/*Karen*/ 'kar' => 'kar', -/*Kashmiri*/ 'kas' => 'kas', -/*Kanuri*/ 'kau' => 'kau', -/*Kawi*/ 'kaw' => 'kaw', -/*Kazakh*/ 'kaz' => 'kk', -/*Kabardian*/ 'kbd' => 'kbd', -/*Khasi*/ 'kha' => 'kha', -/*Khoisan (Other)*/ 'khi' => 'khi', -/*Khmer*/ 'khm' => 'khm', -/*Khotanese*/ 'kho' => 'kho', -/*Kikuyu; Gikuyu*/ 'kik' => 'ki', -/*Kinyarwanda*/ 'kin' => 'kin', -/*Kirghiz*/ 'kir' => 'kir', -/*Kimbundu*/ 'kmb' => 'kmb', -/*Konkani*/ 'kok' => 'kok', -/*Komi*/ 'kom' => 'kom', -/*Kongo*/ 'kon' => 'koo', -/*Korean*/ 'kor' => 'ko', -/*Kosraean*/ 'kos' => 'kos', -/*Kpelle*/ 'kpe' => 'kpe', -/*Karachay-Balkar*/ 'krc' => 'krc', -/*Kru*/ 'kro' => 'kro', -/*Kurukh*/ 'kru' => 'kru', -/*Kuanyama; Kwanyama*/ 'kua' => 'kua', -/*Kumyk*/ 'kum' => 'kum', -/*Kurdish*/ 'kur' => 'ku', -/*Kutenai*/ 'kut' => 'kut', -/*Ladino*/ 'lad' => 'lad', -/*Lahnda*/ 'lah' => 'lah', -/*Lamba*/ 'lam' => 'lam', -/*Lao*/ 'lao' => 'lo', -/*Latin*/ 'lat' => 'lat', -/*Latvian*/ 'lav' => 'lav', -/*Lezghian*/ 'lez' => 'lez', -/*Limburgan; - Limburger; - Limburgish*/ 'lim' => 'lim', -/*Lingala*/ 'lin' => 'lin', -/*Lithuanian*/ 'lit' => 'lt', -/*Mongo*/ 'lol' => 'lol', -/*Lozi*/ 'loz' => 'loz', -/*Luxembourgish; - Letzeburgesch*/ 'ltz' => 'ltz', -/*Luba-Lulua*/ 'lua' => 'lua', -/*Luba-Katanga*/ 'lub' => 'lub', -/*Ganda*/ 'lug' => 'lug', -/*Luiseno*/ 'lui' => 'lui', -/*Lunda*/ 'lun' => 'lun', -/*Luo (Kenya and Tanzania)*/'luo' => 'luo', -/*Lushai*/ 'lus' => 'lus', -/*Macedonian*/ 'mac' => 'mac', -/*Madurese*/ 'mad' => 'mad', -/*Magahi*/ 'mag' => 'mag', -/*Marshallese*/ 'mah' => 'mah', -/*Maithili*/ 'mai' => 'mai', -/*Makasar*/ 'mak' => 'mak', -/*Malayalam*/ 'mal' => 'mal', -/*Mandingo*/ 'man' => 'man', -/*Maori*/ 'mao' => 'mi', -/*Austronesian (Other)*/ 'map' => 'map', -/*Marathi*/ 'mar' => 'mar', -/*Masai*/ 'mas' => 'mas', -/*Malay*/ 'may' => 'ms', -/*Moksha*/ 'mdf' => 'mdf', -/*Mandar*/ 'mdr' => 'mdr', -/*Mende*/ 'men' => 'men', -/*Irish, Middle*/ 'mga' => 'mga', -/*Micmac*/ 'mic' => 'mic', -/*Minangkabau*/ 'min' => 'min', -/*Mon-Khmer (Other)*/ 'mkh' => 'mkh', -/*Malagasy*/ 'mlg' => 'mlg', -/*Maltese*/ 'mlt' => 'mlt', -/*Manchu*/ 'mnc' => 'mnc', -/*Manipuri*/ 'mni' => 'mni', -/*Manobo languages*/ 'mno' => 'mno', -/*Mohawk*/ 'moh' => 'moh', -/*Moldavian*/ 'mol' => 'mol', -/*Mongolian*/ 'mon' => 'mon', -/*Mossi*/ 'mos' => 'mos', -/*unda languages*/ 'mun' => 'mun', -/*Creek*/ 'mus' => 'mus', -/*Mirandese*/ 'mwl' => 'mwl', -/*Marwari*/ 'mwr' => 'mwr', -/*Mayan languages*/ 'myn' => 'myn', -/*Erzya*/ 'myv' => 'myv', -/*Nahuatl*/ 'nah' => 'nah', -/*North American Indian*/ 'nai' => 'nai', -/*Neapolitan*/ 'nap' => 'nap', -/*Nauru*/ 'nau' => 'nau', -/*Navajo; Navaho*/ 'nav' => 'nav', -/*South Ndebele*/ 'nbl' => 'nbl', -/*North Ndebele*/ 'nde' => 'nde', -/*Ndonga*/ 'ndo' => 'ndo', -/*Low German; Low Saxon*/ 'nds' => 'nds', -/*Nepali*/ 'nep' => 'nep', -/*Newari; Nepal Bhasa*/ 'new' => 'new', -/*Nias*/ 'nia' => 'nia', -/*Niger-Kordofanian*/ 'nic' => 'nic', -/*Niuean*/ 'niu' => 'niu', -/*Norwegian Nynorsk*/ 'nno' => 'nno', -/*Norwegian Bokmċl*/ 'nob' => 'nob', -/*Nogai*/ 'nog' => 'nog', -/*Norse, Old*/ 'non' => 'non', -/*Norwegian*/ 'nor' => 'nor', -/*Sotho, Northern*/ 'nso' => 'nso', -/*Nubian languages'*/ 'nub' => 'nub', -/*Classical Newari; - Old Newari; - Classical Nepal Bhasa*/ 'nwc' => 'nwc', -/*Chichewa; Chewa; Nyanja*/ 'nya' => 'nya', -/*Nyamwezi*/ 'nym' => 'nym', -/*Nyankole*/ 'nyn' => 'nyn', -/*Nyoro*/ 'nyo' => 'nyo', -/*Nzima*/ 'nzi' => 'nzi', -/*Occitan; Provençal*/ 'oci' => 'oci', -/*Ojibwa*/ 'oji' => 'oji', -/*Oriya*/ 'ori' => 'ori', -/*Oromo*/ 'orm' => 'orm', -/*Osage*/ 'osa' => 'osa', -/*Ossetian; Ossetic*/ 'oss' => 'oss', -/*Turkish, Ottoman*/ 'ota' => 'ota', -/*Otomian languages*/ 'oto' => 'oto', -/*Papuan (Other)*/ 'paa' => 'paa', -/*Pangasinan*/ 'pag' => 'pag', -/*Pahlavi*/ 'pal' => 'pal', -/*Pampanga*/ 'pam' => 'pam', -/*Panjabi; Punjabi*/ 'pan' => 'pan', -/*Papiamento*/ 'pap' => 'pap', -/*Palauan*/ 'pau' => 'pau', -/*Persian, Old*/ 'peo' => 'peo', -/*Persian*/ 'per' => 'fa', -/*Philippine (Other)*/ 'phi' => 'phi', -/*Phoenician*/ 'phn' => 'phn', -/*Pali*/ 'pli' => 'pli', -/*Polish*/ 'pol' => 'pol', -/*Pohnpeian*/ 'pon' => 'pon', -/*Portuguese*/ 'por' => 'por', -/*Prakrit languages*/ 'pra' => 'pra', -/*Provençal, Old*/ 'pro' => 'pro', -/*Pushto*/ 'pus' => 'pus', -/*Quechua*/ 'que' => 'que', -/*Rajasthani*/ 'raj' => 'raj', -/*Rapanui*/ 'rap' => 'rap', -/*Rarotongan*/ 'rar' => 'rar', -/*Romance (Other)*/ 'roa' => 'roa', -/*Raeto-Romance*/ 'roh' => 'roh', -/*Romany*/ 'rom' => 'rom', -/*Romanian*/ 'rum' => 'ro', -/*Rundi*/ 'run' => 'rn', -/*Aromanian, - Arumanian, - Macedo-Romanian*/ 'rup' => 'rup', -/*Russian*/ 'rus' => 'ru', -/*Sandawe*/ 'sad' => 'sad', -/*Sango*/ 'sag' => 'sg', -/*Yakut*/ 'sah' => 'sah', -/*South American Indian*/ 'sai' => 'sai', -/*Salishan languages*/ 'sal' => 'sal', -/*Samaritan Aramaic*/ 'sam' => 'sam', -/*Sanskrit*/ 'san' => 'sa', -/*Sasak*/ 'sas' => 'sas', -/*Santali*/ 'sat' => 'sat', -/*Serbian*/ 'scc' => 'sr', -/*Sicilian*/ 'scn' => 'scn', -/*Scots*/ 'sco' => 'sco', -/*Croatian*/ 'scr' => 'hr', -/*Selkup*/ 'sel' => 'sel', -/*Semitic (Other)*/ 'sem' => 'sem', -/*Irish, Old*/ 'sga' => 'sga', -/*Shan*/ 'shn' => 'shn', -/*Sidamo*/ 'sid' => 'sid', -/*Sinhala; Sinhalese*/ 'sin' => 'si', -/*Siouan languages*/ 'sio' => 'sio', -/*Sino-Tibetan (Other)*/ 'sit' => 'sit', -/*Slavic (Other)*/ 'sla' => 'sla', -/*Slovak*/ 'slo' => 'sk', -/*Slovenian*/ 'slv' => 'sl', -/*Southern Sami*/ 'sma' => 'sma', -/*Northern Sami*/ 'sme' => 'se', -/*Sami languages (Other)*/ 'smi' => 'smi', -/*Lule Sami*/ 'smj' => 'smj', -/*Inari Sami*/ 'smn' => 'smn', -/*Samoan*/ 'smo' => 'sm', -/*Skolt Sami*/ 'sms' => 'sms', -/*Shona*/ 'sna' => 'sn', -/*Sindhi*/ 'snd' => 'sd', -/*Soninke*/ 'snk' => 'snk', -/*Sogdian*/ 'sog' => 'sog', -/*Somali*/ 'som' => 'so', -/*Songhai*/ 'son' => 'son', -/*Sotho, Southern*/ 'sot' => 'st', -/*Spanish; Castilian*/ 'spa' => 'es', -/*Sardinian*/ 'srd' => 'sc', -/*Serer*/ 'srr' => 'srr', -/*Nilo-Saharan (Other)*/ 'ssa' => 'ssa', -/*Swati*/ 'ssw' => 'ss', -/*Sukuma*/ 'suk' => 'suk', -/*Sundanese*/ 'sun' => 'su', -/*Susu*/ 'sus' => 'sus', -/*Sumerian*/ 'sux' => 'sux', -/*Swahili*/ 'swa' => 'swa', -/*Swedish*/ 'swe' => 'swe', -/*Syriac*/ 'syr' => 'syr', -/*Tahitian*/ 'tah' => 'ty', -/*Tai (Other)*/ 'tai' => 'tai', -/*Tamil*/ 'tam' => 'ta', -/*Tatar*/ 'tat' => 'tt', -/*Telugu*/ 'tel' => 'te', -/*Timne*/ 'tem' => 'tem', -/*Tereno*/ 'ter' => 'ter', -/*Tetum*/ 'tet' => 'tet', -/*Tajik*/ 'tgk' => 'tg', -/*Tagalog*/ 'tgl' => 'tl', -/*Thai*/ 'tha' => 'th', -/*Tibetan*/ 'tib' => 'bo', -/*Tigre*/ 'tig' => 'tig', -/*Tigrinya*/ 'tir' => 'ti', -/*Tiv*/ 'tiv' => 'tiv', -/*Tokelau*/ 'tkl' => 'tkl', -/*Klingon; tlhlngan-Hol*/ 'tlh' => 'tlh', -/*Tlingit*/ 'tli' => 'tli', -/*Tamashek*/ 'tmh' => 'tmh', -/*Tonga (Nyasa)*/ 'tog' => 'tog', -/*Tonga (Tonga Islands)*/ 'ton' => 'to', -/*Tok Pisin'*/ 'tpi' => 'tpi', -/*Tsimshian*/ 'tsi' => ' tsi', -/*Tswana*/ 'tsn' => 'tn', -/*Tsonga*/ 'tso' => 'ts', -/*Turkmen*/ 'tuk' => 'tk', -/*Tumbuka*/ 'tum' => 'tum', -/*Tupi languages*/ 'tup' => 'tup', -/*Turkish*/ 'tur' => 'tr', -/*Altaic (Other)*/ 'tut' => 'tut', -/*Tuvalu*/ 'tvl' => 'tvl', -/*Twi*/ 'twi' => 'tw', -/*Tuvinian*/ 'tyv' => 'tyv', -/*Udmurt*/ 'udm' => 'udm', -/*Ugaritic*/ 'uga' => 'uga', -/*Uighur; Uyghur*/ 'uig' => 'ug', -/*Ukrainian*/ 'ukr' => 'uk', -/*Umbundu*/ 'umb' => 'umb', -/*Urdu*/ 'urd' => 'ur', -/*Uzbek*/ 'uzb' => 'uz', -/*Vai*/ 'vai' => 'vai', -/*Venda*/ 'ven' => 've', -/*Vietnamese*/ 'vie' => 'vi', -/*Volapük*/ 'vol' => 'vo', -/*Votic*/ 'vot' => 'vot', -/*Wakashan languages*/ 'wak' => 'wak', -/*Walamo*/ 'wal' => 'wal', -/*Waray*/ 'war' => 'war', -/*Washo*/ 'was' => 'was', -/*Welsh*/ 'wel' => 'cy', -/*Sorbian languages*/ 'wen' => 'was', -/*Walloon*/ 'wln' => 'wa', -/*Wolof*/ 'wol' => 'wo', -/*Kalmyk*/ 'xal' => 'xal', -/*Xhosa*/ 'xho' => 'xh', -/*Yao*/ 'yao' => 'yao', -/*Yapese*/ 'yap' => 'yap', -/*Yiddish*/ 'yid' => 'yi', -/*Yoruba*/ 'yor' => 'yo', -/*Yupik languages*/ 'ypk' => 'ypk', -/*Zapotec*/ 'zap' => 'zap', -/*Zenaga*/ 'zen' => 'zen', -/*Zhuang; Chuang*/ 'zha' => 'za', -/*Zande*/ 'znd' => 'znd', -/*Zulu*/ 'zul' => 'zu', -/*Zuni*/ 'zun' => 'zun'); - - var $_l10nCatalog = array( - 'aa' => array('language' => 'Afar', 'locale' => 'aar', 'localeFallback' => 'aar'), - 'ab' => array('language' => 'Abkhazian', 'locale' => 'abk', 'localeFallback' => 'abk'), - 'ace' => array('language' => 'Achinese', 'locale' => 'ace', 'localeFallback' => 'ace'), - 'ach' => array('language' => 'Acoli', 'locale' => 'ach', 'localeFallback' => 'ach'), - 'ada' => array('language' => 'Adangme', 'locale' => 'ada', 'localeFallback' => 'ada'), - 'ady' => array('language' => 'Adyghe; Adygei', 'locale' => 'ady', 'localeFallback' => 'ady'), - 'ae' => array('language' => 'Avestan', 'locale' => 'ave', 'localeFallback' => 'ave'), - 'af' => array('language' => 'Afrikaans', 'locale' => 'afr', 'localeFallback' => 'afr'), - 'afa' => array('language' => 'Afro-Asiatic (Other)', 'locale' => 'afa', 'localeFallback' => 'afa'), - 'afh' => array('language' => 'Afrihili', 'locale' => 'afh', 'localeFallback' => 'afh'), - 'ain' => array('language' => 'Ainu', 'locale' => 'ain', 'localeFallback' => 'ain'), - 'ak' => array('language' => 'Akan', 'locale' => 'aka', 'localeFallback' => 'aka'), - 'akk' => array('language' => 'Akkadian', 'locale' => 'akk', 'localeFallback' => 'akk'), - 'ale' => array('language' => 'Aleut', 'locale' => 'ale', 'localeFallback' => 'ale'), - 'alg' => array('language' => 'Algonquian Languages', 'locale' => 'alg', 'localeFallback' => 'alg'), - 'alt' => array('language' => 'Southern Altai', 'locale' => 'alt', 'localeFallback' => 'alt'), - 'am' => array('language' => 'Amharic', 'locale' => 'amh', 'localeFallback' => 'amh'), - 'an' => array('language' => 'Aragonese', 'locale' => 'arg', 'localeFallback' => 'arg'), - 'ang' => array('language' => 'English, Old', 'locale' => 'ang', 'localeFallback' => 'ang'), - 'apa' => array('language' => 'Apache languages', 'locale' => 'apa', 'localeFallback' => 'apa'), - 'ar' => array('language' => 'Arabic', 'locale' => 'ara', 'localeFallback' => 'ara'), - 'ar-ae' => array('language' => 'Arabic (U.A.E.)', 'locale' => 'ar_ae', 'localeFallback' => 'ara'), - 'ar-bh' => array('language' => 'Arabic (Bahrain)', 'locale' => 'ar_bh', 'localeFallback' => 'ara'), - 'ar-dz' => array('language' => 'Arabic (Algeria)', 'locale' => 'ar_dz', 'localeFallback' => 'ara'), - 'ar-eg' => array('language' => 'Arabic (Egypt)', 'locale' => 'ar_eg', 'localeFallback' => 'ara'), - 'ar-iq' => array('language' => 'Arabic (Iraq)', 'locale' => 'ar_ig', 'localeFallback' => 'ara'), - 'ar-jo' => array('language' => 'Arabic (Jordan)', 'locale' => 'ar_jo', 'localeFallback' => 'ara'), - 'ar-kw' => array('language' => 'Arabic (Kuwait)', 'locale' => 'ar_kw', 'localeFallback' => 'ara'), - 'ar-lb' => array('language' => 'Arabic (Lebanon)', 'locale' => 'ar_lb', 'localeFallback' => 'ara'), - 'ar-ly' => array('language' => 'Arabic (Libya)', 'locale' => 'ar_ly', 'localeFallback' => 'ara'), - 'ar-ma' => array('language' => 'Arabic (Morocco)', 'locale' => 'ar_ma', 'localeFallback' => 'ara'), - 'ar-om' => array('language' => 'Arabic (Oman)', 'locale' => 'ar_om', 'localeFallback' => 'ara'), - 'ar-qa' => array('language' => 'Arabic (Qatar)', 'locale' => 'ar_qa', 'localeFallback' => 'ara'), - 'ar-sa' => array('language' => 'Arabic (Saudi Arabia)', 'locale' => 'ar_sa', 'localeFallback' => 'ara'), - 'ar-sy' => array('language' => 'Arabic (Syria)', 'locale' => 'ar_sy', 'localeFallback' => 'ara'), - 'ar-tn' => array('language' => 'Arabic (Tunisia)', 'locale' => 'ar_tn', 'localeFallback' => 'ara'), - 'ar-ye' => array('language' => 'Arabic (Yemen)', 'locale' => 'ar_ye', 'localeFallback' => 'ara'), - 'arc' => array('language' => 'Aramaic', 'locale' => 'arc', 'localeFallback' => 'arc'), - 'arn' => array('language' => 'Araucanian', 'locale' => 'arn', 'localeFallback' => 'arn'), - 'arp' => array('language' => 'Arapaho', 'locale' => 'arp', 'localeFallback' => 'arp'), - 'arw' => array('language' => 'Arawak', 'locale' => 'arw', 'localeFallback' => 'arw'), - 'as' => array('language' => 'Assamese', 'locale' => 'asm', 'localeFallback' => 'asm'), - 'ast' => array('language' => 'Asturian', 'locale' => 'ast', 'localeFallback' => 'ast'), - 'ath' => array('language' => 'Athapascan languages', 'locale' => 'ath', 'localeFallback' => 'ath'), - 'aus' => array('language' => 'Australian languages', 'locale' => 'aus', 'localeFallback' => 'aus'), - 'av' => array('language' => 'Avaric', 'locale' => 'ava', 'localeFallback' => 'ava'), - 'awa' => array('language' => 'Awadhi', 'locale' => 'awa', 'localeFallback' => 'awa'), - 'ay' => array('language' => 'Aymara', 'locale' => 'aym', 'localeFallback' => 'aym'), - 'az' => array('language' => 'Azerbaijani', 'locale' => 'aze', 'localeFallback' => 'aze'), - 'ba' => array('language' => 'Bashkir', 'locale' => 'bak', 'localeFallback' => 'bak'), - 'bad' => array('language' => 'Banda', 'locale' => 'bad', 'localeFallback' => 'bad'), - 'bai' => array('language' => 'Bamileke languages', 'locale' => 'bai', 'localeFallback' => 'bai'), - 'bal' => array('language' => 'Baluchi', 'locale' => 'bal', 'localeFallback' => 'bal'), - 'ban' => array('language' => 'Balinese', 'locale' => 'ban', 'localeFallback' => 'ban'), - 'bas' => array('language' => 'Basa', 'locale' => 'bas', 'localeFallback' => 'bas'), - 'bat' => array('language' => 'Baltic (Other)', 'locale' => 'bat', 'localeFallback' => 'bat'), - 'be' => array('language' => 'Belarusian', 'locale' => 'bel', 'localeFallback' => 'bel'), - 'bej' => array('language' => 'Beja', 'locale' => 'bej', 'localeFallback' => 'bej'), - 'bem' => array('language' => 'Bemba', 'locale' => 'bem', 'localeFallback' => 'bem'), - 'ber' => array('language' => 'Berber (Other)', 'locale' => 'ber', 'localeFallback' => 'ber'), - 'bg' => array('language' => 'Bulgarian', 'locale' => 'bul', 'localeFallback' => 'bul'), - 'bh' => array('language' => 'Bihari', 'locale' => 'bih', 'localeFallback' => 'bih'), - 'bho' => array('language' => 'Bhojpuri', 'locale' => 'bho', 'localeFallback' => 'bho'), - 'bi' => array('language' => 'Bislama', 'locale' => 'bis', 'localeFallback' => 'bis'), - 'bik' => array('language' => 'Bikol', 'locale' => 'bik', 'localeFallback' => 'bik'), - 'bin' => array('language' => 'Bini', 'locale' => 'bin', 'localeFallback' => 'bin'), - 'bla' => array('language' => 'Siksika', 'locale' => 'bla', 'localeFallback' => 'bla'), - 'bm' => array('language' => 'Bambara', 'locale' => 'bam', 'localeFallback' => 'bam'), - 'bn' => array('language' => 'Bengali', 'locale' => 'ben', 'localeFallback' => 'ben'), - 'bnt' => array('language' => 'Bantu (Other)', 'locale' => 'bnt', 'localeFallback' => 'bnt'), - 'bo' => array('language' => 'Tibetan', 'locale' => 'tib', 'localeFallback' => 'tib'), - 'br' => array('language' => 'Breton', 'locale' => 'bre', 'localeFallback' => 'bre'), - 'bra' => array('language' => 'Braj', 'locale' => 'bra', 'localeFallback' => 'bra'), - 'bs' => array('language' => 'Bosnian', 'locale' => 'bos', 'localeFallback' => 'bos'), - 'btk' => array('language' => 'Batak (Indonesia)', 'locale' => 'btk', 'localeFallback' => 'btk'), - 'bua' => array('language' => 'Buriat', 'locale' => 'bua', 'localeFallback' => 'bua'), - 'bug' => array('language' => 'Buginese', 'locale' => 'bug', 'localeFallback' => 'bug'), - 'byn' => array('language' => 'Blin; Bilin', 'locale' => 'byn', 'localeFallback' => 'byn'), - 'ca' => array('language' => 'Catalan', 'locale' => 'es_ca', 'localeFallback' => 'cat'), - 'cad' => array('language' => 'Caddo', 'locale' => 'cad', 'localeFallback' => 'cad'), - 'cai' => array('language' => 'Central American Indian (Other)', 'locale' => 'cai', 'localeFallback' => 'cai'), - 'car' => array('language' => 'Carib', 'locale' => 'car', 'localeFallback' => 'car'), - 'cau' => array('language' => 'Caucasian (Other)', 'locale' => 'cau', 'localeFallback' => 'cau'), - 'ce' => array('language' => 'Chechen', 'locale' => 'che', 'localeFallback' => 'che'), - 'ceb' => array('language' => 'Cebuano', 'locale' => 'ceb', 'localeFallback' => 'ceb'), - 'cel' => array('language' => 'Celtic (Other)', 'locale' => 'cel', 'localeFallback' => 'cel'), - 'ch' => array('language' => 'Chamorro', 'locale' => 'cha', 'localeFallback' => 'cha'), - 'chb' => array('language' => 'Chibcha', 'locale' => 'chb', 'localeFallback' => 'chb'), - 'chg' => array('language' => 'Chagatai', 'locale' => 'chg', 'localeFallback' => 'chg'), - 'chk' => array('language' => 'Chuukese', 'locale' => 'chk', 'localeFallback' => 'chk'), - 'chm' => array('language' => 'Mari', 'locale' => 'chm', 'localeFallback' => 'chm'), - 'chn' => array('language' => 'Chinook jargon', 'locale' => 'chn', 'localeFallback' => 'chn'), - 'cho' => array('language' => 'Choctaw', 'locale' => 'cho', 'localeFallback' => 'cho'), - 'chp' => array('language' => 'Chipewyan', 'locale' => 'chp', 'localeFallback' => 'chp'), - 'chr' => array('language' => 'Cherokee', 'locale' => 'chr', 'localeFallback' => 'chr'), - 'chy' => array('language' => 'Cheyenne', 'locale' => 'chy', 'localeFallback' => 'chy'), - 'cmc' => array('language' => 'Chamic languages', 'locale' => 'cmc', 'localeFallback' => 'cmc'), - 'co' => array('language' => 'Corsican', 'locale' => 'cos', 'localeFallback' => 'cos'), - 'cop' => array('language' => 'Coptic', 'locale' => 'cop', 'localeFallback' => 'cop'), - 'cpe' => array('language' => 'Creoles and pidgins, English based (Other)', 'locale' => 'cpe', 'localeFallback' => 'cpe'), - 'cpf' => array('language' => 'Creoles and pidgins, French-based (Other)', 'locale' => 'cpf', 'localeFallback' => 'cpf'), - 'cpp' => array('language' => 'Creoles and pidgins', 'locale' => 'cpp', 'localeFallback' => 'cpp'), - 'cr' => array('language' => 'Cree', 'locale' => 'cre', 'localeFallback' => 'cre'), - 'crh' => array('language' => 'Crimean Tatar; Crimean Turkish', 'locale' => 'crh', 'localeFallback' => 'crh'), - 'crp' => array('language' => 'Creoles and pidgins (Other)', 'locale' => 'crp', 'localeFallback' => 'crp'), - 'cs' => array('language' => 'Czech', 'locale' => 'cze', 'localeFallback' => 'cze'), - 'csb' => array('language' => 'Kashubian', 'locale' => 'csb', 'localeFallback' => 'csb'), - 'cu' => array('language' => 'Church Slavic; Old Slavonic; Church Slavonic; Old Bulgarian; Old Church Slavonic', 'locale' => 'cu', 'localeFallback' => 'cu'), - 'cus' => array('language' => 'Cushitic (Other)', 'locale' => 'cus', 'localeFallback' => 'cus'), - 'cv' => array('language' => 'Chuvash', 'locale' => 'chv', 'localeFallback' => 'chv'), - 'cy' => array('language' => 'Welsh', 'locale' => 'wel', 'localeFallback' => 'wel'), - 'da' => array('language' => 'Danish', 'locale' => 'dan', 'localeFallback' => 'dan'), - 'dak' => array('language' => 'Dakota', 'locale' => 'dak', 'localeFallback' => 'dak'), - 'dar' => array('language' => 'Dargwa', 'locale' => 'dar', 'localeFallback' => 'dar'), - 'day' => array('language' => 'Dayak', 'locale' => 'day', 'localeFallback' => 'day'), - 'de' => array('language' => 'German (Germany)', 'locale' => 'de_de', 'localeFallback' => 'ger'), - 'de-at' => array('language' => 'German (Austria)', 'locale' => 'de_at', 'localeFallback' => 'ger'), - 'de-ch' => array('language' => 'German (Switzerland)', 'locale' => 'de_ch', 'localeFallback' => 'ger'), - 'de-de' => array('language' => 'German (Germany)', 'locale' => 'de_de', 'localeFallback' => 'ger'), - 'de-li' => array('language' => 'German (Liechtenstein)', 'locale' => 'de_li', 'localeFallback' => 'ger'), - 'de-lu' => array('language' => 'German (luxembourg)', 'locale' => 'de_lu', 'localeFallback' => 'ger'), - 'del' => array('language' => 'Delaware', 'locale' => 'del', 'localeFallback' => 'del'), - 'den' => array('language' => 'Slave (Athapascan)', 'locale' => 'den', 'localeFallback' => 'den'), - 'dgr' => array('language' => 'Dogrib', 'locale' => 'dgr', 'localeFallback' => 'dgr'), - 'din' => array('language' => 'Dinka', 'locale' => 'din', 'localeFallback' => 'din'), - 'doi' => array('language' => 'Dogri', 'locale' => 'doi', 'localeFallback' => 'doi'), - 'dra' => array('language' => 'Dravidian (Other)', 'locale' => 'dra', 'localeFallback' => 'dra'), - 'dsb' => array('language' => 'Lower Sorbian', 'locale' => 'dsb', 'localeFallback' => 'dsb'), - 'dua' => array('language' => 'Duala', 'locale' => 'dua', 'localeFallback' => 'dua'), - 'dum' => array('language' => 'Dutch, Middle', 'locale' => 'dum', 'localeFallback' => 'dum'), - 'dv' => array('language' => 'Divehi', 'locale' => 'dv', 'localeFallback' => 'dv'), - 'dyu' => array('language' => 'Dyula', 'locale' => 'dyu', 'localeFallback' => 'dyu'), - 'dz' => array('language' => 'Dzongkha', 'locale' => 'dzo', 'localeFallback' => 'dzo'), - 'ee' => array('language' => 'Ewe', 'locale' => 'ewe', 'localeFallback' => 'ewe'), - 'efi' => array('language' => 'Efik', 'locale' => 'efi', 'localeFallback' => 'efi'), - 'egy' => array('language' => 'Egyptian (Ancient)', 'locale' => 'egy', 'localeFallback' => 'egy'), - 'eka' => array('language' => 'Ekajuk', 'locale' => 'eka', 'localeFallback' => 'eka'), - 'el' => array('language' => 'Greek', 'locale' => 'gre', 'localeFallback' => 'gre'), - 'elx' => array('language' => 'Elamite', 'locale' => 'elx', 'localeFallback' => 'elx'), - 'en' => array('language' => 'English', 'locale' => 'en_us', 'localeFallback' => 'eng'), - 'en-au' => array('language' => 'English (Australia)', 'locale' => 'en_au', 'localeFallback' => 'eng'), - 'en-bz' => array('language' => 'English (Belize)', 'locale' => 'en_bz', 'localeFallback' => 'eng'), - 'en-ca' => array('language' => 'English (Canada)', 'locale' => 'en_ca', 'localeFallback' => 'eng'), - 'en-gb' => array('language' => 'English (United Kingdom)', 'locale' => 'en_gb', 'localeFallback' => 'eng'), - 'en-ie' => array('language' => 'English (Ireland)', 'locale' => 'en_ie', 'localeFallback' => 'eng'), - 'en-jm' => array('language' => 'English (Jamaica)', 'locale' => 'en_jm', 'localeFallback' => 'eng'), - 'en-nz' => array('language' => 'English (New Zealand)', 'locale' => 'en_nz', 'localeFallback' => 'eng'), - 'en-ph' => array('language' => 'English (Philippines)', 'locale' => 'en_ph', 'localeFallback' => 'eng'), - 'en-tt' => array('language' => 'English (Trinidad)', 'locale' => 'en_tt', 'localeFallback' => 'eng'), - 'en-us' => array('language' => 'English (United States)', 'locale' => 'en_us', 'localeFallback' => 'eng'), - 'en-za' => array('language' => 'English (South Africa)', 'locale' => 'en_za', 'localeFallback' => 'eng'), - 'en-zw' => array('language' => 'English (Zimbabwe)', 'locale' => 'en_zw', 'localeFallback' => 'eng'), - 'enm' => array('language' => 'English, Middle', 'locale' => 'enm', 'localeFallback' => 'enm'), - 'eo' => array('language' => 'Esperanto', 'locale' => 'epo', 'localeFallback' => 'epo'), - 'es' => array('language' => 'Spanish (Spain)', 'locale' => 'spa', 'localeFallback' => 'spa'), - 'es-ar' => array('language' => 'Spanish (Argentina)', 'locale' => 'es_ar', 'localeFallback' => 'spa'), - 'es-bo' => array('language' => 'Spanish (Bolivia)', 'locale' => 'es_bo', 'localeFallback' => 'spa'), - 'es-cl' => array('language' => 'Spanish (Chile)', 'locale' => 'es_cl', 'localeFallback' => 'spa'), - 'es-co' => array('language' => 'Spanish (Colombia)', 'locale' => 'es_co', 'localeFallback' => 'spa'), - 'es-cr' => array('language' => 'Spanish (Costa Rica)', 'locale' => 'es_cr', 'localeFallback' => 'spa'), - 'es-do' => array('language' => 'Spanish (Dominican Republic)', 'locale' => 'es_do', 'localeFallback' => 'spa'), - 'es-ec' => array('language' => 'Spanish (Ecuador)', 'locale' => 'es_ec', 'localeFallback' => 'spa'), - 'es-gt' => array('language' => 'Spanish (Guatemala)', 'locale' => 'es_gt', 'localeFallback' => 'spa'), - 'es-hn' => array('language' => 'Spanish (Honduras)', 'locale' => 'es_hn', 'localeFallback' => 'spa'), - 'es-mx' => array('language' => 'Spanish (Mexico)', 'locale' => 'es_mx', 'localeFallback' => 'spa'), - 'es-ni' => array('language' => 'Spanish (Nicaragua)', 'locale' => 'es_ni', 'localeFallback' => 'spa'), - 'es-pa' => array('language' => 'Spanish (Panama)', 'locale' => 'es_pa', 'localeFallback' => 'spa'), - 'es-pe' => array('language' => 'Spanish (Peru)', 'locale' => 'es_pe', 'localeFallback' => 'spa'), - 'es-pr' => array('language' => 'Spanish (Puerto Rico)', 'locale' => 'es_pr', 'localeFallback' => 'spa'), - 'es-py' => array('language' => 'Spanish (Paraguay)', 'locale' => 'es_py', 'localeFallback' => 'spa'), - 'es-sv' => array('language' => 'Spanish (El Salvador)', 'locale' => 'es_sv', 'localeFallback' => 'spa'), - 'es-us' => array('language' => 'Spanish (United States)', 'locale' => 'es_us', 'localeFallback' => 'spa'), - 'es-uy' => array('language' => 'Spanish (Uruguay)', 'locale' => 'es_uy', 'localeFallback' => 'spa'), - 'es-ve' => array('language' => 'Spanish (Venezuela)', 'locale' => 'es_ve', 'localeFallback' => 'spa'), - 'et' => array('language' => 'Estonian', 'locale' => 'est', 'localeFallback' => 'est'), - 'eu' => array('language' => 'Basque', 'locale' => 'baq', 'localeFallback' => 'baq'), - 'ewo' => array('language' => 'Ewondo', 'locale' => 'ewo', 'localeFallback' => 'ewo'), - 'fa' => array('language' => 'Persian', 'locale' => 'per', 'localeFallback' => 'per'), - 'fan' => array('language' => 'Fang', 'locale' => 'fan', 'localeFallback' => 'fan'), - 'fat' => array('language' => 'Fanti', 'locale' => 'fat', 'localeFallback' => 'fat'), - 'ff' => array('language' => 'Fulah', 'locale' => 'ful', 'localeFallback' => 'ful'), - 'fi' => array('language' => 'Finnish', 'locale' => 'fin', 'localeFallback' => 'fin'), - 'fil' => array('language' => 'Filipino; Pilipino', 'locale' => 'fil', 'localeFallback' => 'fil'), - 'fiu' => array('language' => 'Finno-Ugrian (Other)', 'locale' => 'fiu', 'localeFallback' => 'fiu'), - 'fj' => array('language' => 'Fijian', 'locale' => 'fij', 'localeFallback' => 'fij'), - 'fo' => array('language' => 'Faroese', 'locale' => 'fao', 'localeFallback' => 'fao'), - 'fon' => array('language' => 'Fon', 'locale' => 'fon', 'localeFallback' => 'fon'), - 'fr' => array('language' => 'French (France)', 'locale' => 'fre', 'localeFallback' => 'fre'), - 'fr-be' => array('language' => 'French (Belgium)', 'locale' => 'fr_be', 'localeFallback' => 'fre'), - 'fr-ca' => array('language' => 'French (Canada)', 'locale' => 'fr_ca', 'localeFallback' => 'fre'), - 'fr-ch' => array('language' => 'French (Switzerland)', 'locale' => 'fr_ch', 'localeFallback' => 'fre'), - 'fr-lu' => array('language' => 'French (Luxembourg)', 'locale' => 'fr_lu', 'localeFallback' => 'fre'), - 'fr-mc' => array('language' => 'French (Monaco)', 'locale' => 'fr_mc', 'localeFallback' => 'fre'), - 'frm' => array('language' => 'French, Middle', 'locale' => 'frm', 'localeFallback' => 'frm'), - 'fro' => array('language' => 'French, Old', 'locale' => 'fro', 'localeFallback' => 'fro'), - 'fur' => array('language' => 'Friulian', 'locale' => 'fur', 'localeFallback' => 'fur'), - 'fy' => array('language' => 'Frisian', 'locale' => 'fry', 'localeFallback' => 'fry'), - 'ga' => array('language' => 'Irish', 'locale' => 'gle', 'localeFallback' => 'gle'), - 'gaa' => array('language' => 'Ga', 'locale' => 'gaa', 'localeFallback' => 'gaa'), - 'gay' => array('language' => 'Gayo', 'locale' => 'gay', 'localeFallback' => 'gay'), - 'gba' => array('language' => 'Gbaya', 'locale' => 'gba', 'localeFallback' => 'gba'), - 'gd' => array('language' => 'Gaelic, Hiberno-Scottish', 'locale' => 'gla', 'localeFallback' => 'gla'), - 'gem' => array('language' => 'Germanic (Other)', 'locale' => 'gem', 'localeFallback' => 'gem'), - 'gez' => array('language' => 'Geez', 'locale' => 'gez', 'localeFallback' => 'gez'), - 'gil' => array('language' => 'Gilbertese', 'locale' => 'gil', 'localeFallback' => 'gil'), - 'gl' => array('language' => 'Galician', 'locale' => 'glg', 'localeFallback' => 'glg'), - 'gmh' => array('language' => 'German, Middle High', 'locale' => 'gmh', 'localeFallback' => 'gmh'), - 'gn' => array('language' => 'Guarani', 'locale' => 'grn', 'localeFallback' => 'grn'), - 'goh' => array('language' => 'German, Old High', 'locale' => 'goh', 'localeFallback' => 'goh'), - 'gon' => array('language' => 'Gondi', 'locale' => 'gon', 'localeFallback' => 'gon'), - 'gor' => array('language' => 'Gorontalo', 'locale' => 'gor', 'localeFallback' => 'gor'), - 'got' => array('language' => 'Gothic', 'locale' => 'got', 'localeFallback' => 'got'), - 'grb' => array('language' => 'Grebo', 'locale' => 'grb', 'localeFallback' => 'grb'), - 'grc' => array('language' => 'Greek, Ancient', 'locale' => 'grc', 'localeFallback' => 'gre'), - 'gu' => array('language' => 'Gujarati', 'locale' => 'guj', 'localeFallback' => 'guj'), - 'gv' => array('language' => 'Manx', 'locale' => 'glv', 'localeFallback' => 'glv'), - 'gwi' => array('language' => 'Gwich´in', 'locale' => 'gwi', 'localeFallback' => 'gwi'), - 'ha' => array('language' => 'Hausa', 'locale' => 'hau', 'localeFallback' => 'hau'), - 'hai' => array('language' => 'Haida', 'locale' => 'hai', 'localeFallback' => 'hai'), - 'haw' => array('language' => 'Hawaiian', 'locale' => 'haw', 'localeFallback' => 'haw'), - 'he' => array('language' => 'Hebrew', 'locale' => 'heb', 'localeFallback' => 'heb'), - 'hi' => array('language' => 'Hindi', 'locale' => 'hin', 'localeFallback' => 'hin'), - 'hil' => array('language' => 'Hiligaynon', 'locale' => 'hil', 'localeFallback' => 'hil'), - 'him' => array('language' => 'Himachali', 'locale' => 'him', 'localeFallback' => 'him'), - 'hmn' => array('language' => 'Hmong', 'locale' => 'hmn', 'localeFallback' => 'hmn'), - 'ho' => array('language' => 'Hiri Motu', 'locale' => 'hmo', 'localeFallback' => 'hmo'), - 'hr' => array('language' => 'Croatian', 'locale' => 'scr', 'localeFallback' => 'scr'), - 'hsb' => array('language' => 'Upper Sorbian', 'locale' => 'hsb', 'localeFallback' => 'hsb'), - 'ht' => array('language' => 'Haitian; Haitian Creole', 'locale' => 'ht', 'localeFallback' => 'ht'), - 'hu' => array('language' => 'Hungarian', 'locale' => 'hun', 'localeFallback' => 'hun'), - 'hup' => array('language' => 'Hupa', 'locale' => 'hup', 'localeFallback' => 'hup'), - 'hy' => array('language' => 'Armenian', 'locale' => 'arm', 'localeFallback' => 'arm'), - 'hz' => array('language' => 'Herero', 'locale' => 'her', 'localeFallback' => 'her'), - 'iba' => array('language' => 'Iban', 'locale' => 'iba', 'localeFallback' => 'iba'), - 'ig' => array('language' => 'Igbo', 'locale' => 'ibo', 'localeFallback' => 'ibo'), - 'id' => array('language' => 'Indonesian', 'locale' => 'ind', 'localeFallback' => 'ind'), - 'ie' => array('language' => 'Interlingue', 'locale' => 'ile', 'localeFallback' => 'ile'), - 'ii' => array('language' => 'Sichuan Yi', 'locale' => 'iii', 'localeFallback' => 'iii'), - 'ijo' => array('language' => 'Ijo', 'locale' => 'ijo', 'localeFallback' => 'ijo'), - 'ik' => array('language' => 'Inupiaq', 'locale' => 'ipk', 'localeFallback' => 'ipk'), - 'iku' => array('language' => 'Inuktitut', 'locale' => 'iku', 'localeFallback' => 'iku'), - 'ilo' => array('language' => 'Iloko', 'locale' => 'ilo', 'localeFallback' => 'ilo'), - 'inc' => array('language' => 'Indic (Other)', 'locale' => 'inc', 'localeFallback' => 'inc'), - 'ine' => array('language' => 'Indo-European (Other)', 'locale' => 'ine', 'localeFallback' => 'ine'), - 'inh' => array('language' => 'Ingush', 'locale' => 'inh', 'localeFallback' => 'inh'), - 'io' => array('language' => 'Ido', 'locale' => 'io', 'localeFallback' => 'io'), - 'ira' => array('language' => 'Iranian (Other)', 'locale' => 'ira', 'localeFallback' => 'ira'), - 'iro' => array('language' => 'Iroquoian languages', 'locale' => 'iro', 'localeFallback' => 'iro'), - 'is' => array('language' => 'Icelandic', 'locale' => 'is', 'localeFallback' => 'is'), - 'it' => array('language' => 'Italian (Italy)', 'locale' => 'ita', 'localeFallback' => 'ita'), - 'it-ch' => array('language' => 'Italian (Switzerland)', 'locale' => 'it_ch', 'localeFallback' => 'ita'), - 'iu' => array('language' => 'Inuktitut', 'locale' => 'iu', 'localeFallback' => 'iu'), - 'ja' => array('language' => 'Japanese', 'locale' => 'ja', 'localeFallback' => 'ja'), - 'jav' => array('language' => 'Javanese', 'locale' => 'jav', 'localeFallback' => 'jav'), - 'jbo' => array('language' => 'Lojban', 'locale' => 'jbo', 'localeFallback' => 'jbo'), - 'jpn' => array('language' => 'Japanese', 'locale' => 'jpn', 'localeFallback' => 'jpn'), - 'jrb' => array('language' => 'Judeo-Arabic', 'locale' => 'jrb', 'localeFallback' => 'jrb'), - 'jv' => array('language' => 'Javanese', 'locale' => 'jv', 'localeFallback' => 'jv'), - 'ka' => array('language' => 'Georgian', 'locale' => 'ka', 'localeFallback' => 'ka'), - 'kaa' => array('language' => 'Kara-Kalpak', 'locale' => 'kaa', 'localeFallback' => 'kaa'), - 'kab' => array('language' => 'Kabyle', 'locale' => 'kab', 'localeFallback' => 'kab'), - 'kac' => array('language' => 'Kachin', 'locale' => 'kac', 'localeFallback' => 'kac'), - 'kam' => array('language' => 'Kamba', 'locale' => 'kam', 'localeFallback' => 'kam'), - 'kan' => array('language' => 'Kannada', 'locale' => 'kan', 'localeFallback' => 'kan'), - 'kar' => array('language' => 'Karen', 'locale' => 'kar', 'localeFallback' => 'kar'), - 'kas' => array('language' => 'Kashmiri', 'locale' => 'kas', 'localeFallback' => 'kas'), - 'kau' => array('language' => 'Kanuri', 'locale' => 'kau', 'localeFallback' => 'kau'), - 'kaw' => array('language' => 'Kawi', 'locale' => 'kaw', 'localeFallback' => 'kaw'), - 'kbd' => array('language' => 'Kabardian', 'locale' => 'kbd', 'localeFallback' => 'kbd'), - 'kg' => array('language' => 'Kongo', 'locale' => 'kg', 'localeFallback' => 'kg'), - 'kha' => array('language' => 'Khasi', 'locale' => 'kha', 'localeFallback' => 'kha'), - 'khi' => array('language' => 'Khoisan (Other)', 'locale' => 'khi', 'localeFallback' => 'khi'), - 'khm' => array('language' => 'Khmer', 'locale' => 'khm', 'localeFallback' => 'khm'), - 'kho' => array('language' => 'Khotanese', 'locale' => 'kho', 'localeFallback' => 'kho'), - 'ki' => array('language' => 'Kikuyu; Gikuyu', 'locale' => 'kik', 'localeFallback' => 'kik'), - 'kin' => array('language' => 'Kinyarwanda', 'locale' => 'kin', 'localeFallback' => 'kin'), - 'kir' => array('language' => 'Kirghiz', 'locale' => 'kir', 'localeFallback' => 'kir'), - 'kk' => array('language' => 'Kazakh', 'locale' => 'kaz', 'localeFallback' => 'kaz'), - 'kl' => array('language' => 'Kalaallisut; Greenlandic', 'locale' => 'kal', 'localeFallback' => 'kal'), - 'km' => array('language' => 'Khmer', 'locale' => 'km', 'localeFallback' => 'km'), - 'kmb' => array('language' => 'Kimbundu', 'locale' => 'kmb', 'localeFallback' => 'kmb'), - 'kn' => array('language' => 'Kannada', 'locale' => 'kn', 'localeFallback' => 'kn'), - 'ko' => array('language' => 'Korean', 'locale' => 'ko', 'localeFallback' => 'ko'), - 'ko-kp' => array('language' => 'Korea (North), Dem. Rep', 'locale' => 'ko_KP', 'localeFallback' => 'ko'), - 'ko-kr' => array('language' => 'Korea (South)', 'locale' => 'ko_KR', 'localeFallback' => 'ko'), - 'koi8-r' => array('language' => 'Russian', 'locale' => 'koi8_r', 'localeFallback' => 'rus'), - 'kok' => array('language' => 'Konkani', 'locale' => 'kok', 'localeFallback' => 'kok'), - 'kom' => array('language' => 'Komi', 'locale' => 'kom', 'localeFallback' => 'kom'), - 'kon' => array('language' => 'Kongo', 'locale' => 'kon', 'localeFallback' => 'kon'), - 'kos' => array('language' => 'Kosraean', 'locale' => 'kos', 'localeFallback' => 'kos'), - 'kpe' => array('language' => 'Kpelle', 'locale' => 'kpe', 'localeFallback' => 'kpe'), - 'kr' => array('language' => 'Kanuri', 'locale' => 'kr', 'localeFallback' => 'kr'), - 'krc' => array('language' => 'Karachay-Balkar', 'locale' => 'krc', 'localeFallback' => 'krc'), - 'kro' => array('language' => 'Kru', 'locale' => 'kro', 'localeFallback' => 'kro'), - 'kru' => array('language' => 'Kurukh', 'locale' => 'kru', 'localeFallback' => 'kru'), - 'ks' => array('language' => 'Kashmiri', 'locale' => 'ks', 'localeFallback' => 'ks'), - 'ku' => array('language' => 'Kurdish', 'locale' => 'ku', 'localeFallback' => 'ku'), - 'kua' => array('language' => 'Kuanyama; Kwanyama', 'locale' => 'kua', 'localeFallback' => 'kua'), - 'kum' => array('language' => 'Kumyk', 'locale' => 'kum', 'localeFallback' => 'kum'), - 'kut' => array('language' => 'Kutenai', 'locale' => 'kut', 'localeFallback' => 'kut'), - 'kv' => array('language' => 'Komi', 'locale' => 'kv', 'localeFallback' => 'kv'), - 'kw' => array('language' => 'Cornish', 'locale' => 'kw', 'localeFallback' => 'kw'), - 'ky' => array('language' => 'Kirghiz', 'locale' => 'ky', 'localeFallback' => 'ky'), - 'la' => array('language' => 'Latin', 'locale' => 'la', 'localeFallback' => 'la'), - 'lad' => array('language' => 'Ladino', 'locale' => 'lad', 'localeFallback' => 'lad'), - 'lah' => array('language' => 'Lahnda', 'locale' => 'lah', 'localeFallback' => 'lah'), - 'lam' => array('language' => 'Lamba', 'locale' => 'lam', 'localeFallback' => 'lam'), - 'lat' => array('language' => 'Latin', 'locale' => 'lat', 'localeFallback' => 'lat'), - 'lav' => array('language' => 'Latvian', 'locale' => 'lav', 'localeFallback' => 'lav'), - 'lb' => array('language' => 'Luxembourgish; Letzeburgesch', 'locale' => 'lb', 'localeFallback' => 'lb'), - 'lez' => array('language' => 'Lezghian', 'locale' => 'lez', 'localeFallback' => 'lez'), - 'lg' => array('language' => 'Ganda', 'locale' => 'lg', 'localeFallback' => 'lg'), - 'li' => array('language' => 'Limburgan; Limburger; Limburgish', 'locale' => 'li', 'localeFallback' => 'li'), - 'lim' => array('language' => 'Limburgan; Limburger; Limburgish', 'locale' => 'lim', 'localeFallback' => 'lim'), - 'lin' => array('language' => 'Lingala', 'locale' => 'lin', 'localeFallback' => 'lin'), - 'ln' => array('language' => 'Lingala', 'locale' => 'ln', 'localeFallback' => 'ln'), - 'lo' => array('language' => 'Lao', 'locale' => 'lo', 'localeFallback' => 'lo'), - 'lol' => array('language' => 'Mongo', 'locale' => 'lol', 'localeFallback' => 'lol'), - 'loz' => array('language' => 'Lozi', 'locale' => 'loz', 'localeFallback' => 'loz'), - 'lt' => array('language' => 'Lithuanian', 'locale' => 'lt', 'localeFallback' => 'lt'), - 'ltz' => array('language' => 'Luxembourgish; Letzeburgesch', 'locale' => 'ltz', 'localeFallback' => 'ltz'), - 'lu' => array('language' => 'Luba-Katanga', 'locale' => 'lu', 'localeFallback' => 'lu'), - 'lua' => array('language' => 'Luba-Lulua', 'locale' => 'lua', 'localeFallback' => 'lua'), - 'lub' => array('language' => 'Luba-Katanga', 'locale' => 'lub', 'localeFallback' => 'lub'), - 'lug' => array('language' => 'Ganda', 'locale' => 'lug', 'localeFallback' => 'lug'), - 'lui' => array('language' => 'Luiseno', 'locale' => 'lui', 'localeFallback' => 'lui'), - 'lun' => array('language' => 'Lunda', 'locale' => 'lun', 'localeFallback' => 'lun'), - 'luo' => array('language' => 'Luo (Kenya and Tanzania)', 'locale' => 'luo', 'localeFallback' => 'luo'), - 'lus' => array('language' => 'Lushai', 'locale' => 'lus', 'localeFallback' => 'lus'), - 'lv' => array('language' => 'Latvian', 'locale' => 'lv', 'localeFallback' => 'lv'), - 'mad' => array('language' => 'Madurese', 'locale' => 'mad', 'localeFallback' => 'mad'), - 'mag' => array('language' => 'Magahi', 'locale' => 'mag', 'localeFallback' => 'mag'), - 'mah' => array('language' => 'Marshallese', 'locale' => 'mah', 'localeFallback' => 'mah'), - 'mai' => array('language' => 'Maithili', 'locale' => 'mai', 'localeFallback' => 'mai'), - 'mak' => array('language' => 'Makasar', 'locale' => 'mak', 'localeFallback' => 'mak'), - 'mal' => array('language' => 'Malayalam', 'locale' => 'mal', 'localeFallback' => 'mal'), - 'man' => array('language' => 'Mandingo', 'locale' => 'man', 'localeFallback' => 'man'), - 'map' => array('language' => 'Austronesian (Other)', 'locale' => 'map', 'localeFallback' => 'map'), - 'mar' => array('language' => 'Marathi', 'locale' => 'mar', 'localeFallback' => 'mar'), - 'mas' => array('language' => 'Masai', 'locale' => 'mas', 'localeFallback' => 'mas'), - 'mdf' => array('language' => 'Moksha', 'locale' => 'mdf', 'localeFallback' => 'mdf'), - 'mdr' => array('language' => 'Mandar', 'locale' => 'mdr', 'localeFallback' => 'mdr'), - 'men' => array('language' => 'Mende', 'locale' => 'men', 'localeFallback' => 'men'), - 'mg' => array('language' => 'Malagasy', 'locale' => 'mg', 'localeFallback' => 'mg'), - 'mga' => array('language' => 'Irish, Middle', 'locale' => 'mga', 'localeFallback' => 'mga'), - 'mh' => array('language' => 'Marshallese', 'locale' => 'mh', 'localeFallback' => 'mh'), - 'mi' => array('language' => 'Maori', 'locale' => 'mi', 'localeFallback' => 'mi'), - 'mic' => array('language' => 'Micmac', 'locale' => 'mic', 'localeFallback' => 'mic'), - 'min' => array('language' => 'Minangkabau', 'locale' => 'min', 'localeFallback' => 'min'), - 'mk' => array('language' => 'FYRO Macedonian', 'locale' => 'mk', 'localeFallback' => 'mk'), - 'mk-mk' => array('language' => 'Macedonian', 'locale' => 'mk_MK', 'localeFallback' => 'mk'), - 'mkh' => array('language' => 'Mon-Khmer (Other)', 'locale' => 'mkh', 'localeFallback' => 'mkh'), - 'ml' => array('language' => 'Malayalam', 'locale' => 'ml', 'localeFallback' => 'ml'), - 'mlg' => array('language' => 'Malagasy', 'locale' => 'mlg', 'localeFallback' => 'mlg'), - 'mlt' => array('language' => 'Maltese', 'locale' => 'mlt', 'localeFallback' => 'mlt'), - 'mn' => array('language' => 'Mongolian', 'locale' => 'mn', 'localeFallback' => 'mn'), - 'mnc' => array('language' => 'Manchu', 'locale' => 'haw', 'localeFallback' => 'haw'), - 'mni' => array('language' => 'Manipuri', 'locale' => 'mni', 'localeFallback' => 'mni'), - 'mno' => array('language' => 'Manobo languages', 'locale' => 'mno', 'localeFallback' => 'mno'), - 'mo' => array('language' => 'Moldavian', 'locale' => 'mo', 'localeFallback' => 'mo'), - 'moh' => array('language' => 'Mohawk', 'locale' => 'moh', 'localeFallback' => 'moh'), - 'mol' => array('language' => 'Moldavian', 'locale' => 'mol', 'localeFallback' => 'mol'), - 'mon' => array('language' => 'Mongolian', 'locale' => 'mon', 'localeFallback' => 'mon'), - 'mos' => array('language' => 'Mossi', 'locale' => 'mos', 'localeFallback' => 'mos'), - 'mr' => array('language' => 'Marathi', 'locale' => 'mr', 'localeFallback' => 'mr'), - 'ms' => array('language' => 'Malay', 'locale' => 'ms', 'localeFallback' => 'ms'), - 'mt' => array('language' => 'Maltese', 'locale' => 'mt', 'localeFallback' => 'mt'), - 'mun' => array('language' => 'Munda languages', 'locale' => 'mun', 'localeFallback' => 'mun'), - 'mus' => array('language' => 'Creek', 'locale' => 'mus', 'localeFallback' => 'mus'), - 'mwl' => array('language' => 'Mirandese', 'locale' => 'mwl', 'localeFallback' => 'mwl'), - 'mwr' => array('language' => 'Marwari', 'locale' => 'mwr', 'localeFallback' => 'mwr'), - 'my' => array('language' => 'Burmese', 'locale' => 'my', 'localeFallback' => 'my'), - 'myn' => array('language' => 'Mayan languages', 'locale' => 'myn', 'localeFallback' => 'myn'), - 'myv' => array('language' => 'Erzya', 'locale' => 'myv', 'localeFallback' => 'myv'), - 'na' => array('language' => 'Nauru', 'locale' => 'na', 'localeFallback' => 'na'), - 'nah' => array('language' => 'Nahuatl', 'locale' => 'nah', 'localeFallback' => 'nah'), - 'nai' => array('language' => 'North American Indian', 'locale' => 'nai', 'localeFallback' => 'nai'), - 'nap' => array('language' => 'Neapolitan', 'locale' => 'nap', 'localeFallback' => 'nap'), - 'nau' => array('language' => 'Nauru', 'locale' => 'nau', 'localeFallback' => 'nau'), - 'nav' => array('language' => 'Navajo; Navaho', 'locale' => 'nav', 'localeFallback' => 'nav'), - 'nb' => array('language' => 'Norwegian (Bokmal)', 'locale' => 'nb', 'localeFallback' => 'nb'), - 'nbl' => array('language' => 'Ndebele, South; South Ndebele', 'locale' => 'nbl', 'localeFallback' => 'nbl'), - 'nd' => array('language' => 'North Ndebele', 'locale' => 'nd', 'localeFallback' => 'nd'), - 'nde' => array('language' => 'Ndebele, North; North Ndebele', 'locale' => 'nde', 'localeFallback' => 'nde'), - 'ndo' => array('language' => 'Ndonga', 'locale' => 'ndo', 'localeFallback' => 'ndo'), - 'nds' => array('language' => 'Low German; Low Saxon;', 'locale' => 'nds', 'localeFallback' => 'nds'), - 'ne' => array('language' => 'Nepali (India)', 'locale' => 'hr', 'localeFallback' => 'hr'), - 'nep' => array('language' => 'Nepali', 'locale' => 'nep', 'localeFallback' => 'nep'), - 'new' => array('language' => 'Newari; Nepal Bhasa', 'locale' => 'new', 'localeFallback' => 'new'), - 'ng' => array('language' => 'Ndonga', 'locale' => 'ng', 'localeFallback' => 'ng'), - 'nia' => array('language' => 'Nias', 'locale' => 'nia', 'localeFallback' => 'nia'), - 'nic' => array('language' => 'Niger-Kordofanian (Other)', 'locale' => 'nic', 'localeFallback' => 'nic'), - 'niu' => array('language' => 'Niuean', 'locale' => 'niu', 'localeFallback' => 'niu'), - 'nl' => array('language' => 'Dutch (Netherlands)', 'locale' => 'nl', 'localeFallback' => 'nl'), - 'nl-be' => array('language' => 'Dutch (Belgium)', 'locale' => 'nl_BE', 'localeFallback' => 'nl'), - 'nn' => array('language' => 'Norwegian (Nynorsk)', 'locale' => 'nn', 'localeFallback' => 'nn'), - 'nno' => array('language' => 'Norwegian Nynorsk; Nynorsk, Norwegian', 'locale' => 'nno', 'localeFallback' => 'nno'), - 'no' => array('language' => 'Norwegian Bokmċl', 'locale' => 'no', 'localeFallback' => 'no'), - 'nob' => array('language' => 'Norwegian Bokmċl; Bokmċl, Norwegian', 'locale' => 'nob', 'localeFallback' => 'nob'), - 'nog' => array('language' => 'Nogai', 'locale' => 'nog', 'localeFallback' => 'nog'), - 'non' => array('language' => 'Norse, Old', 'locale' => 'non', 'localeFallback' => 'non'), - 'nor' => array('language' => 'Norwegian', 'locale' => 'nor', 'localeFallback' => 'nor'), - 'nr' => array('language' => 'South Ndebele', 'locale' => 'nr', 'localeFallback' => 'nr'), - 'nso' => array('language' => 'Northern Sotho; Pedi; Sepedi', 'locale' => 'nso', 'localeFallback' => 'nso'), - 'nub' => array('language' => 'Nubian languages', 'locale' => 'nub', 'localeFallback' => 'nub'), - 'nv' => array('language' => 'Navajo; Navaho', 'locale' => 'nv', 'localeFallback' => 'nv'), - 'nwc' => array('language' => 'Classical Newari; Old Newari; Classical Nepal Bhasa', 'locale' => 'nwc', 'localeFallback' => 'nwc'), - 'ny' => array('language' => 'Chichewa; Chewa; Nyanja', 'locale' => 'ny', 'localeFallback' => 'ny'), - 'nya' => array('language' => 'Chichewa; Chewa; Nyanja', 'locale' => 'nya', 'localeFallback' => 'nya'), - 'nym' => array('language' => 'Nyamwezi', 'locale' => 'nym', 'localeFallback' => 'nym'), - 'nyn' => array('language' => 'Nyankole', 'locale' => 'nyn', 'localeFallback' => 'nyn'), - 'nyo' => array('language' => 'Nyoro', 'locale' => 'nyo', 'localeFallback' => 'nyo'), - 'nzi' => array('language' => 'Nzima', 'locale' => 'nzi', 'localeFallback' => 'nzi'), - 'oc' => array('language' => 'Occitan (post 1500); Provençal', 'locale' => 'oc', 'localeFallback' => 'oc'), - 'oci' => array('language' => 'Occitan; Provençal', 'locale' => 'oci', 'localeFallback' => 'oci'), - 'oj' => array('language' => 'Ojibwa', 'locale' => 'oj', 'localeFallback' => 'oj'), - 'oji' => array('language' => 'Ojibwa', 'locale' => 'oji', 'localeFallback' => 'oji'), - 'om' => array('language' => 'Oromo', 'locale' => 'om', 'localeFallback' => 'om'), - 'or' => array('language' => 'Oriya', 'locale' => 'or', 'localeFallback' => 'or'), - 'ori' => array('language' => 'Oriya', 'locale' => 'ori', 'localeFallback' => 'ori'), - 'orm' => array('language' => 'Oromo', 'locale' => 'orm', 'localeFallback' => 'orm'), - 'os' => array('language' => 'Ossetian; Ossetic', 'locale' => 'os', 'localeFallback' => 'os'), - 'osa' => array('language' => 'Osage', 'locale' => 'osa', 'localeFallback' => 'osa'), - 'oss' => array('language' => 'Ossetian; Ossetic', 'locale' => 'oss', 'localeFallback' => 'oss'), - 'ota' => array('language' => 'Turkish, Ottoman', 'locale' => 'ota', 'localeFallback' => 'ota'), - 'oto' => array('language' => 'Otomian languages', 'locale' => 'oto', 'localeFallback' => 'oto'), - 'pa' => array('language' => 'Panjabi; Punjabi', 'locale' => 'pa', 'localeFallback' => 'pa'), - 'pa-in' => array('language' => 'Punjabi (India)', 'locale' => 'pa_IN', 'localeFallback' => 'pa'), - 'pa-pk' => array('language' => 'Punjabi (Pakistan)', 'locale' => 'pa_PK', 'localeFallback' => 'pa'), - 'paa' => array('language' => 'Papuan (Other)', 'locale' => 'paa', 'localeFallback' => 'paa'), - 'pag' => array('language' => 'Pangasinan', 'locale' => 'pag', 'localeFallback' => 'pag'), - 'pal' => array('language' => 'Pahlavi', 'locale' => 'pal', 'localeFallback' => 'pal'), - 'pam' => array('language' => 'Pampanga', 'locale' => 'pam', 'localeFallback' => 'pam'), - 'pan' => array('language' => 'Panjabi; Punjabi', 'locale' => 'pan', 'localeFallback' => 'pan'), - 'pap' => array('language' => 'Papiamento', 'locale' => 'pap', 'localeFallback' => 'pap'), - 'pau' => array('language' => 'Palauan', 'locale' => 'pau', 'localeFallback' => 'pau'), - 'peo' => array('language' => 'Persian, Old', 'locale' => 'peo', 'localeFallback' => 'peo'), - 'phi' => array('language' => 'Philippine (Other)', 'locale' => 'phi', 'localeFallback' => 'phi'), - 'phn' => array('language' => 'Phoenician', 'locale' => 'phn', 'localeFallback' => 'phn'), - 'pi' => array('language' => 'Pali', 'locale' => 'pi', 'localeFallback' => 'pi'), - 'pl' => array('language' => 'Polish', 'locale' => 'pl', 'localeFallback' => 'pl'), - 'pli' => array('language' => 'Pali', 'locale' => 'pli', 'localeFallback' => 'pli'), - 'pol' => array('language' => 'Polish', 'locale' => 'pol', 'localeFallback' => 'pol'), - 'pon' => array('language' => 'Pohnpeian', 'locale' => 'pon', 'localeFallback' => 'pon'), - 'por' => array('language' => 'Portuguese', 'locale' => 'por', 'localeFallback' => 'por'), - 'pra' => array('language' => 'Prakrit languages', 'locale' => 'pra', 'localeFallback' => 'pra'), - 'pro' => array('language' => 'Provençal, Old', 'locale' => 'pro', 'localeFallback' => 'pro'), - 'ps' => array('language' => 'Pushto', 'locale' => 'ps', 'localeFallback' => 'ps'), - 'pt' => array('language' => 'Portuguese (Portugal)', 'locale' => 'pt', 'localeFallback' => 'pt'), - 'pt-br' => array('language' => 'Portuguese (Brazil)', 'locale' => 'pt_BR', 'localeFallback' => 'pt'), - 'pus' => array('language' => 'Pushto', 'locale' => 'pus', 'localeFallback' => 'pus'), - 'qu' => array('language' => 'Quechua', 'locale' => 'qu', 'localeFallback' => 'qu'), - 'que' => array('language' => 'Quechua', 'locale' => 'que', 'localeFallback' => 'que'), - 'raj' => array('language' => 'Rajasthani', 'locale' => 'raj', 'localeFallback' => 'raj'), - 'rap' => array('language' => 'Rapanui', 'locale' => 'rap', 'localeFallback' => 'rap'), - 'rar' => array('language' => 'Rarotongan', 'locale' => 'rar', 'localeFallback' => 'rar'), - 'rm' => array('language' => 'Raeto-Romance', 'locale' => 'rm', 'localeFallback' => 'rm'), - 'rn' => array('language' => 'Rundi', 'locale' => 'rn', 'localeFallback' => 'rn'), - 'ro' => array('language' => 'Romanian', 'locale' => 'ro', 'localeFallback' => 'ro'), - 'ro-md' => array('language' => 'Romanian (Moldova)', 'locale' => 'ro_MD', 'localeFallback' => 'ro'), - 'roa' => array('language' => 'Romance (Other)', 'locale' => 'roa', 'localeFallback' => 'roa'), - 'roh' => array('language' => 'Raeto-Romance', 'locale' => 'roh', 'localeFallback' => 'roh'), - 'rom' => array('language' => 'Romany', 'locale' => 'rom', 'localeFallback' => 'rom'), - 'ru' => array('language' => 'Russian', 'locale' => 'rus', 'localeFallback' => 'rus'), - 'ru-md' => array('language' => 'Russian (Moldova)', 'locale' => 'ru_md', 'localeFallback' => 'rus'), - 'rup' => array('language' => 'Aromanian', 'locale' => 'rup', 'localeFallback' => 'rup'), - 'sa' => array('language' => 'Sanskrit', 'locale' => 'sa', 'localeFallback' => 'sa'), - 'sad' => array('language' => 'Sandawe', 'locale' => 'sad', 'localeFallback' => 'sad'), - 'sah' => array('language' => 'Yakut', 'locale' => 'sah', 'localeFallback' => 'sah'), - 'sai' => array('language' => 'South American Indian (Other)', 'locale' => 'sai', 'localeFallback' => 'sai'), - 'sal' => array('language' => 'Salishan languages', 'locale' => 'sal', 'localeFallback' => 'sal'), - 'sam' => array('language' => 'Samaritan Aramaic', 'locale' => 'sam', 'localeFallback' => 'sam'), - 'sas' => array('language' => 'Sasak', 'locale' => 'sas', 'localeFallback' => 'sas'), - 'sat' => array('language' => 'Santali', 'locale' => 'sat', 'localeFallback' => 'sat'), - 'sc' => array('language' => 'Sardinian', 'locale' => 'sc', 'localeFallback' => 'sc'), - 'scn' => array('language' => 'Sicilian', 'locale' => 'scn', 'localeFallback' => 'scn'), - 'sco' => array('language' => 'Scots', 'locale' => 'sco', 'localeFallback' => 'sco'), - 'sd' => array('language' => 'Sindhi', 'locale' => 'sd', 'localeFallback' => 'sd'), - 'se' => array('language' => 'Northern Sami', 'locale' => 'se', 'localeFallback' => 'se'), - 'sel' => array('language' => 'Selkup', 'locale' => 'sel', 'localeFallback' => 'sel'), - 'sem' => array('language' => 'Semitic (Other)', 'locale' => 'sem', 'localeFallback' => 'sem'), - 'sg' => array('language' => 'Sango', 'locale' => 'sg', 'localeFallback' => 'sg'), - 'sga' => array('language' => 'Irish, Old', 'locale' => 'sga', 'localeFallback' => 'sga'), - 'shn' => array('language' => 'Shan', 'locale' => 'shn', 'localeFallback' => 'shn'), - 'si' => array('language' => 'Sinhala; Sinhalese', 'locale' => 'si', 'localeFallback' => 'si'), - 'sid' => array('language' => 'Sidamo', 'locale' => 'sid', 'localeFallback' => 'sid'), - 'sio' => array('language' => 'Siouan languages', 'locale' => 'sio', 'localeFallback' => 'sio'), - 'sit' => array('language' => 'Sino-Tibetan (Other)', 'locale' => 'sit', 'localeFallback' => 'sit'), - 'sk' => array('language' => 'Slovak', 'locale' => 'sk', 'localeFallback' => 'sk'), - 'sl' => array('language' => 'Slovenian', 'locale' => 'sl', 'localeFallback' => 'sl'), - 'sla' => array('language' => 'Slavic (Other)', 'locale' => 'sla', 'localeFallback' => 'sla'), - 'sm' => array('language' => 'Samoan', 'locale' => 'sm', 'localeFallback' => 'sm'), - 'sma' => array('language' => 'Southern Sami', 'locale' => 'sma', 'localeFallback' => 'sma'), - 'smi' => array('language' => 'Sami languages (Other)', 'locale' => 'smi', 'localeFallback' => 'smi'), - 'smj' => array('language' => 'Lule Sami', 'locale' => 'smj', 'localeFallback' => 'smj'), - 'smn' => array('language' => 'Inari Sami', 'locale' => 'smn', 'localeFallback' => 'smn'), - 'sms' => array('language' => 'Skolt Sami', 'locale' => 'sms', 'localeFallback' => 'sms'), - 'sn' => array('language' => 'Shona', 'locale' => 'sn', 'localeFallback' => 'sn'), - 'snk' => array('language' => 'Soninke', 'locale' => 'snk', 'localeFallback' => 'snk'), - 'so' => array('language' => 'Somali', 'locale' => 'so', 'localeFallback' => 'so'), - 'sog' => array('language' => 'Sogdian', 'locale' => 'sog', 'localeFallback' => 'sog'), - 'son' => array('language' => 'Songhai', 'locale' => 'son', 'localeFallback' => 'son'), - 'sq' => array('language' => 'Albanian', 'locale' => 'sq', 'localeFallback' => 'sq'), - 'sr' => array('language' => 'Serbian', 'locale' => 'sr', 'localeFallback' => 'sr'), - 'srr' => array('language' => 'Serer', 'locale' => 'srr', 'localeFallback' => 'srr'), - 'ss' => array('language' => 'Swati', 'locale' => 'ss', 'localeFallback' => 'ss'), - 'ssa' => array('language' => 'Nilo-Saharan (Other)', 'locale' => 'ssa', 'localeFallback' => 'ssa'), - 'st' => array('language' => 'Southern Sotho', 'locale' => 'st', 'localeFallback' => 'st'), - 'su' => array('language' => 'Sundanese', 'locale' => 'su', 'localeFallback' => 'su'), - 'suk' => array('language' => 'Sukuma', 'locale' => 'suk', 'localeFallback' => 'suk'), - 'sus' => array('language' => 'Susu', 'locale' => 'sus', 'localeFallback' => 'sus'), - 'sux' => array('language' => 'Sumerian', 'locale' => 'sux', 'localeFallback' => 'sux'), - 'sv' => array('language' => 'Swedish', 'locale' => 'sv', 'localeFallback' => 'sv'), - 'sv-fi' => array('language' => 'Swedish (Finland)', 'locale' => 'sv_FI', 'localeFallback' => 'sv'), - 'sw' => array('language' => 'Swahili', 'locale' => 'sw', 'localeFallback' => 'sw'), - 'swa' => array('language' => 'Swahili', 'locale' => 'swa', 'localeFallback' => 'swa'), - 'swe' => array('language' => 'Swedish', 'locale' => 'swe', 'localeFallback' => 'swe'), - 'syr' => array('language' => 'Syriac', 'locale' => 'syr', 'localeFallback' => 'syr'), - 'ta' => array('language' => 'Tamil', 'locale' => 'ta', 'localeFallback' => 'ta'), - 'tai' => array('language' => 'Tai (Other)', 'locale' => 'tai', 'localeFallback' => 'tai'), - 'te' => array('language' => 'Telugu', 'locale' => 'te', 'localeFallback' => 'te'), - 'tem' => array('language' => 'Timne', 'locale' => 'tem', 'localeFallback' => 'tem'), - 'ter' => array('language' => 'Tereno', 'locale' => 'ter', 'localeFallback' => 'ter'), - 'tet' => array('language' => 'Tetum', 'locale' => 'tet', 'localeFallback' => 'tet'), - 'tg' => array('language' => 'Tajik', 'locale' => 'tg', 'localeFallback' => 'tg'), - 'th' => array('language' => 'Thai', 'locale' => 'th', 'localeFallback' => 'th'), - 'tig' => array('language' => 'Tigre', 'locale' => 'tig', 'localeFallback' => 'tig'), - 'tir' => array('language' => 'Tigrinya|', 'locale' => 'ti', 'localeFallback' => 'ti'), - 'tiv' => array('language' => 'Tiv', 'locale' => 'tiv', 'localeFallback' => 'tiv'), - 'tk' => array('language' => 'Turkmen', 'locale' => 'tk', 'localeFallback' => 'tk'), - 'tkl' => array('language' => 'Tokelau', 'locale' => 'tkl', 'localeFallback' => 'tkl'), - 'tl' => array('language' => 'Tagalog', 'locale' => 'tl', 'localeFallback' => 'tl'), - 'tlh' => array('language' => 'Klingon; tlhIngan-Hol', 'locale' => 'tlh', 'localeFallback' => 'tlh'), - 'tli' => array('language' => 'Tlingit', 'locale' => 'tli', 'localeFallback' => 'tli'), - 'tmh' => array('language' => 'Tamashek', 'locale' => 'tmh', 'localeFallback' => 'tmh'), - 'tn' => array('language' => 'Tswana', 'locale' => 'tn', 'localeFallback' => 'tn'), - 'to' => array('language' => 'Tonga (Tonga Islands)', 'locale' => 'to', 'localeFallback' => 'to'), - 'tog' => array('language' => 'Tonga (Nyasa)', 'locale' => 'tog', 'localeFallback' => 'tog'), - 'tpi' => array('language' => 'Tok Pisin', 'locale' => 'tpi', 'localeFallback' => 'tpi'), - 'tr' => array('language' => 'Turkish', 'locale' => 'tr', 'localeFallback' => 'tr'), - 'ts' => array('language' => 'Tsonga', 'locale' => 'ts', 'localeFallback' => 'ts'), - 'tsi' => array('language' => 'Tsimshian', 'locale' => 'tsi', 'localeFallback' => 'tsi'), - 'tt' => array('language' => 'Tatar', 'locale' => 'tt', 'localeFallback' => 'tt'), - 'tum' => array('language' => 'Tumbuka', 'locale' => 'tum', 'localeFallback' => 'tum'), - 'tup' => array('language' => 'Tupi languages', 'locale' => 'tup', 'localeFallback' => 'tup'), - 'tut' => array('language' => 'Altaic (Other)', 'locale' => 'tut', 'localeFallback' => 'tut'), - 'tvl' => array('language' => 'Tuvalu', 'locale' => 'tvl', 'localeFallback' => 'tvl'), - 'tw' => array('language' => 'Twi', 'locale' => 'tw', 'localeFallback' => 'tw'), - 'ty' => array('language' => 'Tahitian', 'locale' => 'ty', 'localeFallback' => 'ty'), - 'tyv' => array('language' => 'Tuvinian', 'locale' => 'tyv', 'localeFallback' => 'tyv'), - 'udm' => array('language' => 'Udmurt', 'locale' => 'udm', 'localeFallback' => 'udm'), - 'ug' => array('language' => 'Uighur; Uyghur', 'locale' => 'ug', 'localeFallback' => 'ug'), - 'uga' => array('language' => 'Ugaritic', 'locale' => 'uga', 'localeFallback' => 'uga'), - 'uk' => array('language' => 'Ukrainian', 'locale' => 'uk', 'localeFallback' => 'uk'), - 'umb' => array('language' => 'Umbundu', 'locale' => 'umb', 'localeFallback' => 'umb'), - 'ur' => array('language' => 'Urdu', 'locale' => 'ur', 'localeFallback' => 'ur'), - 'us' => array('language' => 'English (United States)', 'locale' => 'en_US', 'localeFallback' => 'en_US'), - 'uz' => array('language' => 'Uzbek', 'locale' => 'uz', 'localeFallback' => 'uz'), - 'vai' => array('language' => 'Vai', 'locale' => 'vai', 'localeFallback' => 'vai'), - 've' => array('language' => 'Venda', 'locale' => 've', 'localeFallback' => 've'), - 'vi' => array('language' => 'Vietnamese', 'locale' => 'vi', 'localeFallback' => 'vi'), - 'vo' => array('language' => 'Volapük', 'locale' => 'vo', 'localeFallback' => 'vo'), - 'vot' => array('language' => 'Votic', 'locale' => 'vot', 'localeFallback' => 'vot'), - 'wa' => array('language' => 'Walloon', 'locale' => 'wa', 'localeFallback' => 'wa'), - 'wak' => array('language' => 'Wakashan languages', 'locale' => 'wak', 'localeFallback' => 'wak'), - 'wal' => array('language' => 'Walamo', 'locale' => 'wal', 'localeFallback' => 'wal'), - 'war' => array('language' => 'Waray', 'locale' => 'war', 'localeFallback' => 'war'), - 'was' => array('language' => 'Washo', 'locale' => 'was', 'localeFallback' => 'was'), - 'wen' => array('language' => 'Sorbian languages', 'locale' => 'wen', 'localeFallback' => 'wen'), - 'wo' => array('language' => 'Wolof', 'locale' => 'wo', 'localeFallback' => 'wo'), - 'xal' => array('language' => 'Kalmyk', 'locale' => 'xal', 'localeFallback' => 'xal'), - 'xh' => array('language' => 'Xhosa', 'locale' => 'xh', 'localeFallback' => 'xh'), - 'yao' => array('language' => 'Yao', 'locale' => 'yao', 'localeFallback' => 'yao'), - 'yap' => array('language' => 'Yapese', 'locale' => 'yap', 'localeFallback' => 'yap'), - 'yi' => array('language' => 'Yiddish', 'locale' => 'yi', 'localeFallback' => 'yi'), - 'yo' => array('language' => 'Yoruba', 'locale' => 'yo', 'localeFallback' => 'yo'), - 'ypk' => array('language' => 'Yupik languages', 'locale' => 'ypk', 'localeFallback' => 'ypk'), - 'za' => array('language' => 'Zhuang; Chuang', 'locale' => 'za', 'localeFallback' => 'za'), - 'zap' => array('language' => 'Zapotec', 'locale' => 'zap', 'localeFallback' => 'zap'), - 'zen' => array('language' => 'Zenaga', 'locale' => 'zen', 'localeFallback' => 'zen'), - 'zh' => array('language' => 'Chinese', 'locale' => 'zh', 'localeFallback' => 'zh'), - 'zh-cn' => array('language' => 'Chinese (China)', 'locale' => 'zh_CN', 'localeFallback' => 'zh'), - 'zh-hk' => array('language' => 'Chinese (Hong Kong SAR)', 'locale' => 'zh_HK', 'localeFallback' => 'zh'), - 'zh-mo' => array('language' => 'Chinese (Macau SAR)', 'locale' => 'zh_MO', 'localeFallback' => 'zh'), - 'zh-sg' => array('language' => 'Chinese (Singapore)', 'locale' => 'zh_SG', 'localeFallback' => 'zh'), - 'zh-tw' => array('language' => 'Chinese (Taiwan)', 'locale' => 'zh_TW', 'localeFallback' => 'zh'), - 'znd' => array('language' => 'Zande', 'locale' => 'znd', 'localeFallback' => 'znd'), - 'zu' => array('language' => 'Zulu', 'locale' => 'zu', 'localeFallback' => 'zu'), - 'zun' => array('language' => 'Zuni', 'locale' => 'zun', 'localeFallback' => 'zun')); - +/** + * Enter description here... + * + * @var array + * @access private + */ + var $__l10nMap = array(/* Afrikaans */ 'afr' => 'af', + /* Albanian */ 'alb' => 'sq', + /* Arabic */ 'ara' => 'ar', + /* Basque */ 'baq' => 'eu', + /* Bulgarian */ 'bul' => 'bg', + /* Byelorussian */ 'bel' => 'be', + /* Catalan */ 'cat' => 'ca', + /* Chinese */ 'chi' => 'zh', + /* Chinese */ 'zho' => 'zh', + /* Croatian */ 'hrv' => 'hr', + /* Croatian */ 'scr' => 'hr', + /* Czech */ 'ces' => 'cs', + /* Czech */ 'cze' => 'cs', + /* Danish */ 'dan' => 'da', + /* Dutch (Standard) */ 'dut' => 'nl', + /* Dutch (Standard) */ 'nld' => 'nl', + /* English */ 'eng' => 'en', + /* Estonian */ 'est' => 'et', + /* Faeroese */ 'fao' => 'fo', + /* Farsi */ 'fas' => 'fa', + /* Farsi */ 'per' => 'fa', + /* Finnish */ 'fin' => 'fi', + /* French (Standard) */ 'fra' => 'fr', + /* French (Standard) */ 'fre' => 'fr', + /* Gaelic (Scots) */ 'gla' => 'gd', + /* Galician */ 'glg' => 'gl', + /* German (Standard) */ 'deu' => 'de', + /* German (Standard) */ 'ger' => 'de', + /* Greek */ 'ell' => 'el', + /* Greek */ 'gre' => 'el', + /* Hebrew */ 'heb' => 'he', + /* Hindi */ 'hin' => 'hi', + /* Hungarian */ 'hun' => 'hu', + /* Icelandic */ 'ice' => 'is', + /* Icelandic */ 'isl' => 'is', + /* Indonesian */ 'ind' => 'id', + /* Irish */ 'gle' => 'ga', + /* Italian */ 'ita' => 'it', + /* Japanese */ 'jpn' => 'ja', + /* Korean */ 'kor' => 'ko', + /* Latvian */ 'lav' => 'lv', + /* Lithuanian */ 'lit' => 'lt', + /* Macedonian */ 'mac' => 'mk', + /* Macedonian */ 'mkd' => 'mk', + /* Malaysian */ 'may' => 'ms', + /* Malaysian */ 'msa' => 'ms', + /* Maltese */ 'mlt' => 'mt', + /* Norwegian */ 'nor' => 'no', + /* Norwegian Bokmal */ 'nob' => 'nb', + /* Norwegian Nynorsk */ 'nno' => 'nn', + /* Polish */ 'pol' => 'pl', + /* Portuguese (Portugal) */ 'por' => 'pt', + /* Rhaeto-Romanic */ 'roh' => 'rm', + /* Romanian */ 'ron' => 'ro', + /* Romanian */ 'rum' => 'ro', + /* Russian */ 'rus' => 'ru', + /* Sami (Lappish) */ 'smi' => 'sz', + /* Scots Gaelic */ 'gla' => 'gd', + /* Serbian */ 'scc' => 'sr', + /* Serbian */ 'srp' => 'sr', + /* Slovack */ 'slk' => 'sk', + /* Slovack */ 'slo' => 'sk', + /* Slovenian */ 'slv' => 'sl', + /* Sorbian */ 'wen' => 'sb', + /* Spanish (Spain - Traditional) */ 'spa' => 'es', + /* Swedish */ 'swe' => 'sv', + /* Thai */ 'tha' => 'th', + /* Tsonga */ 'tso' => 'ts', + /* Tswana */ 'tsn' => 'tn', + /* Turkish */ 'tur' => 'tr', + /* Ukrainian */ 'ukr' => 'uk', + /* Urdu */ 'urd' => 'ur', + /* Venda */ 'ven' => 've', + /* Vietnamese */ 'vie' => 'vi', + /* Xhosa */ 'xho' => 'xh', + /* Yiddish */ 'yid' => 'yi', + /* Zulu */ 'zul' => 'zu'); +/** + * Enter description here... + * + * @var unknown_type + * @access private + */ + var $__l10nCatalog = array('af' => array('language' => 'Afrikaans', 'locale' => 'afr', 'localeFallback' => 'afr'), + 'ar' => array('language' => 'Arabic', 'locale' => 'ara', 'localeFallback' => 'ara'), + 'ar-ae' => array('language' => 'Arabic (U.A.E.)', 'locale' => 'ar_ae', 'localeFallback' => 'ara'), + 'ar-bh' => array('language' => 'Arabic (Bahrain)', 'locale' => 'ar_bh', 'localeFallback' => 'ara'), + 'ar-dz' => array('language' => 'Arabic (Algeria)', 'locale' => 'ar_dz', 'localeFallback' => 'ara'), + 'ar-eg' => array('language' => 'Arabic (Egypt)', 'locale' => 'ar_eg', 'localeFallback' => 'ara'), + 'ar-iq' => array('language' => 'Arabic (Iraq)', 'locale' => 'ar_iq', 'localeFallback' => 'ara'), + 'ar-jo' => array('language' => 'Arabic (Jordan)', 'locale' => 'ar_jo', 'localeFallback' => 'ara'), + 'ar-kw' => array('language' => 'Arabic (Kuwait)', 'locale' => 'ar_kw', 'localeFallback' => 'ara'), + 'ar-lb' => array('language' => 'Arabic (Lebanon)', 'locale' => 'ar_lb', 'localeFallback' => 'ara'), + 'ar-ly' => array('language' => 'Arabic (Libya)', 'locale' => 'ar_ly', 'localeFallback' => 'ara'), + 'ar-ma' => array('language' => 'Arabic (Morocco)', 'locale' => 'ar_ma', 'localeFallback' => 'ara'), + 'ar-om' => array('language' => 'Arabic (Oman)', 'locale' => 'ar_om', 'localeFallback' => 'ara'), + 'ar-qa' => array('language' => 'Arabic (Qatar)', 'locale' => 'ar_qa', 'localeFallback' => 'ara'), + 'ar-sa' => array('language' => 'Arabic (Saudi Arabia)', 'locale' => 'ar_sa', 'localeFallback' => 'ara'), + 'ar-sy' => array('language' => 'Arabic (Syria)', 'locale' => 'ar_sy', 'localeFallback' => 'ara'), + 'ar-tn' => array('language' => 'Arabic (Tunisia)', 'locale' => 'ar_tn', 'localeFallback' => 'ara'), + 'ar-ye' => array('language' => 'Arabic (Yemen)', 'locale' => 'ar_ye', 'localeFallback' => 'ara'), + 'be' => array('language' => 'Byelorussian', 'locale' => 'bel', 'localeFallback' => 'bel'), + 'bg' => array('language' => 'Bulgarian', 'locale' => 'bul', 'localeFallback' => 'bul'), + 'ca' => array('language' => 'Catalan', 'locale' => 'cat', 'localeFallback' => 'cat'), + 'cs' => array('language' => 'Czech', 'locale' => 'cze', 'localeFallback' => 'cze'), + 'da' => array('language' => 'Danish', 'locale' => 'dan', 'localeFallback' => 'dan'), + 'de' => array('language' => 'German (Standard)', 'locale' => 'deu', 'localeFallback' => 'deu'), + 'de-at' => array('language' => 'German (Austria)', 'locale' => 'de_at', 'localeFallback' => 'deu'), + 'de-ch' => array('language' => 'German (Swiss)', 'locale' => 'de_ch', 'localeFallback' => 'deu'), + 'de-de' => array('language' => 'German (Germany)', 'locale' => 'de_de', 'localeFallback' => 'deu'), + 'de-li' => array('language' => 'German (Liechtenstein)', 'locale' => 'de_li', 'localeFallback' => 'deu'), + 'de-lu' => array('language' => 'German (Luxembourg)', 'locale' => 'de_lu', 'localeFallback' => 'deu'), + 'e' => array('language' => 'Greek', 'locale' => 'gre', 'localeFallback' => 'gre'), + 'el' => array('language' => 'Greek', 'locale' => 'gre', 'localeFallback' => 'gre'), + 'en' => array('language' => 'English', 'locale' => 'eng', 'localeFallback' => 'eng'), + 'en-au' => array('language' => 'English (Australian)', 'locale' => 'en_au', 'localeFallback' => 'eng'), + 'en-bz' => array('language' => 'English (Belize)', 'locale' => 'en_bz', 'localeFallback' => 'eng'), + 'en-ca' => array('language' => 'English (Canadian)', 'locale' => 'en_ca', 'localeFallback' => 'eng'), + 'en-gb' => array('language' => 'English (British)', 'locale' => 'en_gb', 'localeFallback' => 'eng'), + 'en-ie' => array('language' => 'English (Ireland)', 'locale' => 'en_ie', 'localeFallback' => 'eng'), + 'en-jm' => array('language' => 'English (Jamaica)', 'locale' => 'en_jm', 'localeFallback' => 'eng'), + 'en-nz' => array('language' => 'English (New Zealand)', 'locale' => 'en_nz', 'localeFallback' => 'eng'), + 'en-tt' => array('language' => 'English (Trinidad)', 'locale' => 'en_tt', 'localeFallback' => 'eng'), + 'en-us' => array('language' => 'English (United States)', 'locale' => 'en_us', 'localeFallback' => 'eng'), + 'en-za' => array('language' => 'English (South Africa)', 'locale' => 'en_za', 'localeFallback' => 'eng'), + 'es' => array('language' => 'Spanish (Spain - Traditional)', 'locale' => 'spa', 'localeFallback' => 'spa'), + 'es-ar' => array('language' => 'Spanish (Argentina)', 'locale' => 'es_ar', 'localeFallback' => 'spa'), + 'es-bo' => array('language' => 'Spanish (Bolivia)', 'locale' => 'es_bo', 'localeFallback' => 'spa'), + 'es-cl' => array('language' => 'Spanish (Chile)', 'locale' => 'es_cl', 'localeFallback' => 'spa'), + 'es-co' => array('language' => 'Spanish (Colombia)', 'locale' => 'es_co', 'localeFallback' => 'spa'), + 'es-cr' => array('language' => 'Spanish (Costa Rica)', 'locale' => 'es_cr', 'localeFallback' => 'spa'), + 'es-do' => array('language' => 'Spanish (Dominican Republic)', 'locale' => 'es_do', 'localeFallback' => 'spa'), + 'es-ec' => array('language' => 'Spanish (Ecuador)', 'locale' => 'es_ec', 'localeFallback' => 'spa'), + 'es-es' => array('language' => 'Spanish (Spain)', 'locale' => 'es_es', 'localeFallback' => 'spa'), + 'es-gt' => array('language' => 'Spanish (Guatemala)', 'locale' => 'es_gt', 'localeFallback' => 'spa'), + 'es-hn' => array('language' => 'Spanish (Honduras)', 'locale' => 'es_hn', 'localeFallback' => 'spa'), + 'es-mx' => array('language' => 'Spanish (Mexican)', 'locale' => 'es_mx', 'localeFallback' => 'spa'), + 'es-ni' => array('language' => 'Spanish (Nicaragua)', 'locale' => 'es_ni', 'localeFallback' => 'spa'), + 'es-pa' => array('language' => 'Spanish (Panama)', 'locale' => 'es_pa', 'localeFallback' => 'spa'), + 'es-pe' => array('language' => 'Spanish (Peru)', 'locale' => 'es_pe', 'localeFallback' => 'spa'), + 'es-pr' => array('language' => 'Spanish (Puerto Rico)', 'locale' => 'es_pr', 'localeFallback' => 'spa'), + 'es-py' => array('language' => 'Spanish (Paraguay)', 'locale' => 'es_py', 'localeFallback' => 'spa'), + 'es-sv' => array('language' => 'Spanish (El Salvador)', 'locale' => 'es_sv', 'localeFallback' => 'spa'), + 'es-uy' => array('language' => 'Spanish (Uruguay)', 'locale' => 'es_uy', 'localeFallback' => 'spa'), + 'es-ve' => array('language' => 'Spanish (Venezuela)', 'locale' => 'es_ve', 'localeFallback' => 'spa'), + 'et' => array('language' => 'Estonian', 'locale' => 'est', 'localeFallback' => 'est'), + 'eu' => array('language' => 'Basque', 'locale' => 'baq', 'localeFallback' => 'baq'), + 'fa' => array('language' => 'Faeroese', 'locale' => 'per', 'localeFallback' => 'per'), + 'fi' => array('language' => 'Finnish', 'locale' => 'fin', 'localeFallback' => 'fin'), + 'fo' => array('language' => 'Faeroese', 'locale' => 'fao', 'localeFallback' => 'fao'), + 'fr' => array('language' => 'French (Standard)', 'locale' => 'fre', 'localeFallback' => 'fre'), + 'fr-be' => array('language' => 'French (Belgium)', 'locale' => 'fr_be', 'localeFallback' => 'fre'), + 'fr-ca' => array('language' => 'French (Canadian)', 'locale' => 'fr_ca', 'localeFallback' => 'fre'), + 'fr-ch' => array('language' => 'French (Swiss)', 'locale' => 'fr_ch', 'localeFallback' => 'fre'), + 'fr-fr' => array('language' => 'French (France)', 'locale' => 'fr_fr', 'localeFallback' => 'fre'), + 'fr-lu' => array('language' => 'French (Luxembourg)', 'locale' => 'fr_lu', 'localeFallback' => 'fre'), + 'ga' => array('language' => 'Irish', 'locale' => 'gle', 'localeFallback' => 'gle'), + 'gd' => array('language' => 'Gaelic (Scots)', 'locale' => 'gla', 'localeFallback' => 'gla'), + 'gd-ie' => array('language' => 'Gaelic (Irish)', 'locale' => 'gd_ie', 'localeFallback' => 'gla'), + 'gl' => array('language' => 'Galician', 'locale' => 'glg', 'localeFallback' => 'glg'), + 'he' => array('language' => 'Hebrew', 'locale' => 'heb', 'localeFallback' => 'heb'), + 'hi' => array('language' => 'Hindi', 'locale' => 'hin', 'localeFallback' => 'hin'), + 'hr' => array('language' => 'Croatian', 'locale' => 'scr', 'localeFallback' => 'scr'), + 'hu' => array('language' => 'Hungarian', 'locale' => 'hun', 'localeFallback' => 'hun'), + 'id' => array('language' => 'Indonesian', 'locale' => 'ind', 'localeFallback' => 'ind'), + 'in' => array('language' => 'Indonesian', 'locale' => 'ind', 'localeFallback' => 'ind'), + 'is' => array('language' => 'Icelandic', 'locale' => 'ice', 'localeFallback' => 'ice'), + 'it' => array('language' => 'Italian', 'locale' => 'ita', 'localeFallback' => 'ita'), + 'it-ch' => array('language' => 'Italian (Swiss) ', 'locale' => 'it_ch', 'localeFallback' => 'ita'), + 'ja' => array('language' => 'Japanese', 'locale' => 'jpn', 'localeFallback' => 'jpn'), + 'ko' => array('language' => 'Korean', 'locale' => 'kor', 'localeFallback' => 'kor'), + 'ko-kp' => array('language' => 'Korea (North)', 'locale' => 'ko_kp', 'localeFallback' => 'kor'), + 'ko-kr' => array('language' => 'Korea (South)', 'locale' => 'ko_kr', 'localeFallback' => 'kor'), + 'koi8-r' => array('language' => 'Russian', 'locale' => 'koi8_r', 'localeFallback' => 'rus'), + 'lt' => array('language' => 'Lithuanian', 'locale' => 'lit', 'localeFallback' => 'lit'), + 'lv' => array('language' => 'Latvian)', 'locale' => 'lav', 'localeFallback' => 'lav'), + 'mk' => array('language' => 'FYRO Macedonian', 'locale' => 'mk', 'localeFallback' => 'mac'), + 'mk-mk' => array('language' => 'Macedonian', 'locale' => 'mk_mk', 'localeFallback' => 'mac'), + 'ms' => array('language' => 'Malaysian', 'locale' => 'may', 'localeFallback' => 'may'), + 'mt' => array('language' => 'Maltese', 'locale' => 'mlt', 'localeFallback' => 'mlt'), + 'n' => array('language' => 'Dutch (Standard)', 'locale' => 'dut', 'localeFallback' => 'dut'), + 'nb' => array('language' => 'Norwegian Bokmal', 'locale' => 'nob', 'localeFallback' => 'nor'), + 'nl' => array('language' => 'Dutch (Standard)', 'locale' => 'dut', 'localeFallback' => 'dut'), + 'nl-be' => array('language' => 'Dutch (Belgium)', 'locale' => 'nl_be', 'localeFallback' => 'dut'), + 'nn' => array('language' => 'Norwegian Nynorsk', 'locale' => 'nno', 'localeFallback' => 'nor'), + 'no' => array('language' => 'Norwegian', 'locale' => 'nor', 'localeFallback' => 'nor'), + 'p' => array('language' => 'Polish', 'locale' => 'pol', 'localeFallback' => 'pol'), + 'pl' => array('language' => 'Polish', 'locale' => 'pol', 'localeFallback' => 'pol'), + 'pt' => array('language' => 'Portuguese (Portugal)', 'locale' => 'por', 'localeFallback' => 'por'), + 'pt-br' => array('language' => 'Portuguese (Brazil)', 'locale' => 'pt_br', 'localeFallback' => 'por'), + 'rm' => array('language' => 'Rhaeto-Romanic', 'locale' => 'roh', 'localeFallback' => 'roh'), + 'ro' => array('language' => 'Romanian', 'locale' => 'rum', 'localeFallback' => 'rum'), + 'ro' => array('language' => 'Russian', 'locale' => 'rus', 'localeFallback' => 'rus'), + 'ro-mo' => array('language' => 'Romanian (Moldavia)', 'locale' => 'ro_mo', 'localeFallback' => 'rum'), + 'ru-mo' => array('language' => 'Russian (Moldavia)', 'locale' => 'ru_mo', 'localeFallback' => 'rus'), + 'sb' => array('language' => 'Slovenian', 'locale' => 'wen', 'localeFallback' => 'wen'), + 'sk' => array('language' => 'Slovack', 'locale' => 'slo', 'localeFallback' => 'slo'), + 'sl' => array('language' => 'Slovenian', 'locale' => 'slv', 'localeFallback' => 'slv'), + 'sq' => array('language' => 'Albanian', 'locale' => 'alb', 'localeFallback' => 'alb'), + 'sr' => array('language' => 'Serbian', 'locale' => 'scc', 'localeFallback' => 'scc'), + 'sv' => array('language' => 'Swedish', 'locale' => 'swe', 'localeFallback' => 'swe'), + 'sv-fi' => array('language' => 'Swedish (Findland)', 'locale' => 'sv_fi', 'localeFallback' => 'swe'), + 'sx' => array('language' => 'Sutu', 'locale' => 'sx', 'localeFallback' => 'sx'), + 'sz' => array('language' => 'Sami (Lappish)', 'locale' => 'smi', 'localeFallback' => 'smi'), + 'th' => array('language' => 'Thai', 'locale' => 'tha', 'localeFallback' => 'tha'), + 'tn' => array('language' => 'Tswana', 'locale' => 'tsn', 'localeFallback' => 'tsn'), + 'tr' => array('language' => 'Turkish', 'locale' => 'tur', 'localeFallback' => 'tur'), + 'ts' => array('language' => 'Tsonga', 'locale' => 'tso', 'localeFallback' => 'tso'), + 'uk' => array('language' => 'Ukrainian', 'locale' => 'ukr', 'localeFallback' => 'ukr'), + 'ur' => array('language' => 'Urdu', 'locale' => 'urd', 'localeFallback' => 'urd'), + 've' => array('language' => 'Venda', 'locale' => 'ven', 'localeFallback' => 'ven'), + 'vi' => array('language' => 'Vietnamese', 'locale' => 'vie', 'localeFallback' => 'vie'), + 'xh' => array('language' => 'Xhosa', 'locale' => 'xho', 'localeFallback' => 'xho'), + 'yi' => array('language' => 'Yiddish', 'locale' => 'yid', 'localeFallback' => 'yid'), + 'zh' => array('language' => 'Chinese', 'locale' => 'chi', 'localeFallback' => 'chi'), + 'zh-cn' => array('language' => 'Chinese (PRC)', 'locale' => 'zh_cn', 'localeFallback' => 'chi'), + 'zh-hk' => array('language' => 'Chinese (Hong Kong)', 'locale' => 'zh_hk', 'localeFallback' => 'chi'), + 'zh-sg' => array('language' => 'Chinese (Singapore)', 'locale' => 'zh_sg', 'localeFallback' => 'chi'), + 'zh-tw' => array('language' => 'Chinese (Taiwan)', 'locale' => 'zh_tw', 'localeFallback' => 'chi'), + 'zu' => array('language' => 'Zulu', 'locale' => 'zul', 'localeFallback' => 'zul')); +/** + * Enter description here... + * + */ function __construct() { parent::__construct(); } +/** + * Enter description here... + * + * @param string $language + * @return unknown + * @access private + */ function get($language = null) { if (!is_null($language)) { - return $this->_setLanguage($language); + return $this->__setLanguage($language); } - return $this->_autoLanguage(); + return $this->__autoLanguage(); } - function _setLanguage($language = null) { - if ((!is_null($language)) && (isset($this->_l10nCatalog[$this->_l10nMap[$language]]))) { - $this->language = $this->_l10nCatalog[$this->_l10nMap[$language]]['language']; - $this->languagePath = array(0 => $this->_l10nCatalog[$language]['locale'], - 1 => $this->_l10nCatalog[$language]['localeFallback'], - 2 => $this->_l10nCatalog[DEFAULT_LANGUAGE]['localeFallback']); +/** + * Enter description here... + * + * @param string $language + * @access private + */ + function __setLanguage($language = null) { + if ((!is_null($language)) && (isset($this->__l10nCatalog[$this->__l10nMap[$language]]))) { + $this->language = $this->__l10nCatalog[$this->__l10nMap[$language]]['language']; + $this->languagePath = array(0 => $this->__l10nCatalog[$language]['locale'], + 1 => $this->__l10nCatalog[$language]['localeFallback'], + 2 => $this->__l10nCatalog[DEFAULT_LANGUAGE]['localeFallback']); $this->lang = $language; - $this->locale = $this->_l10nCatalog[$this->_l10nMap[$language]]['locale']; + $this->locale = $this->__l10nCatalog[$this->__l10nMap[$language]]['locale']; } elseif (defined('DEFAULT_LANGUAGE')) { - $this->language = $this->_l10nCatalog[$this->_l10nMap[DEFAULT_LANGUAGE]]['language']; - $this->languagePath = array(0 => $this->_l10nCatalog[$this->_l10nMap[DEFAULT_LANGUAGE]]['locale'], - 1 => $this->_l10nCatalog[$this->_l10nMap[DEFAULT_LANGUAGE]]['localeFallback']); + $this->language = $this->__l10nCatalog[$this->__l10nMap[DEFAULT_LANGUAGE]]['language']; + $this->languagePath = array(0 => $this->__l10nCatalog[$this->__l10nMap[DEFAULT_LANGUAGE]]['locale'], + 1 => $this->__l10nCatalog[$this->__l10nMap[DEFAULT_LANGUAGE]]['localeFallback']); $this->lang = DEFAULT_LANGUAGE; - $this->locale = $this->_l10nCatalog[$this->_l10nMap[DEFAULT_LANGUAGE]]['locale']; + $this->locale = $this->__l10nCatalog[$this->__l10nMap[DEFAULT_LANGUAGE]]['locale']; } } - function _autoLanguage() { +/** + * Enter description here... + * @access private + */ + function __autoLanguage() { $_detectableLanguages = split ('[,;]', env('HTTP_ACCEPT_LANGUAGE')); foreach ($_detectableLanguages as $langKey => $key) { - if (isset($this->_l10nCatalog[$langKey])) { - $this->language = $this->_l10nCatalog[$langKey]['language']; - $this->languagePath = array(0 => $this->_l10nCatalog[$langKey]['locale'], - 1 => $this->_l10nCatalog[$langKey]['localeFallback'], - 2 => $this->_l10nCatalog[DEFAULT_LANGUAGE]['localeFallback']); + if (isset($this->__l10nCatalog[$langKey])) { + $this->language = $this->__l10nCatalog[$langKey]['language']; + $this->languagePath = array(0 => $this->__l10nCatalog[$langKey]['locale'], + 1 => $this->__l10nCatalog[$langKey]['localeFallback'], + 2 => $this->__l10nCatalog[DEFAULT_LANGUAGE]['localeFallback']); $this->lang = $langKey; - $this->locale = $this->_l10nCatalog[$langKey]['locale']; + $this->locale = $this->__l10nCatalog[$langKey]['locale']; break; } }