Comments: on this page. Click to read or post your own.

Class i18n

Description

Base-class for storage and retrieval of translated entities.

Most common use is translation of the CMS-interface through the _t()-method (in controller/model) and the <% _t() %> template variable.

File-based i18n-translations always have a "locale" (e.g. 'en_US'). Common language names (e.g. 'en') are mainly used in {Translatable} for database-entities.

Features a "textcollector-mode" that parses all files with a certain extension (currently *.php and *.ss) for new translatable strings. Textcollector will write updated string-tables to their respective folders inside the module, and automatically namespace entities to the classes/templates they are found in (e.g. $lang['en_US']['AssetAdmin']['UPLOADFILES']).

Caution: Does not apply any character-set conversion, it is assumed that all content is stored and represented in UTF-8 (Unicode). Please make sure your files are created with the correct character-set, and your HTML-templates render UTF-8.

Caution: The language file has to be stored in the same module path as the "filename namespaces" on the entities. So an entity stored in $lang['en_US']['AssetAdmin']['DETAILSTAB'] has to in the language file cms/lang/en_US.php, as the referenced file (AssetAdmin.php) is stored in the "cms" module.

Please see the {Translatable} DataObjectDecorator for managing translations of database-content.

Located in /sapphire/core/i18n.php (line 33)

Object
   |
   --i18n
Variable Summary
static array $all_locales
static mixed $common_languages
static mixed $current_locale
static string $default_locale
static mixed $tinymce_lang
Method Summary
static String default_lang ()
static void default_locale ()
static void disable ()
static void enable ()
static list get_common_languages ([boolean $native = false])
static array get_existing_content_languages ([string $className = 'SiteTree'], [ $where = ''])
static array get_existing_translations ()
static Language get_language_code (mixed $name)
static Name get_language_name (mixed $code, [boolean $native = false])
static string get_locale ()
static list get_locale_list ()
static Name get_locale_name (mixed $code)
static string get_owner_module (string $name)
static Language get_tinymce_lang ()
static array get_translatable_modules ()
static void include_by_class (string $class)
static void include_by_locale (string $locale)
static void include_locale_file (string $module, string $locale)
static void set_default_lang ($lang $lang)
static void set_locale (string $locale)
static string _t (string $entity, [string $string = ""], [string $priority = 40], [string $context = ""])
void removelang ()
Variables
static array $all_locales = array(
'aa_DJ' => 'Afar (Djibouti)',
'ab_GE' => 'Abkhazian (Georgia)',
'abr_GH' => 'Abron (Ghana)',
'ace_ID' => 'Achinese (Indonesia)',
'ady_RU' => 'Adyghe (Russia)',
'af_ZA' => 'Afrikaans (South Africa)',
'ak_GH' => 'Akan (Ghana)',
'am_ET' => 'Amharic (Ethiopia)',
'ar_AE' => 'Arabic (United Arab Emirates)',
'ar_BH' => 'Arabic (Bahrain)',
'ar_DZ' => 'Arabic (Algeria)',
'ar_EG' => 'Arabic (Egypt)',
'ar_EH' => 'Arabic (Western Sahara)',
'ar_IQ' => 'Arabic (Iraq)',
'ar_JO' => 'Arabic (Jordan)',
'ar_KW' => 'Arabic (Kuwait)',
'ar_LB' => 'Arabic (Lebanon)',
'ar_LY' => 'Arabic (Libya)',
'ar_MA' => 'Arabic (Morocco)',
'ar_MR' => 'Arabic (Mauritania)',
'ar_OM' => 'Arabic (Oman)',
'ar_PS' => 'Arabic (Palestinian Territory)',
'ar_QA' => 'Arabic (Qatar)',
'ar_SA' => 'Arabic (Saudi Arabia)',
'ar_SD' => 'Arabic (Sudan)',
'ar_SY' => 'Arabic (Syria)',
'ar_TD' => 'Arabic (Chad)',
'ar_TN' => 'Arabic (Tunisia)',
'ar_YE' => 'Arabic (Yemen)',
'as_IN' => 'Assamese (India)',
'auv_FR' => 'Auvergnat (France)',
'av_RU' => 'Avaric (Russia)',
'awa_IN' => 'Awadhi (India)',
'ay_BO' => 'Aymara (Bolivia)',
'ay_PE' => 'Aymara (Peru)',
'az_AZ' => 'Azerbaijani (Azerbaijan)',
'az_IR' => 'Azerbaijani (Iran)',
'ba_RU' => 'Bashkir (Russia)',
'ban_ID' => 'Balinese (Indonesia)',
'be_BY' => 'Belarusian (Belarus)',
'bew_ID' => 'Betawi (Indonesia)',
'bg_BG' => 'Bulgarian (Bulgaria)',
'bgc_IN' => 'Haryanvi (India)',
'bcc_PK' => 'Balochi, Southern (Pakistan)',
'bgn_PK' => 'Balochi, Western (Pakistan)',
'bgp_PK' => 'Balochi, Easter (Pakistan)',
'bhb_IN' => 'Bhili (India)',
'bhi_IN' => 'Bhilali (India)',
'bcl_PH' => 'Bicolano, Central (Philippines)',
'bhk_PH' => 'Bicolano, Albay (Philippines)',
'bho_IN' => 'Bhojpuri (India)',
'bho_MU' => 'Bhojpuri (Mauritius)',
'bho_NP' => 'Bhojpuri (Nepal)',
'bi_VU' => 'Bislama (Vanuatu)',
'bjj_IN' => 'Kanauji (India)',
'bjn_ID' => 'Banjar (Indonesia)',
'bm_ML' => 'Bambara (Mali)',
'bn_BD' => 'Bengali (Bangladesh)',
'bn_IN' => 'Bengali (India)',
'bo_CN' => 'Tibetan (China)',
'bqi_IR' => 'Bakhtiari (Iran)',
'brh_PK' => 'Brahui (Pakistan)',
'bs_BA' => 'Bosnian (Bosnia and Herzegovina)',
'btk_ID' => 'Batak (Indonesia)',
'buc_YT' => 'Bushi (Mayotte)',
'bug_ID' => 'Buginese (Indonesia)',
'ca_AD' => 'Catalan (Andorra)',
'ca_ES' => 'Catalan (Spain)',
'ce_RU' => 'Chechen (Russia)',
'ceb_PH' => 'Cebuano (Philippines)',
'cgg_UG' => 'Chiga (Uganda)',
'ch_GU' => 'Chamorro (Guam)',
'chk_FM' => 'Chuukese (Micronesia)',
'crk_CA' => 'Cree, Plains (Canada)',
'cwd_CA' => 'Cree, Woods (Canada)',
'cs_CZ' => 'Czech (Czech Republic)',
'cy_GB' => 'Welsh (United Kingdom)',
'da_DK' => 'Danish (Denmark)',
'da_GL' => 'Danish (Greenland)',
'dcc_IN' => 'Deccan (India)',
'de_AT' => 'German (Austria)',
'de_BE' => 'German (Belgium)',
'de_CH' => 'German (Switzerland)',
'de_DE' => 'German (Germany)',
'de_LI' => 'German (Liechtenstein)',
'de_LU' => 'German (Luxembourg)',
'dgo_IN' => 'Dogri (India)',
'dhd_IN' => 'Dhundari (India)',
'diq_TR' => 'Dimli (Turkey)',
'dje_NE' => 'Zarma (Niger)',
'dv_MV' => 'Divehi (Maldives)',
'dz_BT' => 'Dzongkha (Bhutan)',
'ee_GH' => 'Ewe (Ghana)',
'el_CY' => 'Greek (Cyprus)',
'el_GR' => 'Greek (Greece)',
'en_AS' => 'English (American Samoa)',
'en_AU' => 'English (Australia)',
'en_BM' => 'English (Bermuda)',
'en_BS' => 'English (Bahamas)',
'en_CA' => 'English (Canada)',
'en_GB' => 'English (United Kingdom)',
'en_HK' => 'English (Hong Kong SAR China)',
'en_IE' => 'English (Ireland)',
'en_IN' => 'English (India)',
'en_JM' => 'English (Jamaica)',
'en_KE' => 'English (Kenya)',
'en_LR' => 'English (Liberia)',
'en_MM' => 'English (Myanmar)',
'en_MW' => 'English (Malawi)',
'en_MY' => 'English (Malaysia)',
'en_NZ' => 'English (New Zealand)',
'en_PH' => 'English (Philippines)',
'en_SG' => 'English (Singapore)',
'en_TT' => 'English (Trinidad and Tobago)',
'en_US' => 'English (United States)',
'en_ZA' => 'English (South Africa)',
'en_DE' => 'English (Germany)',
'en_ES' => 'English (Spain)',
'en_FR' => 'English (France)',
'en_IT' => 'English (Italy)',
'en_NL' => 'English (Netherlands)',
'eo_XX' => 'Esperanto',
'es_419' => 'Spanish (Latin America)',
'es_AR' => 'Spanish (Argentina)',
'es_BO' => 'Spanish (Bolivia)',
'es_CL' => 'Spanish (Chile)',
'es_CO' => 'Spanish (Colombia)',
'es_CR' => 'Spanish (Costa Rica)',
'es_CU' => 'Spanish (Cuba)',
'es_DO' => 'Spanish (Dominican Republic)',
'es_EC' => 'Spanish (Ecuador)',
'es_ES' => 'Spanish (Spain)',
'es_GQ' => 'Spanish (Equatorial Guinea)',
'es_GT' => 'Spanish (Guatemala)',
'es_HN' => 'Spanish (Honduras)',
'es_MX' => 'Spanish (Mexico)',
'es_NI' => 'Spanish (Nicaragua)',
'es_PA' => 'Spanish (Panama)',
'es_PE' => 'Spanish (Peru)',
'es_PH' => 'Spanish (Philippines)',
'es_PR' => 'Spanish (Puerto Rico)',
'es_PY' => 'Spanish (Paraguay)',
'es_SV' => 'Spanish (El Salvador)',
'es_US' => 'Spanish (United States)',
'es_UY' => 'Spanish (Uruguay)',
'es_VE' => 'Spanish (Venezuela)',
'et_EE' => 'Estonian (Estonia)',
'eu_ES' => 'Basque (Spain)',
'fa_AF' => 'Persian (Afghanistan)',
'fa_IR' => 'Persian (Iran)',
'fa_PK' => 'Persian (Pakistan)',
'fan_GQ' => 'Fang (Equatorial Guinea)',
'fi_FI' => 'Finnish (Finland)',
'fi_SE' => 'Finnish (Sweden)',
'fil_PH' => 'Filipino (Philippines)',
'fj_FJ' => 'Fijian (Fiji)',
'fo_FO' => 'Faroese (Faroe Islands)',
'fon_BJ' => 'Fon (Benin)',
'fr_002' => 'French (Africa)',
'fr_BE' => 'French (Belgium)',
'fr_CA' => 'French (Canada)',
'fr_CH' => 'French (Switzerland)',
'fr_DZ' => 'French (Algeria)',
'fr_FR' => 'French (France)',
'fr_GF' => 'French (French Guiana)',
'fr_GP' => 'French (Guadeloupe)',
'fr_HT' => 'French (Haiti)',
'fr_KM' => 'French (Comoros)',
'fr_MA' => 'French (Morocco)',
'fr_MQ' => 'French (Martinique)',
'fr_MU' => 'French (Mauritius)',
'fr_NC' => 'French (New Caledonia)',
'fr_PF' => 'French (French Polynesia)',
'fr_PM' => 'French (Saint Pierre and Miquelon)',
'fr_RE' => 'French (Reunion)',
'fr_SC' => 'French (Seychelles)',
'fr_SN' => 'French (Senegal)',
'fr_US' => 'French (United States)',
'fuv_NG' => 'Fulfulde (Nigeria)',
'ga_IE' => 'Irish (Ireland)',
'ga_GB' => 'Irish (United Kingdom)',
'gaa_GH' => 'Ga (Ghana)',
'gbm_IN' => 'Garhwali (India)',
'gcr_GF' => 'Guianese Creole French (French Guiana)',
'gd_GB' => 'Scottish Gaelic (United Kingdom)',
'gil_KI' => 'Gilbertese (Kiribati)',
'gl_ES' => 'Galician (Spain)',
'glk_IR' => 'Gilaki (Iran)',
'gn_PY' => 'Guarani (Paraguay)',
'gno_IN' => 'Gondi, Northern (India)',
'gsw_CH' => 'Swiss German (Switzerland)',
'gsw_LI' => 'Swiss German (Liechtenstein)',
'gu_IN' => 'Gujarati (India)',
'guz_KE' => 'Gusii (Kenya)',
'ha_NG' => 'Hausa (Nigeria)',
'ha_NE' => 'Hausa (Niger)',
'haw_US' => 'Hawaiian (United States)',
'haz_AF' => 'Hazaragi (Afghanistan)',
'he_IL' => 'Hebrew (Israel)',
'hi_IN' => 'Hindi (India)',
'hil_PH' => 'Hiligaynon (Philippines)',
'hne_IN' => 'Chhattisgarhi (India)',
'hno_PK' => 'Hindko, Northern (Pakistan)',
'hoc_IN' => 'Ho (India)',
'hr_BA' => 'Croatian (Bosnia and Herzegovina)',
'hr_HR' => 'Croatian (Croatia)',
'hr_AT' => 'Croatian (Austria)',
'ht_HT' => 'Haitian (Haiti)',
'hu_HU' => 'Hungarian (Hungary)',
'hu_AT' => 'Hungarian (Austria)',
'hu_RO' => 'Hungarian (Romania)',
'hu_RS' => 'Hungarian (Serbia)',
'hy_AM' => 'Armenian (Armenia)',
'id_ID' => 'Indonesian (Indonesia)',
'ig_NG' => 'Igbo (Nigeria)',
'ilo_PH' => 'Iloko (Philippines)',
'inh_RU' => 'Ingush (Russia)',
'is_IS' => 'Icelandic (Iceland)',
'it_CH' => 'Italian (Switzerland)',
'it_IT' => 'Italian (Italy)',
'it_SM' => 'Italian (San Marino)',
'it_FR' => 'Italian (France)',
'it_HR' => 'Italian (Croatia)',
'it_US' => 'Italian (United States)',
'iu_CA' => 'Inuktitut (Canada)',
'ja_JP' => 'Japanese (Japan)',
'jv_ID' => 'Javanese (Indonesia)',
'ka_GE' => 'Georgian (Georgia)',
'kam_KE' => 'Kamba (Kenya)',
'kbd_RU' => 'Kabardian (Russia)',
'kfy_IN' => 'Kumauni (India)',
'kha_IN' => 'Khasi (India)',
'khn_IN' => 'Khandesi (India)',
'ki_KE' => 'Kikuyu (Kenya)',
'kj_NA' => 'Kuanyama (Namibia)',
'kk_KZ' => 'Kazakh (Kazakhstan)',
'kk_CN' => 'Kazakh (China)',
'kl_GL' => 'Kalaallisut (Greenland)',
'kl_DK' => 'Kalaallisut (Denmark)',
'kln_KE' => 'Kalenjin (Kenya)',
'km_KH' => 'Khmer (Cambodia)',
'kn_IN' => 'Kannada (India)',
'ko_KR' => 'Korean (Korea)',
'koi_RU' => 'Komi-Permyak (Russia)',
'kok_IN' => 'Konkani (India)',
'kos_FM' => 'Kosraean (Micronesia)',
'kpv_RU' => 'Komi-Zyrian (Russia)',
'krc_RU' => 'Karachay-Balkar (Russia)',
'kru_IN' => 'Kurukh (India)',
'ks_IN' => 'Kashmiri (India)',
'ku_IQ' => 'Kurdish (Iraq)',
'ku_IR' => 'Kurdish (Iran)',
'ku_SY' => 'Kurdish (Syria)',
'ku_TR' => 'Kurdish (Turkey)',
'kum_RU' => 'Kumyk (Russia)',
'kxm_TH' => 'Khmer, Northern (Thailand)',
'ky_KG' => 'Kirghiz (Kyrgyzstan)',
'la_VA' => 'Latin (Vatican)',
'lah_PK' => 'Lahnda (Pakistan)',
'lb_LU' => 'Luxembourgish (Luxembourg)',
'lbe_RU' => 'Lak (Russia)',
'lc_XX' => 'LOLCAT',
'lez_RU' => 'Lezghian (Russia)',
'lg_UG' => 'Ganda (Uganda)',
'lij_IT' => 'Ligurian (Italy)',
'lij_MC' => 'Ligurian (Monaco)',
'ljp_ID' => 'Lampung (Indonesia)',
'lmn_IN' => 'Lambadi (India)',
'ln_CD' => 'Lingala (Congo - Kinshasa)',
'ln_CG' => 'Lingala (Congo - Brazzaville)',
'lo_LA' => 'Lao (Laos)',
'lrc_IR' => 'Luri, Northern (Iran)',
'lt_LT' => 'Lithuanian (Lithuania)',
'luo_KE' => 'Luo (Kenya)',
'luy_KE' => 'Luyia (Kenya)',
'lv_LV' => 'Latvian (Latvia)',
'mad_ID' => 'Madurese (Indonesia)',
'mai_IN' => 'Maithili (India)',
'mai_NP' => 'Maithili (Nepal)',
'mak_ID' => 'Makasar (Indonesia)',
'mdf_RU' => 'Moksha (Russia)',
'mdh_PH' => 'Maguindanao (Philippines)',
'mer_KE' => 'Meru (Kenya)',
'mfa_TH' => 'Malay, Pattani (Thailand)',
'mfe_MU' => 'Morisyen (Mauritius)',
'mg_MG' => 'Malagasy (Madagascar)',
'mh_MH' => 'Marshallese (Marshall Islands)',
'mi_NZ' => 'Maori (New Zealand)',
'min_ID' => 'Minangkabau (Indonesia)',
'mk_MK' => 'Macedonian (Macedonia)',
'ml_IN' => 'Malayalam (India)',
'mn_MN' => 'Mongolian (Mongolia)',
'mn_CN' => 'Mongolian (China)',
'mni_IN' => 'Manipuri (India)',
'mr_IN' => 'Marathi (India)',
'ms_BN' => 'Malay (Brunei)',
'ms_MY' => 'Malay (Malaysia)',
'ms_SG' => 'Malay (Singapore)',
'ms_CC' => 'Malay (Cocos Islands)',
'ms_ID' => 'Malay (Indonesia)',
'mt_MT' => 'Maltese (Malta)',
'mtr_IN' => 'Mewari (India)',
'mup_IN' => 'Malvi (India)',
'muw_IN' => 'Mundari (India)',
'my_MM' => 'Burmese (Myanmar)',
'myv_RU' => 'Erzya (Russia)',
'na_NR' => 'Nauru (Nauru)',
'nb_NO' => 'Norwegian Bokmal (Norway)',
'nb_SJ' => 'Norwegian Bokmal (Svalbard and Jan Mayen)',
'nd_ZW' => 'North Ndebele (Zimbabwe)',
'ndc_MZ' => 'Ndau (Mozambique)',
'ne_NP' => 'Nepali (Nepal)',
'ne_IN' => 'Nepali (India)',
'ng_NA' => 'Ndonga (Namibia)',
'ngl_MZ' => 'Lomwe (Mozambique)',
'niu_NU' => 'Niuean (Niue)',
'nl_AN' => 'Dutch (Netherlands Antilles)',
'nl_AW' => 'Dutch (Aruba)',
'nl_BE' => 'Dutch (Belgium)',
'nl_NL' => 'Dutch (Netherlands)',
'nl_SR' => 'Dutch (Suriname)',
'nn_NO' => 'Norwegian Nynorsk (Norway)',
'nod_TH' => 'Thai, Northern (Thailand)',
'noe_IN' => 'Nimadi (India)',
'nso_ZA' => 'Northern Sotho (South Africa)',
'ny_MW' => 'Nyanja (Malawi)',
'ny_ZM' => 'Nyanja (Zambia)',
'nyn_UG' => 'Nyankole (Uganda)',
'om_ET' => 'Oromo (Ethiopia)',
'or_IN' => 'Oriya (India)',
'pa_IN' => 'Punjabi (India)',
'pag_PH' => 'Pangasinan (Philippines)',
'pap_AN' => 'Papiamento (Netherlands Antilles)',
'pap_AW' => 'Papiamento (Aruba)',
'pau_PW' => 'Palauan (Palau)',
'pl_PL' => 'Polish (Poland)',
'pl_UA' => 'Polish (Ukraine)',
'pon_FM' => 'Pohnpeian (Micronesia)',
'ps_AF' => 'Pashto (Afghanistan)',
'ps_PK' => 'Pashto (Pakistan)',
'pt_AO' => 'Portuguese (Angola)',
'pt_BR' => 'Portuguese (Brazil)',
'pt_CV' => 'Portuguese (Cape Verde)',
'pt_GW' => 'Portuguese (Guinea-Bissau)',
'pt_MZ' => 'Portuguese (Mozambique)',
'pt_PT' => 'Portuguese (Portugal)',
'pt_ST' => 'Portuguese (Sao Tome and Principe)',
'pt_TL' => 'Portuguese (East Timor)',
'qu_BO' => 'Quechua (Bolivia)',
'qu_PE' => 'Quechua (Peru)',
'rcf_RE' => 'R�union Creole French (Reunion)',
'rej_ID' => 'Rejang (Indonesia)',
'rif_MA' => 'Tarifit (Morocco)',
'rjb_IN' => 'Rajbanshi (India)',
'rm_CH' => 'Rhaeto-Romance (Switzerland)',
'rmt_IR' => 'Domari (Iran)',
'rn_BI' => 'Rundi (Burundi)',
'ro_MD' => 'Romanian (Moldova)',
'ro_RO' => 'Romanian (Romania)',
'ro_RS' => 'Romanian (Serbia)',
'ru_BY' => 'Russian (Belarus)',
'ru_KG' => 'Russian (Kyrgyzstan)',
'ru_KZ' => 'Russian (Kazakhstan)',
'ru_RU' => 'Russian (Russia)',
'ru_SJ' => 'Russian (Svalbard and Jan Mayen)',
'ru_UA' => 'Russian (Ukraine)',
'rw_RW' => 'Kinyarwanda (Rwanda)',
'sa_IN' => 'Sanskrit (India)',
'sah_RU' => 'Yakut (Russia)',
'sas_ID' => 'Sasak (Indonesia)',
'sat_IN' => 'Santali (India)',
'sck_IN' => 'Sadri (India)',
'sco_GB' => 'Scots (United Kingdom)',
'sd_IN' => 'Sindhi (India)',
'sd_PK' => 'Sindhi (Pakistan)',
'se_NO' => 'Northern Sami (Norway)',
'sg_CF' => 'Sango (Central African Republic)',
'si_LK' => 'Sinhalese (Sri Lanka)',
'sid_ET' => 'Sidamo (Ethiopia)',
'sk_SK' => 'Slovak (Slovakia)',
'sk_RS' => 'Slovak (Serbia)',
'sl_SI' => 'Slovenian (Slovenia)',
'sl_AT' => 'Slovenian (Austria)',
'sm_AS' => 'Samoan (American Samoa)',
'sm_WS' => 'Samoan (Samoa)',
'sn_ZW' => 'Shona (Zimbabwe)',
'so_SO' => 'Somali (Somalia)',
'so_DJ' => 'Somali (Djibouti)',
'so_ET' => 'Somali (Ethiopia)',
'sou_TH' => 'Thai, Southern (Thailand)',
'sq_AL' => 'Albanian (Albania)',
'sr_BA' => 'Serbian (Bosnia and Herzegovina)',
'sr_ME' => 'Serbian (Montenegro)',
'sr_RS' => 'Serbian (Serbia)',
'ss_SZ' => 'Swati (Swaziland)',
'ss_ZA' => 'Swati (South Africa)',
'st_LS' => 'Southern Sotho (Lesotho)',
'st_ZA' => 'Southern Sotho (South Africa)',
'su_ID' => 'Sundanese (Indonesia)',
'sv_AX' => 'Swedish (Aland Islands)',
'sv_FI' => 'Swedish (Finland)',
'sv_SE' => 'Swedish (Sweden)',
'sw_KE' => 'Swahili (Kenya)',
'sw_TZ' => 'Swahili (Tanzania)',
'sw_UG' => 'Swahili (Uganda)',
'sw_SO' => 'Swahili (Somalia)',
'swb_KM' => 'Comorian (Comoros)',
'swb_YT' => 'Comorian (Mayotte)',
'swv_IN' => 'Shekhawati (India)',
'ta_IN' => 'Tamil (India)',
'ta_LK' => 'Tamil (Sri Lanka)',
'ta_SG' => 'Tamil (Singapore)',
'ta_MY' => 'Tamil (Malaysia)',
'tcy_IN' => 'Tulu (India)',
'te_IN' => 'Telugu (India)',
'tet_TL' => 'Tetum (East Timor)',
'tg_TJ' => 'Tajik (Tajikistan)',
'th_TH' => 'Thai (Thailand)',
'ti_ER' => 'Tigrinya (Eritrea)',
'ti_ET' => 'Tigrinya (Ethiopia)',
'tk_TM' => 'Turkmen (Turkmenistan)',
'tk_IR' => 'Turkmen (Iran)',
'tkl_TK' => 'Tokelau (Tokelau)',
'tl_PH' => 'Tagalog (Philippines)',
'tl_US' => 'Tagalog (United States)',
'tn_BW' => 'Tswana (Botswana)',
'tn_ZA' => 'Tswana (South Africa)',
'to_TO' => 'Tonga (Tonga)',
'tr_CY' => 'Turkish (Cyprus)',
'tr_TR' => 'Turkish (Turkey)',
'tr_DE' => 'Turkish (Germany)',
'tr_MK' => 'Turkish (Macedonia)',
'ts_ZA' => 'Tsonga (South Africa)',
'ts_MZ' => 'Tsonga (Mozambique)',
'tsg_PH' => 'Tausug (Philippines)',
'tt_RU' => 'Tatar (Russia)',
'tts_TH' => 'Thai, Northeastern (Thailand)',
'tvl_TV' => 'Tuvalu (Tuvalu)',
'tw_GH' => 'Twi (Ghana)',
'ty_PF' => 'Tahitian (French Polynesia)',
'tyv_RU' => 'Tuvinian (Russia)',
'tzm_MA' => 'Tamazight, Central Atlas (Morocco)',
'udm_RU' => 'Udmurt (Russia)',
'ug_CN' => 'Uighur (China)',
'uk_UA' => 'Ukrainian (Ukraine)',
'uli_FM' => 'Ulithian (Micronesia)',
'ur_IN' => 'Urdu (India)',
'ur_PK' => 'Urdu (Pakistan)',
'uz_UZ' => 'Uzbek (Uzbekistan)',
'uz_AF' => 'Uzbek (Afghanistan)',
've_ZA' => 'Venda (South Africa)',
'vi_VN' => 'Vietnamese (Vietnam)',
'vi_US' => 'Vietnamese (United States)',
'vmw_MZ' => 'Waddar (Mozambique)',
'wal_ET' => 'Walamo (Ethiopia)',
'war_PH' => 'Waray (Philippines)',
'wbq_IN' => 'Waddar (India)',
'wbr_IN' => 'Wagdi (India)',
'wo_MR' => 'Wolof (Mauritania)',
'wo_SN' => 'Wolof (Senegal)',
'wtm_IN' => 'Mewati (India)',
'xh_ZA' => 'Xhosa (South Africa)',
'xnr_IN' => 'Kangri (India)',
'xog_UG' => 'Soga (Uganda)',
'yap_FM' => 'Yapese (Micronesia)',
'yo_NG' => 'Yoruba (Nigeria)',
'za_CN' => 'Zhuang (China)',
'zh_CN' => 'Chinese (China)',
'zh_HK' => 'Chinese (Hong Kong SAR China)',
'zh_MO' => 'Chinese (Macao SAR China)',
'zh_SG' => 'Chinese (Singapore)',
'zh_TW' => 'Chinese (Taiwan)',
'zh_US' => 'Chinese (United States)',
'zu_ZA' => 'Zulu (South Africa)',
)
(line 52)

An exhaustive list of possible locales (code => language and country)

  • access: public
static mixed $common_languages = array(
'af' => array('Afrikaans', 'Afrikaans'),'sq'=>array('Albanian','shqip'),'ar'=>array('Arabic','&#1575;&#1604;&#1593;&#1585;&#1576;&#1610;&#1577;'),'eu'=>array('Basque','euskera'),'be'=>array('Belarusian','&#1041;&#1077;&#1083;&#1072;&#1088;&#1091;&#1089;&#1082;&#1072;&#1103; &#1084;&#1086;&#1074;&#1072;'),'bn'=>array('Bengali','&#2476;&#2494;&#2434;&#2482;&#2494;'),'bg'=>array('Bulgarian','&#1073;&#1098;&#1083;&#1075;&#1072;&#1088;&#1089;&#1082;&#1080;'),'ca'=>array('Catalan','catal&agrave;'),'zh-yue'=>array('Chinese (Cantonese)','&#24291;&#26481;&#35441; [&#24191;&#19996;&#35805;]'),'zh-cmn'=>array('Chinese (Mandarin)','&#26222;&#36890;&#35441; [&#26222;&#36890;&#35805;]'),'zh-min-nan'=>array('Chinese (Min Nan)','&#21488;&#35486;'),'hr'=>array('Croatian','Hrvatski'),'cs'=>array('Czech','&#x010D;e&#353;tina'),'da'=>array('Danish','dansk'),'nl'=>array('Dutch','Nederlands'),'en'=>array('English','English'),'eo'=>array('Esperanto','Esperanto'),'et'=>array('Estonian','eesti keel'),'fo'=>array('Faroese','F&oslash;royska'),'fi'=>array('Finnish','suomi'),'fr'=>array('French','fran&ccedil;ais'),'gd'=>array('Gaelic','Gaeilge'),'gl'=>array('Galician','Galego'),'de'=>array('German','Deutsch'),'el'=>array('Greek','&#949;&#955;&#955;&#951;&#957;&#953;&#954;&#940;'),'gu'=>array('Gujarati','&#2711;&#2753;&#2716;&#2736;&#2750;&#2724;&#2752;'),'ha'=>array('Hausa','&#1581;&#1614;&#1608;&#1618;&#1587;&#1614;'),'he'=>array('Hebrew','&#1506;&#1489;&#1512;&#1497;&#1514;'),'hi'=>array('Hindi','&#2361;&#2367;&#2344;&#2381;&#2342;&#2368;'),'hu'=>array('Hungarian','magyar'),'is'=>array('Icelandic','&Iacute;slenska'),'io'=>array('Ido','Ido'),'id'=>array('Indonesian','Bahasa Indonesia'),'ga'=>array('Irish','Irish'),'it'=>array('Italian','italiano'),'ja'=>array('Japanese','&#26085;&#26412;&#35486;'),'jv'=>array('Javanese','basa Jawa'),'ko'=>array('Korean','&#54620;&#44397;&#50612; [&#38867;&#22283;&#35486;]'),'ku'=>array('Kurdish','Kurd&iacute;'),'lv'=>array('Latvian','latvie&#353;u'),'lt'=>array('Lithuanian','lietuvi&#353;kai'),'lmo'=>array('Lombard','Lombardo'),'mk'=>array('Macedonian','&#1084;&#1072;&#1082;&#1077;&#1076;&#1086;&#1085;&#1089;&#1082;&#1080;'),'mi'=>array('Maori','Maori'),'ms'=>array('Malay','Bahasa melayu'),'mt'=>array('Maltese','Malti'),'mr'=>array('Marathi','&#2350;&#2352;&#2366;&#2336;&#2368;'),'ne'=>array('Nepali','&#2344;&#2375;&#2346;&#2366;&#2354;&#2368;'),'no'=>array('Norwegian','Norsk'),'om'=>array('Oromo','Afaan Oromo'),'fa'=>array('Persian','&#1601;&#1575;&#1585;&#1587;&#1609;'),'pl'=>array('Polish','polski'),'pt-PT'=>array('Portuguese (Portugal)','portugu&ecirc;s (Portugal)'),'pt-BR'=>array('Portuguese (Brazil)','portugu&ecirc;s (Brazil)'),'pa'=>array('Punjabi','&#2602;&#2672;&#2588;&#2622;&#2604;&#2624;'),'qu'=>array('Quechua','Quechua'),'rm'=>array('Romansh','rumantsch'),'ro'=>array('Romanian','rom&acirc;n'),'ru'=>array('Russian','&#1056;&#1091;&#1089;&#1089;&#1082;&#1080;&#1081;'),'sco'=>array('Scots','Scoats leid, Lallans'),'sr'=>array('Serbian','&#1089;&#1088;&#1087;&#1089;&#1082;&#1080;'),'sk'=>array('Slovak','sloven&#269;ina'),'sl'=>array('Slovenian','sloven&#353;&#269;ina'),'es'=>array('Spanish','espa&ntilde;ol'),'sv'=>array('Swedish','Svenska'),'tl'=>array('Tagalog','Tagalog'),'ta'=>array('Tamil','&#2980;&#2990;&#3007;&#2996;&#3021;'),'te'=>array('Telugu','&#3108;&#3142;&#3122;&#3137;&#3095;&#3137;'),'to'=>array('Tonga','chiTonga'),'ts'=>array('Tsonga','xiTshonga'),'tn'=>array('Tswana','seTswana'),'tr'=>array('Turkish','T&uuml;rk&ccedil;e'),'tk'=>array('Turkmen','&#1090;&#1199;&#1088;&#1082;m&#1077;&#1085;&#1095;&#1077;'),'tw'=>array('Twi','twi'),'uk'=>array('Ukrainian','&#1059;&#1082;&#1088;&#1072;&#1111;&#1085;&#1089;&#1100;&#1082;&#1072;'),'ur'=>array('Urdu','&#1575;&#1585;&#1583;&#1608;'),'uz'=>array('Uzbek','&#1118;&#1079;&#1073;&#1077;&#1082;'),'ve'=>array('Venda','tshiVen&#x1E13;a'),'vi'=>array('Vietnamese','ti&#7871;ng vi&#7879;t'),'wa'=>array('Walloon','walon'),'wo'=>array('Wolof','Wollof'),'xh'=>array('Xhosa','isiXhosa'),'yi'=>array('Yiddish','&#1522;&#1460;&#1491;&#1497;&#1513;'),'zu'=>array('Zulu','isiZulu'))
(line 533)

A list of commonly used languages, in the form

langcode => array( EnglishName, NativeName)

  • access: public
static mixed $current_locale = '' (line 38)

This static variable is used to store the current defined locale.

  • access: protected
static string $default_locale = 'en_US' (line 45)

This is the locale in which generated language files are (we assume US English)

  • access: protected
static mixed $tinymce_lang = array(
'ca_AD' => 'ca',
'ca_ES' => 'ca',
'cs_CZ' => 'cs',
'cy_GB' => 'cy',
'da_DK' => 'da',
'da_GL' => 'da',
'de_AT' => 'de',
'de_BE' => 'de',
'de_CH' => 'de',
'de_DE' => 'de',
'de_LI' => 'de',
'de_LU' => 'de',
'de_BR' => 'de',
'de_US' => 'de',
'el_CY' => 'el',
'el_GR' => 'el',
'es_AR' => 'es',
'es_BO' => 'es',
'es_CL' => 'es',
'es_CO' => 'es',
'es_CR' => 'es',
'es_CU' => 'es',
'es_DO' => 'es',
'es_EC' => 'es',
'es_ES' => 'es',
'es_GQ' => 'es',
'es_GT' => 'es',
'es_HN' => 'es',
'es_MX' => 'es',
'es_NI' => 'es',
'es_PA' => 'es',
'es_PE' => 'es',
'es_PH' => 'es',
'es_PR' => 'es',
'es_PY' => 'es',
'es_SV' => 'es',
'es_UY' => 'es',
'es_VE' => 'es',
'es_AD' => 'es',
'es_BZ' => 'es',
'es_US' => 'es',
'fa_AF' => 'fa',
'fa_IR' => 'fa',
'fa_PK' => 'fa',
'fi_FI' => 'fi',
'fi_SE' => 'fi',
'fr_BE' => 'fr',
'fr_BF' => 'fr',
'fr_BI' => 'fr',
'fr_BJ' => 'fr',
'fr_CA' => 'fr_ca',
'fr_CF' => 'fr',
'fr_CG' => 'fr',
'fr_CH' => 'fr',
'fr_CI' => 'fr',
'fr_CM' => 'fr',
'fr_DJ' => 'fr',
'fr_DZ' => 'fr',
'fr_FR' => 'fr',
'fr_GA' => 'fr',
'fr_GF' => 'fr',
'fr_GN' => 'fr',
'fr_GP' => 'fr',
'fr_HT' => 'fr',
'fr_KM' => 'fr',
'fr_LU' => 'fr',
'fr_MA' => 'fr',
'fr_MC' => 'fr',
'fr_MG' => 'fr',
'fr_ML' => 'fr',
'fr_MQ' => 'fr',
'fr_MU' => 'fr',
'fr_NC' => 'fr',
'fr_NE' => 'fr',
'fr_PF' => 'fr',
'fr_PM' => 'fr',
'fr_RE' => 'fr',
'fr_RW' => 'fr',
'fr_SC' => 'fr',
'fr_SN' => 'fr',
'fr_SY' => 'fr',
'fr_TD' => 'fr',
'fr_TG' => 'fr',
'fr_TN' => 'fr',
'fr_VU' => 'fr',
'fr_WF' => 'fr',
'fr_YT' => 'fr',
'fr_GB' => 'fr',
'fr_US' => 'fr',
'he_IL' => 'he',
'hu_HU' => 'hu',
'hu_AT' => 'hu',
'hu_RO' => 'hu',
'hu_RS' => 'hu',
'is_IS' => 'is',
'it_CH' => 'it',
'it_IT' => 'it',
'it_SM' => 'it',
'it_FR' => 'it',
'it_HR' => 'it',
'it_US' => 'it',
'it_VA' => 'it',
'ja_JP' => 'ja',
'ko_KP' => 'ko',
'ko_KR' => 'ko',
'ko_CN' => 'ko',
'nb_NO' => 'nb',
'nb_SJ' => 'nb',
'nl_AN' => 'nl',
'nl_AW' => 'nl',
'nl_BE' => 'nl',
'nl_NL' => 'nl',
'nl_SR' => 'nl',
'nn_NO' => 'nn',
'pl_PL' => 'pl',
'pl_UA' => 'pl',
'pt_AO' => 'pt_br',
'pt_BR' => 'pt_br',
'pt_CV' => 'pt_br',
'pt_GW' => 'pt_br',
'pt_MZ' => 'pt_br',
'pt_PT' => 'pt_br',
'pt_ST' => 'pt_br',
'pt_TL' => 'pt_br',
'ro_MD' => 'ro',
'ro_RO' => 'ro',
'ro_RS' => 'ro',
'ru_BY' => 'ru',
'ru_KG' => 'ru',
'ru_KZ' => 'ru',
'ru_RU' => 'ru',
'ru_SJ' => 'ru',
'ru_UA' => 'ru',
'si_LK' => 'si',
'sk_SK' => 'sk',
'sk_RS' => 'sk',
'sq_AL' => 'sq',
'sr_BA' => 'sr',
'sr_ME' => 'sr',
'sr_RS' => 'sr',
'sv_FI' => 'sv',
'sv_SE' => 'sv',
'tr_CY' => 'tr',
'tr_TR' => 'tr',
'tr_DE' => 'tr',
'tr_MK' => 'tr',
'uk_UA' => 'uk',
'vi_VN' => 'vi',
'vi_US' => 'vi',
'zh_CN' => 'zh_cn',
'zh_HK' => 'zh_cn',
'zh_MO' => 'zh_cn',
'zh_SG' => 'zh_cn',
'zh_TW' => 'zh_tw',
'zh_ID' => 'zh_cn',
'zh_MY' => 'zh_cn',
'zh_TH' => 'zh_cn',
'zh_US' => 'zn_cn',

)
(line 620)

Inherited Variables

Inherited from Object

Object::$builtInMethods
Object::$class
Object::$classConstructed
Object::$extensions
Object::$extension_instances
Object::$extraMethods
Object::$extraStatics
Object::$statics
Object::$static_cached
Methods
static method default_lang (line 1014)

Get default language (proxy for Translatable::default_lang())

static String default_lang ()
static method default_locale (line 1018)
static void default_locale ()
static method disable (line 1032)

Disable the multilingual content feature (proxy for Translatable::disable())

static void disable ()
static method enable (line 1025)

Enables the multilingual content feature (proxy for Translatable::enable())

static void enable ()
static method get_common_languages (line 813)

Get a list of commonly used languages

  • return: of languages in the form 'code' => 'name'
static list get_common_languages ([boolean $native = false])
  • boolean $native: Use native names for languages instead of English ones
static method get_existing_content_languages (line 836)

Get a list of languages with at least one element translated in (including the default language)

  • return: Map of languages in the form langCode => langName
static array get_existing_content_languages ([string $className = 'SiteTree'], [ $where = ''])
  • string $className: Look for languages in elements of this class
  • $where
static method get_existing_translations (line 857)

Searches the root-directory for module-directories (identified by having a _config.php on their first directory-level).

Returns all found locales.

static array get_existing_translations ()
static method get_language_code (line 914)

Get a code from an English language name

  • return: code (if the name is not found, it'll return the passed name)
static Language get_language_code (mixed $name)
  • mixed $name: Name of the language
static method get_language_name (line 892)

Get a name from a language code

  • return: of the language
static Name get_language_name (mixed $code, [boolean $native = false])
  • mixed $code: Language code
  • boolean $native: If true, the native name will be returned
static method get_locale (line 996)

Get the current locale

  • return: Current locale in the system
static string get_locale ()
static method get_locale_list (line 826)

Get a list of locales (code => language and country)

  • return: of languages in the form 'code' => 'name'
static list get_locale_list ()
static method get_locale_name (line 903)

Get a name from a locale code (xx_YY)

  • return: of the locale
static Name get_locale_name (mixed $code)
  • mixed $code: locale code
static method get_owner_module (line 964)

Given a file name (a php class name, without the .php ext, or a template name, including the .ss extension) this helper function determines the module where this file is located

  • return: Module where the file is located
  • access: protected
static string get_owner_module (string $name)
  • string $name: php class name or template file name
static method get_tinymce_lang (line 924)

Get the current tinyMCE language

static Language get_tinymce_lang ()
static method get_translatable_modules (line 939)

Searches the root-directory for module-directories (identified by having a _config.php on their first directory-level and a language-file with the default locale in the /lang-subdirectory).

static array get_translatable_modules ()
static method include_by_class (line 1068)

Given a class name (a "locale namespace"), will search for its module and, if available, will load the resources for the currently defined locale.

If not available, the original English resource will be loaded instead (to avoid blanks)

static void include_by_class (string $class)
  • string $class: Resources for this class will be included, according to the set locale.
static method include_by_locale (line 1051)

Includes all available language files for a certain defined locale

static void include_by_locale (string $locale)
  • string $locale: All resources from any module in locale $locale will be loaded
static method include_locale_file (line 1042)

Include a locale file determined by module name and locale

static void include_locale_file (string $module, string $locale)
  • string $module: Module that contains the locale file
  • string $locale: Locale to be loaded
static method set_default_lang (line 1005)

Set default language (proxy for Translatable::set_default_lang())

static void set_default_lang ($lang $lang)
  • $lang $lang: String
static method set_locale (line 987)

Set the current locale See http://unicode.org/cldr/data/diff/supplemental/languages_and_territories.html for a list of possible locales

static void set_locale (string $locale)
  • string $locale: Locale to be set
static method _t (line 796)

This is the main translator function. Returns the string defined by $class and $entity according to the currently set locale.

static string _t (string $entity, [string $string = ""], [string $priority = 40], [string $context = ""])
  • string $entity: Entity that identifies the string. It must be in the form "Namespace.Entity" where Namespace will be usually the class name where this string is used and Entity identifies the string inside the namespace.
  • string $string: The original string itself. In a usual call this is a mandatory parameter, but if you are reusing a string which has already been "declared" (using another call to this function, with the same class and entity), you can omit it.
  • string $priority: Optional parameter to set a translation priority. If a string is widely used, should have a high priority (PR_HIGH), in this way translators will be able to prioritise this strings. If a string is rarely shown, you should use PR_LOW. You can use PR_MEDIUM as well. Leaving this field blank will be interpretated as a "normal" priority (less than PR_MEDIUM).
  • string $context: If the string can be difficult to translate by any reason, you can help translators with some more info using this param
removelang (line 1091)

This method will delete every SiteTree instance in the given language

  • access: public
void removelang ()

Inherited Methods

Inherited From Object

Object::__construct()
Object::addMethodsFrom()
Object::addStaticVars()
Object::addWrapperMethod()
Object::add_extension()
Object::allMethodNames()
Object::buildMethodList()
Object::cacheToFile()
Object::cacheToFileWithArgs()
Object::create()
Object::createMethod()
Object::defineMethods()
Object::exists()
Object::extend()
Object::extInstance()
Object::getCustomClass()
Object::hasExtension()
Object::hasMethod()
Object::invokeWithExtensions()
Object::is_a()
Object::loadCache()
Object::parentClass()
Object::sanitiseCachename()
Object::saveCache()
Object::set_stat()
Object::set_uninherited()
Object::stat()
Object::strong_create()
Object::uninherited()
Object::useCustomClass()
Object::__call()
Object::__toString()
blog comments powered by Disqus

Documentation generated on Sun, 19 Oct 2008 06:42:14 +1300 by phpDocumentor 1.3.2