From b7db66cb096c160446c9983ffbe13f8b70ed9835 Mon Sep 17 00:00:00 2001 From: Petr Skoda Date: Wed, 14 Apr 2010 12:14:18 +0000 Subject: [PATCH] MDL-22085 language name lists - implementation of iso-639-2 support --- lang/en/iso6392.php | 514 ++++++++++++++++++++++++++++++++++++++++++++ lib/moodlelib.php | 44 +++- 2 files changed, 547 insertions(+), 11 deletions(-) create mode 100644 lang/en/iso6392.php diff --git a/lang/en/iso6392.php b/lang/en/iso6392.php new file mode 100644 index 00000000000..7c5f6dcd583 --- /dev/null +++ b/lang/en/iso6392.php @@ -0,0 +1,514 @@ +. + +/** + * Strings for component 'iso6392', language 'en', branch 'MOODLE_20_STABLE' + * + * Note: + * - the list of languages was downloaded from http://www.loc.gov/standards/iso639-2/ascii_8bits.html + * - array indexes are the ISO 639-2 "T" values (terminology) + * - some language names are shortened + * + * @package iso6392 + * @copyright 2010 onwards Martin Dougiamas {@link http://moodle.com} + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ + +$string['aar'] = 'Afar'; +$string['abk'] = 'Abkhazian'; +$string['ace'] = 'Achinese'; +$string['ach'] = 'Acoli'; +$string['ada'] = 'Adangme'; +$string['ady'] = 'Adyghe; Adygei'; +$string['afa'] = 'Afro-Asiatic languages'; +$string['afh'] = 'Afrihili'; +$string['afr'] = 'Afrikaans'; +$string['ain'] = 'Ainu'; +$string['aka'] = 'Akan'; +$string['akk'] = 'Akkadian'; +$string['sqi'] = 'Albanian'; +$string['ale'] = 'Aleut'; +$string['alg'] = 'Algonquian languages'; +$string['alt'] = 'Southern Altai'; +$string['amh'] = 'Amharic'; +$string['ang'] = 'English, Old (ca.450-1100)'; +$string['anp'] = 'Angika'; +$string['apa'] = 'Apache languages'; +$string['ara'] = 'Arabic'; +$string['arc'] = 'Official Aramaic (700-300 BCE); Imperial Aramaic (700-300 BCE)'; +$string['arg'] = 'Aragonese'; +$string['hye'] = 'Armenian'; +$string['arn'] = 'Mapudungun; Mapuche'; +$string['arp'] = 'Arapaho'; +$string['art'] = 'Artificial languages'; +$string['arw'] = 'Arawak'; +$string['asm'] = 'Assamese'; +$string['ast'] = 'Asturian; Bable; Leonese; Asturleonese'; +$string['ath'] = 'Athapascan languages'; +$string['aus'] = 'Australian languages'; +$string['ava'] = 'Avaric'; +$string['ave'] = 'Avestan'; +$string['awa'] = 'Awadhi'; +$string['aym'] = 'Aymara'; +$string['aze'] = 'Azerbaijani'; +$string['bad'] = 'Banda languages'; +$string['bai'] = 'Bamileke languages'; +$string['bak'] = 'Bashkir'; +$string['bal'] = 'Baluchi'; +$string['bam'] = 'Bambara'; +$string['ban'] = 'Balinese'; +$string['eus'] = 'Basque'; +$string['bas'] = 'Basa'; +$string['bat'] = 'Baltic languages'; +$string['bej'] = 'Beja; Bedawiyet'; +$string['bel'] = 'Belarusian'; +$string['bem'] = 'Bemba'; +$string['ben'] = 'Bengali'; +$string['ber'] = 'Berber languages'; +$string['bho'] = 'Bhojpuri'; +$string['bih'] = 'Bihari languages'; +$string['bik'] = 'Bikol'; +$string['bin'] = 'Bini; Edo'; +$string['bis'] = 'Bislama'; +$string['bla'] = 'Siksika'; +$string['bnt'] = 'Bantu (Other)'; +$string['bos'] = 'Bosnian'; +$string['bra'] = 'Braj'; +$string['bre'] = 'Breton'; +$string['btk'] = 'Batak languages'; +$string['bua'] = 'Buriat'; +$string['bug'] = 'Buginese'; +$string['bul'] = 'Bulgarian'; +$string['mya'] = 'Burmese'; +$string['byn'] = 'Blin; Bilin'; +$string['cad'] = 'Caddo'; +$string['cai'] = 'Central American Indian languages'; +$string['car'] = 'Galibi Carib'; +$string['cat'] = 'Catalan; Valencian'; +$string['cau'] = 'Caucasian languages'; +$string['ceb'] = 'Cebuano'; +$string['cel'] = 'Celtic languages'; +$string['cha'] = 'Chamorro'; +$string['chb'] = 'Chibcha'; +$string['che'] = 'Chechen'; +$string['chg'] = 'Chagatai'; +$string['zho'] = 'Chinese'; +$string['chk'] = 'Chuukese'; +$string['chm'] = 'Mari'; +$string['chn'] = 'Chinook jargon'; +$string['cho'] = 'Choctaw'; +$string['chp'] = 'Chipewyan; Dene Suline'; +$string['chr'] = 'Cherokee'; +$string['chu'] = 'Church Slavic; Old Slavonic; Church Slavonic; Old Bulgarian; Old Church Slavonic'; +$string['chv'] = 'Chuvash'; +$string['chy'] = 'Cheyenne'; +$string['cmc'] = 'Chamic languages'; +$string['cop'] = 'Coptic'; +$string['cor'] = 'Cornish'; +$string['cos'] = 'Corsican'; +$string['cpe'] = 'Creoles and pidgins, English based'; +$string['cpf'] = 'Creoles and pidgins, French-based '; +$string['cpp'] = 'Creoles and pidgins, Portuguese-based '; +$string['cre'] = 'Cree'; +$string['crh'] = 'Crimean Tatar; Crimean Turkish'; +$string['crp'] = 'Creoles and pidgins '; +$string['csb'] = 'Kashubian'; +$string['cus'] = 'Cushitic languages'; +$string['ces'] = 'Czech'; +$string['dak'] = 'Dakota'; +$string['dan'] = 'Danish'; +$string['dar'] = 'Dargwa'; +$string['day'] = 'Land Dayak languages'; +$string['del'] = 'Delaware'; +$string['den'] = 'Slave (Athapascan)'; +$string['dgr'] = 'Dogrib'; +$string['din'] = 'Dinka'; +$string['div'] = 'Divehi; Dhivehi; Maldivian'; +$string['doi'] = 'Dogri'; +$string['dra'] = 'Dravidian languages'; +$string['dsb'] = 'Lower Sorbian'; +$string['dua'] = 'Duala'; +$string['dum'] = 'Dutch, Middle (ca.1050-1350)'; +$string['nld'] = 'Dutch; Flemish'; +$string['dyu'] = 'Dyula'; +$string['dzo'] = 'Dzongkha'; +$string['efi'] = 'Efik'; +$string['egy'] = 'Egyptian (Ancient)'; +$string['eka'] = 'Ekajuk'; +$string['elx'] = 'Elamite'; +$string['eng'] = 'English'; +$string['enm'] = 'English, Middle (1100-1500)'; +$string['epo'] = 'Esperanto'; +$string['est'] = 'Estonian'; +$string['ewe'] = 'Ewe'; +$string['ewo'] = 'Ewondo'; +$string['fan'] = 'Fang'; +$string['fao'] = 'Faroese'; +$string['fat'] = 'Fanti'; +$string['fij'] = 'Fijian'; +$string['fil'] = 'Filipino; Pilipino'; +$string['fin'] = 'Finnish'; +$string['fiu'] = 'Finno-Ugrian languages'; +$string['fon'] = 'Fon'; +$string['fra'] = 'French'; +$string['frm'] = 'French, Middle (ca.1400-1600)'; +$string['fro'] = 'French, Old (842-ca.1400)'; +$string['frr'] = 'Northern Frisian'; +$string['frs'] = 'Eastern Frisian'; +$string['fry'] = 'Western Frisian'; +$string['ful'] = 'Fulah'; +$string['fur'] = 'Friulian'; +$string['gaa'] = 'Ga'; +$string['gay'] = 'Gayo'; +$string['gba'] = 'Gbaya'; +$string['gem'] = 'Germanic languages'; +$string['kat'] = 'Georgian'; +$string['deu'] = 'German'; +$string['gez'] = 'Geez'; +$string['gil'] = 'Gilbertese'; +$string['gla'] = 'Gaelic; Scottish Gaelic'; +$string['gle'] = 'Irish'; +$string['glg'] = 'Galician'; +$string['glv'] = 'Manx'; +$string['gmh'] = 'German, Middle High (ca.1050-1500)'; +$string['goh'] = 'German, Old High (ca.750-1050)'; +$string['gon'] = 'Gondi'; +$string['gor'] = 'Gorontalo'; +$string['got'] = 'Gothic'; +$string['grb'] = 'Grebo'; +$string['grc'] = 'Greek, Ancient (to 1453)'; +$string['ell'] = 'Greek, Modern (1453-)'; +$string['grn'] = 'Guarani'; +$string['gsw'] = 'Swiss German; Alemannic; Alsatian'; +$string['guj'] = 'Gujarati'; +$string['gwi'] = 'Gwich\'in'; +$string['hai'] = 'Haida'; +$string['hat'] = 'Haitian; Haitian Creole'; +$string['hau'] = 'Hausa'; +$string['haw'] = 'Hawaiian'; +$string['heb'] = 'Hebrew'; +$string['her'] = 'Herero'; +$string['hil'] = 'Hiligaynon'; +$string['him'] = 'Himachali languages; Western Pahari languages'; +$string['hin'] = 'Hindi'; +$string['hit'] = 'Hittite'; +$string['hmn'] = 'Hmong; Mong'; +$string['hmo'] = 'Hiri Motu'; +$string['hrv'] = 'Croatian'; +$string['hsb'] = 'Upper Sorbian'; +$string['hun'] = 'Hungarian'; +$string['hup'] = 'Hupa'; +$string['iba'] = 'Iban'; +$string['ibo'] = 'Igbo'; +$string['isl'] = 'Icelandic'; +$string['ido'] = 'Ido'; +$string['iii'] = 'Sichuan Yi; Nuosu'; +$string['ijo'] = 'Ijo languages'; +$string['iku'] = 'Inuktitut'; +$string['ile'] = 'Interlingue; Occidental'; +$string['ilo'] = 'Iloko'; +$string['ina'] = 'Interlingua (International Auxiliary Language Association)'; +$string['inc'] = 'Indic languages'; +$string['ind'] = 'Indonesian'; +$string['ine'] = 'Indo-European languages'; +$string['inh'] = 'Ingush'; +$string['ipk'] = 'Inupiaq'; +$string['ira'] = 'Iranian languages'; +$string['iro'] = 'Iroquoian languages'; +$string['ita'] = 'Italian'; +$string['jav'] = 'Javanese'; +$string['jbo'] = 'Lojban'; +$string['jpn'] = 'Japanese'; +$string['jpr'] = 'Judeo-Persian'; +$string['jrb'] = 'Judeo-Arabic'; +$string['kaa'] = 'Kara-Kalpak'; +$string['kab'] = 'Kabyle'; +$string['kac'] = 'Kachin; Jingpho'; +$string['kal'] = 'Kalaallisut; Greenlandic'; +$string['kam'] = 'Kamba'; +$string['kan'] = 'Kannada'; +$string['kar'] = 'Karen languages'; +$string['kas'] = 'Kashmiri'; +$string['kau'] = 'Kanuri'; +$string['kaw'] = 'Kawi'; +$string['kaz'] = 'Kazakh'; +$string['kbd'] = 'Kabardian'; +$string['kha'] = 'Khasi'; +$string['khi'] = 'Khoisan languages'; +$string['khm'] = 'Central Khmer'; +$string['kho'] = 'Khotanese; Sakan'; +$string['kik'] = 'Kikuyu; Gikuyu'; +$string['kin'] = 'Kinyarwanda'; +$string['kir'] = 'Kirghiz; Kyrgyz'; +$string['kmb'] = 'Kimbundu'; +$string['kok'] = 'Konkani'; +$string['kom'] = 'Komi'; +$string['kon'] = 'Kongo'; +$string['kor'] = 'Korean'; +$string['kos'] = 'Kosraean'; +$string['kpe'] = 'Kpelle'; +$string['krc'] = 'Karachay-Balkar'; +$string['krl'] = 'Karelian'; +$string['kro'] = 'Kru languages'; +$string['kru'] = 'Kurukh'; +$string['kua'] = 'Kuanyama; Kwanyama'; +$string['kum'] = 'Kumyk'; +$string['kur'] = 'Kurdish'; +$string['kut'] = 'Kutenai'; +$string['lad'] = 'Ladino'; +$string['lah'] = 'Lahnda'; +$string['lam'] = 'Lamba'; +$string['lao'] = 'Lao'; +$string['lat'] = 'Latin'; +$string['lav'] = 'Latvian'; +$string['lez'] = 'Lezghian'; +$string['lim'] = 'Limburgan; Limburger; Limburgish'; +$string['lin'] = 'Lingala'; +$string['lit'] = 'Lithuanian'; +$string['lol'] = 'Mongo'; +$string['loz'] = 'Lozi'; +$string['ltz'] = 'Luxembourgish; Letzeburgesch'; +$string['lua'] = 'Luba-Lulua'; +$string['lub'] = 'Luba-Katanga'; +$string['lug'] = 'Ganda'; +$string['lui'] = 'Luiseno'; +$string['lun'] = 'Lunda'; +$string['luo'] = 'Luo (Kenya and Tanzania)'; +$string['lus'] = 'Lushai'; +$string['mkd'] = 'Macedonian'; +$string['mad'] = 'Madurese'; +$string['mag'] = 'Magahi'; +$string['mah'] = 'Marshallese'; +$string['mai'] = 'Maithili'; +$string['mak'] = 'Makasar'; +$string['mal'] = 'Malayalam'; +$string['man'] = 'Mandingo'; +$string['mri'] = 'Maori'; +$string['map'] = 'Austronesian languages'; +$string['mar'] = 'Marathi'; +$string['mas'] = 'Masai'; +$string['msa'] = 'Malay'; +$string['mdf'] = 'Moksha'; +$string['mdr'] = 'Mandar'; +$string['men'] = 'Mende'; +$string['mga'] = 'Irish, Middle (900-1200)'; +$string['mic'] = 'Mi\'kmaq; Micmac'; +$string['min'] = 'Minangkabau'; +$string['mis'] = 'Uncoded languages'; +$string['mkh'] = 'Mon-Khmer languages'; +$string['mlg'] = 'Malagasy'; +$string['mlt'] = 'Maltese'; +$string['mnc'] = 'Manchu'; +$string['mni'] = 'Manipuri'; +$string['mno'] = 'Manobo languages'; +$string['moh'] = 'Mohawk'; +$string['mon'] = 'Mongolian'; +$string['mos'] = 'Mossi'; +$string['mul'] = 'Multiple languages'; +$string['mun'] = 'Munda languages'; +$string['mus'] = 'Creek'; +$string['mwl'] = 'Mirandese'; +$string['mwr'] = 'Marwari'; +$string['myn'] = 'Mayan languages'; +$string['myv'] = 'Erzya'; +$string['nah'] = 'Nahuatl languages'; +$string['nai'] = 'North American Indian languages'; +$string['nap'] = 'Neapolitan'; +$string['nau'] = 'Nauru'; +$string['nav'] = 'Navajo; Navaho'; +$string['nbl'] = 'Ndebele, South; South Ndebele'; +$string['nde'] = 'Ndebele, North; North Ndebele'; +$string['ndo'] = 'Ndonga'; +$string['nds'] = 'Low German; Low Saxon; German, Low; Saxon, Low'; +$string['nep'] = 'Nepali'; +$string['new'] = 'Nepal Bhasa; Newari'; +$string['nia'] = 'Nias'; +$string['nic'] = 'Niger-Kordofanian languages'; +$string['niu'] = 'Niuean'; +$string['nno'] = 'Norwegian Nynorsk; Nynorsk, Norwegian'; +$string['nob'] = 'Bokmål, Norwegian; Norwegian Bokmål'; +$string['nog'] = 'Nogai'; +$string['non'] = 'Norse, Old'; +$string['nor'] = 'Norwegian'; +$string['nqo'] = 'N\'Ko'; +$string['nso'] = 'Pedi; Sepedi; Northern Sotho'; +$string['nub'] = 'Nubian languages'; +$string['nwc'] = 'Classical Newari; Old Newari; Classical Nepal Bhasa'; +$string['nya'] = 'Chichewa; Chewa; Nyanja'; +$string['nym'] = 'Nyamwezi'; +$string['nyn'] = 'Nyankole'; +$string['nyo'] = 'Nyoro'; +$string['nzi'] = 'Nzima'; +$string['oci'] = 'Occitan (post 1500); Provençal'; +$string['oji'] = 'Ojibwa'; +$string['ori'] = 'Oriya'; +$string['orm'] = 'Oromo'; +$string['osa'] = 'Osage'; +$string['oss'] = 'Ossetian; Ossetic'; +$string['ota'] = 'Turkish, Ottoman (1500-1928)'; +$string['oto'] = 'Otomian languages'; +$string['paa'] = 'Papuan languages'; +$string['pag'] = 'Pangasinan'; +$string['pal'] = 'Pahlavi'; +$string['pam'] = 'Pampanga; Kapampangan'; +$string['pan'] = 'Panjabi; Punjabi'; +$string['pap'] = 'Papiamento'; +$string['pau'] = 'Palauan'; +$string['peo'] = 'Persian, Old (ca.600-400 B.C.)'; +$string['fas'] = 'Persian'; +$string['phi'] = 'Philippine languages'; +$string['phn'] = 'Phoenician'; +$string['pli'] = 'Pali'; +$string['pol'] = 'Polish'; +$string['pon'] = 'Pohnpeian'; +$string['por'] = 'Portuguese'; +$string['pra'] = 'Prakrit languages'; +$string['pro'] = 'Provençal, Old (to 1500)'; +$string['pus'] = 'Pushto; Pashto'; +$string['que'] = 'Quechua'; +$string['raj'] = 'Rajasthani'; +$string['rap'] = 'Rapanui'; +$string['rar'] = 'Rarotongan; Cook Islands Maori'; +$string['roa'] = 'Romance languages'; +$string['roh'] = 'Romansh'; +$string['rom'] = 'Romany'; +$string['ron'] = 'Romanian; Moldavian; Moldovan'; +$string['run'] = 'Rundi'; +$string['rup'] = 'Aromanian; Arumanian; Macedo-Romanian'; +$string['rus'] = 'Russian'; +$string['sad'] = 'Sandawe'; +$string['sag'] = 'Sango'; +$string['sah'] = 'Yakut'; +$string['sai'] = 'South American Indian (Other)'; +$string['sal'] = 'Salishan languages'; +$string['sam'] = 'Samaritan Aramaic'; +$string['san'] = 'Sanskrit'; +$string['sas'] = 'Sasak'; +$string['sat'] = 'Santali'; +$string['scn'] = 'Sicilian'; +$string['sco'] = 'Scots'; +$string['sel'] = 'Selkup'; +$string['sem'] = 'Semitic languages'; +$string['sga'] = 'Irish, Old (to 900)'; +$string['sgn'] = 'Sign Languages'; +$string['shn'] = 'Shan'; +$string['sid'] = 'Sidamo'; +$string['sin'] = 'Sinhala; Sinhalese'; +$string['sio'] = 'Siouan languages'; +$string['sit'] = 'Sino-Tibetan languages'; +$string['sla'] = 'Slavic languages'; +$string['slk'] = 'Slovak'; +$string['slv'] = 'Slovenian'; +$string['sma'] = 'Southern Sami'; +$string['sme'] = 'Northern Sami'; +$string['smi'] = 'Sami languages'; +$string['smj'] = 'Lule Sami'; +$string['smn'] = 'Inari Sami'; +$string['smo'] = 'Samoan'; +$string['sms'] = 'Skolt Sami'; +$string['sna'] = 'Shona'; +$string['snd'] = 'Sindhi'; +$string['snk'] = 'Soninke'; +$string['sog'] = 'Sogdian'; +$string['som'] = 'Somali'; +$string['son'] = 'Songhai languages'; +$string['sot'] = 'Sotho, Southern'; +$string['spa'] = 'Spanish; Castilian'; +$string['srd'] = 'Sardinian'; +$string['srn'] = 'Sranan Tongo'; +$string['srp'] = 'Serbian'; +$string['srr'] = 'Serer'; +$string['ssa'] = 'Nilo-Saharan languages'; +$string['ssw'] = 'Swati'; +$string['suk'] = 'Sukuma'; +$string['sun'] = 'Sundanese'; +$string['sus'] = 'Susu'; +$string['sux'] = 'Sumerian'; +$string['swa'] = 'Swahili'; +$string['swe'] = 'Swedish'; +$string['syc'] = 'Classical Syriac'; +$string['syr'] = 'Syriac'; +$string['tah'] = 'Tahitian'; +$string['tai'] = 'Tai languages'; +$string['tam'] = 'Tamil'; +$string['tat'] = 'Tatar'; +$string['tel'] = 'Telugu'; +$string['tem'] = 'Timne'; +$string['ter'] = 'Tereno'; +$string['tet'] = 'Tetum'; +$string['tgk'] = 'Tajik'; +$string['tgl'] = 'Tagalog'; +$string['tha'] = 'Thai'; +$string['bod'] = 'Tibetan'; +$string['tig'] = 'Tigre'; +$string['tir'] = 'Tigrinya'; +$string['tiv'] = 'Tiv'; +$string['tkl'] = 'Tokelau'; +$string['tlh'] = 'Klingon'; +$string['tli'] = 'Tlingit'; +$string['tmh'] = 'Tamashek'; +$string['tog'] = 'Tonga (Nyasa)'; +$string['ton'] = 'Tonga (Tonga Islands)'; +$string['tpi'] = 'Tok Pisin'; +$string['tsi'] = 'Tsimshian'; +$string['tsn'] = 'Tswana'; +$string['tso'] = 'Tsonga'; +$string['tuk'] = 'Turkmen'; +$string['tum'] = 'Tumbuka'; +$string['tup'] = 'Tupi languages'; +$string['tur'] = 'Turkish'; +$string['tut'] = 'Altaic languages'; +$string['tvl'] = 'Tuvalu'; +$string['twi'] = 'Twi'; +$string['tyv'] = 'Tuvinian'; +$string['udm'] = 'Udmurt'; +$string['uga'] = 'Ugaritic'; +$string['uig'] = 'Uighur; Uyghur'; +$string['ukr'] = 'Ukrainian'; +$string['umb'] = 'Umbundu'; +$string['und'] = 'Undetermined'; +$string['urd'] = 'Urdu'; +$string['uzb'] = 'Uzbek'; +$string['vai'] = 'Vai'; +$string['ven'] = 'Venda'; +$string['vie'] = 'Vietnamese'; +$string['vol'] = 'Volapük'; +$string['vot'] = 'Votic'; +$string['wak'] = 'Wakashan languages'; +$string['wal'] = 'Walamo'; +$string['war'] = 'Waray'; +$string['was'] = 'Washo'; +$string['cym'] = 'Welsh'; +$string['wen'] = 'Sorbian languages'; +$string['wln'] = 'Walloon'; +$string['wol'] = 'Wolof'; +$string['xal'] = 'Kalmyk; Oirat'; +$string['xho'] = 'Xhosa'; +$string['yao'] = 'Yao'; +$string['yap'] = 'Yapese'; +$string['yid'] = 'Yiddish'; +$string['yor'] = 'Yoruba'; +$string['ypk'] = 'Yupik languages'; +$string['zap'] = 'Zapotec'; +$string['zbl'] = 'Blissymbols'; +$string['zen'] = 'Zenaga'; +$string['zha'] = 'Zhuang; Chuang'; +$string['znd'] = 'Zande languages'; +$string['zul'] = 'Zulu'; +$string['zun'] = 'Zuni'; +$string['zxx'] = 'No linguistic content'; +$string['zza'] = 'Zaza; Dimili; Dimli; Kirdki; Kirmanjki; Zazaki'; diff --git a/lib/moodlelib.php b/lib/moodlelib.php index c77475422f6..dc05d355973 100644 --- a/lib/moodlelib.php +++ b/lib/moodlelib.php @@ -5714,7 +5714,7 @@ interface string_manager { * @return boot true if exists */ public function string_exists($identifier, $component); - + /** * Returns a localised list of all country names * @return array two-letter country code => translated name. @@ -5722,10 +5722,14 @@ interface string_manager { public function get_list_of_countries(); /** - * Returns a localised list of languages defined by ISO 639-3 - * @return array three-letter language code => translated name. + * Returns a localised list of languages, sorted by code keys. + * + * @param string $lang moodle translation language, NULL means use current + * @param string $standard language list standard + * iso6392: three-letter language code (ISO 639-2/T) => translated name. + * @return array language code => translated name */ - public function get_list_of_languages(); + public function get_list_of_languages($lang = NULL, $standard = 'iso6392'); /** * Returns localised list of installed translations @@ -6002,11 +6006,24 @@ class core_string_manager implements string_manager { } /** - * Returns a localised list of languages defined by ISO 639-3 - * @return array three-letter language code => translated name. + * Returns a localised list of languages, sorted by code keys. + * + * @param string $lang moodle translation language, NULL means use current + * @param string $standard language list standard + * - iso6392: three-letter language code (ISO 639-2/T) => translated name + * @return array language code => translated name */ - public function get_list_of_languages() { - //TODO: import ISO 639-3 lang codes to en lang pack and return it here + public function get_list_of_languages($lang = NULL, $standard = 'iso6392') { + if ($lang === NULL) { + $lang = current_language(); + } + if ($standard === 'iso6392') { + $langs = $this->load_component_strings('core_iso6392', $lang); + $lang = ksort($langs); + return $langs; + } else { + debugging('Unsupported $standard parameter in get_list_of_languages() method: '.$standard); + } return array(); } @@ -6206,10 +6223,14 @@ class install_string_manager implements string_manager { } /** - * Returns a localised list of languages defined by ISO 639-3 - * @return array three-letter language code => translated name. + * Returns a localised list of languages, sorted by code keys. + * + * @param string $lang moodle translation language, NULL means use current + * @param string $standard language list standard + * iso6392: three-letter language code (ISO 639-2/T) => translated name. + * @return array language code => translated name */ - public function get_list_of_languages() { + public function get_list_of_languages($lang = NULL, $standard = 'iso6392') { //not used in installer return array(); } @@ -6768,6 +6789,7 @@ function get_core_subsystems() { 'help' => NULL, 'imscc' => NULL, 'install' => NULL, + 'iso6392' => NULL, 'langconfig' => NULL, 'license' => NULL, 'message' => 'message', -- 2.43.0