Make WordPress Core

Ticket #15677: 15677.2.diff

File 15677.2.diff, 63.5 KB (added by iandunn, 11 years ago)

refreshed for 3.7

  • src/wp-admin/includes/locales.php

     
     1<?php
     2
     3/**
     4 * locales.php from GlotPress
     5 * This includes a comprehensive and well-maintained list of locales, so it's better to use it than to try and reproduce it independently. See #15677.
     6 *
     7 * @package GlotPress
     8 * @link http://glotpress.org/ Official site
     9 * @link http://glotpress.svn.wordpress.org/trunk/locales/locales.php Original file
     10 * @license GPLv2 http://www.gnu.org/licenses/gpl-2.0.txt
     11 */
     12
     13class GP_Locale {
     14        var $english_name;
     15        var $native_name;
     16        var $text_direction = 'ltr';
     17        var $lang_code_iso_639_1 = null;
     18        var $country_code;
     19        var $wp_locale;
     20        var $slug;
     21        var $nplurals = 2;
     22        var $plural_expression = 'n != 1';
     23        var $google_code = null;
     24        var $preferred_sans_serif_font_family = null;
     25        var $facebook_locale = null;
     26        // TODO: days, months, decimals, quotes
     27
     28        public function GP_Locale( $args = array() ) {
     29                foreach( $args as $key => $value ) {
     30                        $this->$key = $value;
     31                }
     32        }
     33
     34        public static function __set_state( $state ) {
     35                return new GP_Locale( $state );
     36        }
     37
     38        public function combined_name() {
     39                /* translators: combined name for locales: 1: name in English, 2: native name */
     40                return sprintf( _x( '%1$s/%2$s', 'locales' ), $this->english_name, $this->native_name );
     41        }
     42
     43        public function numbers_for_index( $index, $how_many = 3, $test_up_to = 1000 ) {
     44                $numbers = array();
     45                for( $number = 0; $number < $test_up_to; ++$number ) {
     46                        if ( $this->index_for_number( $number ) == $index ) {
     47                                $numbers[] = $number;
     48                                if ( count( $numbers ) >= $how_many ) break;
     49                        }
     50                }
     51                return $numbers;
     52        }
     53
     54        public function index_for_number( $number ) {
     55                if ( !isset( $this->_index_for_number ) ) {
     56                        $gettext = new Gettext_Translations;
     57                        $expression = $gettext->parenthesize_plural_exression( $this->plural_expression );
     58                        $this->_index_for_number = $gettext->make_plural_form_function( $this->nplurals, $expression );
     59                }
     60                $f = $this->_index_for_number;
     61                return $f( $number );
     62        }
     63}
     64
     65class GP_Locales {
     66
     67        var $locales = array();
     68
     69        public function GP_Locales() {
     70                $aa = new GP_Locale();
     71                $aa->english_name = 'Afar';
     72                $aa->native_name = 'Afaraf';
     73                $aa->lang_code_iso_639_1 = 'aa';
     74                $aa->lang_code_iso_639_2 = 'aar';
     75                $aa->country_code = '';
     76                $aa->slug = 'aa';
     77
     78                $ae = new GP_Locale();
     79                $ae->english_name = 'Avestan';
     80                $ae->native_name = 'avesta';
     81                $ae->lang_code_iso_639_1 = 'ae';
     82                $ae->lang_code_iso_639_2 = 'ave';
     83                $ae->country_code = '';
     84                $ae->slug = 'ae';
     85
     86                $af = new GP_Locale();
     87                $af->english_name = 'Afrikaans';
     88                $af->native_name = 'Afrikaans';
     89                $af->lang_code_iso_639_1 = 'af';
     90                $af->lang_code_iso_639_2 = 'afr';
     91                $af->country_code = 'za';
     92                $af->wp_locale = 'af';
     93                $af->slug = 'af';
     94                $af->google_code = 'af';
     95                $af->facebook_locale = 'af_ZA';
     96
     97                $ak = new GP_Locale();
     98                $ak->english_name = 'Akan';
     99                $ak->native_name = 'Akan';
     100                $ak->lang_code_iso_639_1 = 'ak';
     101                $ak->lang_code_iso_639_2 = 'aka';
     102                $ak->country_code = '';
     103                $ak->wp_locale = 'ak';
     104                $ak->slug = 'ak';
     105
     106                $am = new GP_Locale();
     107                $am->english_name = 'Amharic';
     108                $am->native_name = 'አማርኛ';
     109                $am->lang_code_iso_639_1 = 'am';
     110                $am->lang_code_iso_639_2 = 'amh';
     111                $am->country_code = 'et';
     112                $am->slug = 'am';
     113                $am->google_code = 'am';
     114
     115                $an = new GP_Locale();
     116                $an->english_name = 'Aragonese';
     117                $an->native_name = 'Aragonés';
     118                $an->lang_code_iso_639_1 = 'an';
     119                $an->lang_code_iso_639_2 = 'arg';
     120                $an->country_code = 'es';
     121                $an->slug = 'an';
     122
     123                $ar = new GP_Locale();
     124                $ar->english_name = 'Arabic';
     125                $ar->native_name = 'العربية';
     126                $ar->lang_code_iso_639_1 = 'ar';
     127                $ar->lang_code_iso_639_2 = 'ara';
     128                $ar->country_code = '';
     129                $ar->wp_locale = 'ar';
     130                $ar->slug = 'ar';
     131                $ar->google_code = 'ar';
     132                $ar->facebook_locale = 'ar_AR';
     133                $ar->nplurals = 6;
     134                $ar->plural_expression = 'n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5';
     135                $ar->rtl = true;
     136                $ar->preferred_sans_serif_font_family = 'Tahoma';
     137
     138                $as= new GP_Locale();
     139                $as->english_name = 'Assamese';
     140                $as->native_name = 'অসমীয়া';
     141                $as->lang_code_iso_639_1 = 'asm';
     142                $as->lang_code_iso_639_2 = 'as';
     143                $as->country_code = 'in';
     144                $as->wp_locale = 'as';
     145                $as->slug = 'as';
     146                $as->nplurals = 2;
     147                $as->plural_expression = '(n != 1)';
     148
     149                $ast = new GP_Locale();
     150                $ast->english_name = 'Asturian';
     151                $ast->native_name = 'Asturianu';
     152                $ast->lang_code_iso_639_1 = null;
     153                $ast->lang_code_iso_639_2 = 'ast';
     154                $ast->country_code = 'es';
     155                $ast->slug = 'ast';
     156
     157                $av = new GP_Locale();
     158                $av->english_name = 'Avaric';
     159                $av->native_name = 'авар мацӀ';
     160                $av->lang_code_iso_639_1 = 'av';
     161                $av->lang_code_iso_639_2 = 'ava';
     162                $av->country_code = '';
     163                $av->slug = 'av';
     164
     165                $ay = new GP_Locale();
     166                $ay->english_name = 'Aymara';
     167                $ay->native_name = 'aymar aru';
     168                $ay->lang_code_iso_639_1 = 'ay';
     169                $ay->lang_code_iso_639_2 = 'aym';
     170                $ay->country_code = '';
     171                $ay->slug = 'ay';
     172                $ay->nplurals = 1;
     173                $ay->plural_expression = '0';
     174
     175                $az = new GP_Locale();
     176                $az->english_name = 'Azerbaijani';
     177                $az->native_name = 'Azərbaycan dili';
     178                $az->lang_code_iso_639_1 = 'az';
     179                $az->lang_code_iso_639_2 = 'aze';
     180                $az->country_code = 'az';
     181                $az->wp_locale = 'az';
     182                $az->slug = 'az';
     183                $az->google_code = 'az';
     184                $az->facebook_locale = 'az_AZ';
     185
     186                $azb = new GP_Locale();
     187                $azb->english_name = 'South Azerbaijani';
     188                $azb->native_name = 'گؤنئی آذربایجان';
     189                $azb->lang_code_iso_639_1 = 'az';
     190                $azb->lang_code_iso_639_2 = 'azb';
     191                $azb->country_code = 'az';
     192                $azb->wp_locale = 'azb';
     193                $azb->slug = 'azb';
     194                $azb->rtl = true;
     195
     196                $az_tr = new GP_Locale();
     197                $az_tr->english_name = 'Azerbaijani (Turkey)';
     198                $az_tr->native_name = 'Azərbaycan Türkcəsi';
     199                $az_tr->lang_code_iso_639_1 = 'az';
     200                $az_tr->lang_code_iso_639_2 = 'aze';
     201                $az_tr->country_code = 'tr';
     202                $az_tr->wp_locale = 'az_TR';
     203                $az_tr->slug = 'az-tr';
     204                $az_tr->rtl = true;
     205
     206                $ba = new GP_Locale();
     207                $ba->english_name = 'Bashkir';
     208                $ba->native_name = 'башҡорт теле';
     209                $ba->lang_code_iso_639_1 = 'ba';
     210                $ba->lang_code_iso_639_2 = 'bak';
     211                $ba->country_code = '';
     212                $ba->wp_locale = 'ba';
     213                $ba->slug = 'ba';
     214
     215                $bal = new GP_Locale();
     216                $bal->english_name = 'Catalan (Balear)';
     217                $bal->native_name = 'Català (Balear)';
     218                $bal->lang_code_iso_639_1 = null;
     219                $bal->lang_code_iso_639_2 = 'bal';
     220                $bal->country_code = 'es';
     221                $bal->wp_locale = 'bal';
     222                $bal->slug = 'bal';
     223
     224                $be = new GP_Locale();
     225                $be->english_name = 'Belarusian';
     226                $be->native_name = 'Беларуская мова';
     227                $be->lang_code_iso_639_1 = 'be';
     228                $be->lang_code_iso_639_2 = 'bel';
     229                $be->country_code = 'by';
     230                $be->wp_locale = 'bel';
     231                $be->slug = 'bel';
     232                $be->google_code = 'be';
     233                $be->facebook_locale = 'be_BY';
     234                $be->nplurals = 3;
     235                $be->plural_expression = '(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2)';
     236
     237                $bg = new GP_Locale();
     238                $bg->english_name = 'Bulgarian';
     239                $bg->native_name = 'Български';
     240                $bg->lang_code_iso_639_1 = 'bg';
     241                $bg->lang_code_iso_639_2 = 'bul';
     242                $bg->country_code = 'bg';
     243                $bg->wp_locale = 'bg_BG';
     244                $bg->slug = 'bg';
     245                $bg->google_code = 'bg';
     246                $bg->facebook_locale = 'bg_BG';
     247
     248                $bh = new GP_Locale();
     249                $bh->english_name = 'Bihari';
     250                $bh->native_name = 'भोजपुरी';
     251                $bh->lang_code_iso_639_1 = 'bh';
     252                $bh->lang_code_iso_639_2 = 'bih';
     253                $bh->country_code = '';
     254                $bh->slug = 'bh';
     255
     256                $bi = new GP_Locale();
     257                $bi->english_name = 'Bislama';
     258                $bi->native_name = 'Bislama';
     259                $bi->lang_code_iso_639_1 = 'bi';
     260                $bi->lang_code_iso_639_2 = 'bis';
     261                $bi->country_code = 'vu';
     262                $bi->slug = 'bi';
     263
     264                $bm = new GP_Locale();
     265                $bm->english_name = 'Bambara';
     266                $bm->native_name = 'Bamanankan';
     267                $bm->lang_code_iso_639_1 = 'bm';
     268                $bm->lang_code_iso_639_2 = 'bam';
     269                $bm->country_code = '';
     270                $bm->slug = 'bm';
     271
     272                $bn_bd = new GP_Locale();
     273                $bn_bd->english_name = 'Bengali';
     274                $bn_bd->native_name = 'বাংলা';
     275                $bn_bd->lang_code_iso_639_1 = 'bn';
     276                $bn_bd->country_code = 'bn';
     277                $bn_bd->wp_locale = 'bn_BD';
     278                $bn_bd->slug = 'bn';
     279                $bn_bd->google_code = 'bn';
     280                $bn_bd->facebook_locale = 'bn_IN';
     281
     282                $bo = new GP_Locale();
     283                $bo->english_name = 'Tibetan';
     284                $bo->native_name = 'བོད་སྐད';
     285                $bo->lang_code_iso_639_1 = 'bo';
     286                $bo->lang_code_iso_639_2 = 'tib';
     287                $bo->country_code = '';
     288                $bo->slug = 'bo';
     289                $bo->google_code = 'bo';
     290                $bo->nplurals = 1;
     291                $bo->plural_expression = '0';
     292
     293                $br = new GP_Locale();
     294                $br->english_name = 'Breton';
     295                $br->native_name = 'brezhoneg';
     296                $br->lang_code_iso_639_1 = 'br';
     297                $br->lang_code_iso_639_2 = 'bre';
     298                $br->country_code = 'fr';
     299                $br->slug = 'br';
     300                $br->nplurals = 2;
     301                $br->plural_expression = '(n > 1)';
     302
     303                $bs = new GP_Locale();
     304                $bs->english_name = 'Bosnian';
     305                $bs->native_name = 'Bosanski';
     306                $bs->lang_code_iso_639_1 = 'bs';
     307                $bs->lang_code_iso_639_2 = 'bos';
     308                $bs->country_code = 'ba';
     309                $bs->wp_locale = 'bs_BA';
     310                $bs->slug = 'bs';
     311                $bs->google_code = 'bs';
     312                $bs->facebook_locale = 'bs_BA';
     313                $bs->nplurals = 3;
     314                $bs->plural_expression = '(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2)';
     315
     316                $ca = new GP_Locale();
     317                $ca->english_name = 'Catalan';
     318                $ca->native_name = 'Català';
     319                $ca->lang_code_iso_639_1 = 'ca';
     320                $ca->lang_code_iso_639_2 = 'cat';
     321                $ca->country_code = '';
     322                $ca->wp_locale = 'ca';
     323                $ca->slug = 'ca';
     324                $ca->google_code = 'ca';
     325                $ca->facebook_locale = 'ca_ES';
     326
     327                $ce = new GP_Locale();
     328                $ce->english_name = 'Chechen';
     329                $ce->native_name = 'Нохчийн мотт';
     330                $ce->lang_code_iso_639_1 = 'ce';
     331                $ce->lang_code_iso_639_2 = 'che';
     332                $ce->country_code = '';
     333                $ce->slug = 'ce';
     334
     335                $ch = new GP_Locale();
     336                $ch->english_name = 'Chamorro';
     337                $ch->native_name = 'Chamoru';
     338                $ch->lang_code_iso_639_1 = 'ch';
     339                $ch->lang_code_iso_639_2 = 'cha';
     340                $ch->slug = 'ch';
     341
     342                $ckb = new GP_Locale();
     343                $ckb->english_name = 'Kurdish (Sorani)';
     344                $ckb->native_name = 'كوردی‎';
     345                $ckb->lang_code_iso_639_1 = 'ku';
     346                $ckb->lang_code_iso_639_2 = 'ckb';
     347                $ckb->country_code = 'ku';
     348                $ckb->wp_locale = 'ckb';
     349                $ckb->slug = 'ckb';
     350
     351                $co = new GP_Locale();
     352                $co->english_name = 'Corsican';
     353                $co->native_name = 'corsu';
     354                $co->lang_code_iso_639_1 = 'co';
     355                $co->lang_code_iso_639_2 = 'cos';
     356                $co->country_code = 'it';
     357                $co->wp_locale = 'co';
     358                $co->slug = 'co';
     359
     360                $cr = new GP_Locale();
     361                $cr->english_name = 'Cree';
     362                $cr->native_name = 'ᓀᐦᐃᔭᐍᐏᐣ';
     363                $cr->lang_code_iso_639_1 = 'cr';
     364                $cr->lang_code_iso_639_2 = 'cre';
     365                $cr->country_code = 'ca';
     366                $cr->slug = 'cr';
     367
     368                $cs = new GP_Locale();
     369                $cs->english_name = 'Czech';
     370                $cs->native_name = 'čeština‎';
     371                $cs->lang_code_iso_639_1 = 'cs';
     372                $cs->lang_code_iso_639_2 = 'ces';
     373                $cs->country_code = 'cz';
     374                $cs->wp_locale = 'cs_CZ';
     375                $cs->slug = 'cs';
     376                $cs->google_code = 'cs';
     377                $cs->facebook_locale = 'cs_CZ';
     378                $cs->nplurals = 3;
     379                $cs->plural_expression = '(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2';
     380
     381                $csb = new GP_Locale();
     382                $csb->english_name = 'Kashubian';
     383                $csb->native_name = 'Kaszëbsczi';
     384                $csb->lang_code_iso_639_1 = null;
     385                $csb->lang_code_iso_639_2 = 'csb';
     386                $csb->country_code = '';
     387                $csb->slug = 'csb';
     388                $csb->nplurals = 3;
     389                $csb->plural_expression = 'n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2';
     390
     391                $cu = new GP_Locale();
     392                $cu->english_name = 'Church Slavic';
     393                $cu->native_name = 'ѩзыкъ словѣньскъ';
     394                $cu->lang_code_iso_639_1 = 'cu';
     395                $cu->lang_code_iso_639_2 = 'chu';
     396                $cu->country_code = '';
     397                $cu->slug = 'cu';
     398
     399                $cv = new GP_Locale();
     400                $cv->english_name = 'Chuvash';
     401                $cv->native_name = 'чӑваш чӗлхи';
     402                $cv->lang_code_iso_639_1 = 'cv';
     403                $cv->lang_code_iso_639_2 = 'chv';
     404                $cv->country_code = 'ru';
     405                $cv->slug = 'cv';
     406
     407                $cy = new GP_Locale();
     408                $cy->english_name = 'Welsh';
     409                $cy->native_name = 'Cymraeg';
     410                $cy->lang_code_iso_639_1 = 'cy';
     411                $cy->lang_code_iso_639_2 = 'cym';
     412                $cy->country_code = 'uk';
     413                $cy->wp_locale = 'cy';
     414                $cy->slug = 'cy';
     415                $cy->google_code = 'cy';
     416                $cy->facebook_locale = 'cy_GB';
     417                $cy->nplurals = 4;
     418                $cy->plural_expression = '(n==1) ? 0 : (n==2) ? 1 : (n != 8 && n != 11) ? 2 : 3';
     419
     420                $da = new GP_Locale();
     421                $da->english_name = 'Danish';
     422                $da->native_name = 'Dansk';
     423                $da->lang_code_iso_639_1 = 'da';
     424                $da->lang_code_iso_639_2 = 'dan';
     425                $da->country_code = 'dk';
     426                $da->wp_locale = 'da_DK';
     427                $da->slug = 'da';
     428                $da->google_code = 'da';
     429                $da->facebook_locale = 'da_DK';
     430
     431                $de = new GP_Locale();
     432                $de->english_name = 'German';
     433                $de->native_name = 'Deutsch';
     434                $de->lang_code_iso_639_1 = 'de';
     435                $de->country_code = 'de';
     436                $de->wp_locale = 'de_DE';
     437                $de->slug = 'de';
     438                $de->google_code = 'de';
     439                $de->facebook_locale = 'de_DE';
     440
     441                $dv = new GP_Locale();
     442                $dv->english_name = 'Divehi';
     443                $dv->native_name = 'ދިވެހި';
     444                $dv->lang_code_iso_639_1 = 'dv';
     445                $dv->lang_code_iso_639_2 = 'div';
     446                $dv->country_code = 'mv';
     447                $dv->wp_locale = 'dv';
     448                $dv->slug = 'dv';
     449                $dv->google_code = 'dv';
     450                $dv->rtl = true;
     451
     452                $dz = new GP_Locale();
     453                $dz->english_name = 'Dzongkha';
     454                $dz->native_name = 'རྫོང་ཁ';
     455                $dz->lang_code_iso_639_1 = 'dz';
     456                $dz->lang_code_iso_639_2 = 'dzo';
     457                $dz->country_code = 'bt';
     458                $dz->slug = 'dz';
     459                $dz->nplurals = 1;
     460                $dz->plural_expression = '0';
     461
     462                $ee = new GP_Locale();
     463                $ee->english_name = 'Ewe';
     464                $ee->native_name = 'Eʋegbe';
     465                $ee->lang_code_iso_639_1 = 'ee';
     466                $ee->lang_code_iso_639_2 = 'ewe';
     467                $ee->country_code = '';
     468                $ee->slug = 'ee';
     469
     470                $el_po = new GP_Locale();
     471                $el_po->english_name = 'Greek (Polytonic)';
     472                $el_po->native_name = 'Greek (Polytonic)'; // TODO
     473                $el_po->lang_code_po_iso_639_1 = null;
     474                $el_po->lang_code_po_iso_639_2 = null;
     475                $el_po->country_code = 'gr';
     476                $el_po->slug = 'el-po';
     477
     478                $el = new GP_Locale();
     479                $el->english_name = 'Greek';
     480                $el->native_name = 'Ελληνικά';
     481                $el->lang_code_iso_639_1 = 'el';
     482                $el->lang_code_iso_639_2 = 'ell';
     483                $el->country_code = 'gr';
     484                $el->wp_locale = 'el';
     485                $el->slug = 'el';
     486                $el->google_code = 'el';
     487                $el->facebook_locale = 'el_GR';
     488
     489                $en = new GP_Locale();
     490                $en->english_name = 'English';
     491                $en->native_name = 'English';
     492                $en->lang_code_iso_639_1 = 'en';
     493                $en->country_code = 'us';
     494                $en->wp_locale = 'en_US';
     495                $en->slug = 'en';
     496                $en->google_code = 'en';
     497                $en->facebook_locale = 'en_US';
     498
     499                $en_ca = new GP_Locale();
     500                $en_ca->english_name = 'English (Canada)';
     501                $en_ca->native_name = 'English (Canada)';
     502                $en_ca->lang_code_iso_639_1 = 'en';
     503                $en_ca->lang_code_iso_639_2 = 'eng';
     504                $en_ca->lang_code_iso_639_3 = 'eng';
     505                $en_ca->country_code = 'ca';
     506                $en_ca->wp_locale = 'en_CA';
     507                $en_ca->slug = 'en-ca';
     508                $en_ca->google_code = 'en';
     509
     510                $en_gb = new GP_Locale();
     511                $en_gb->english_name = 'English (UK)';
     512                $en_gb->native_name = 'English (UK)';
     513                $en_gb->lang_code_iso_639_1 = 'en';
     514                $en_gb->lang_code_iso_639_2 = 'eng';
     515                $en_gb->lang_code_iso_639_3 = 'eng';
     516                $en_gb->country_code = 'gb';
     517                $en_gb->wp_locale = 'en_GB';
     518                $en_gb->slug = 'en-gb';
     519                $en_gb->google_code = 'en';
     520                $en_gb->facebook_locale = 'en_GB';
     521
     522                $eo = new GP_Locale();
     523                $eo->english_name = 'Esperanto';
     524                $eo->native_name = 'Esperanto';
     525                $eo->lang_code_iso_639_1 = 'eo';
     526                $eo->lang_code_iso_639_2 = 'epo';
     527                $eo->country_code = '';
     528                $eo->wp_locale = 'eo';
     529                $eo->slug = 'eo';
     530                $eo->google_code = 'eo';
     531                $eo->facebook_locale = 'eo_EO';
     532
     533                $es_cl = new GP_Locale();
     534                $es_cl->english_name = 'Spanish (Chile)';
     535                $es_cl->native_name = 'Español de Chile';
     536                $es_cl->lang_code_iso_639_1 = 'es';
     537                $es_cl->lang_code_iso_639_2 = 'spa';
     538                $es_cl->country_code = 'cl';
     539                $es_cl->wp_locale = 'es_CL';
     540                $es_cl->slug = 'es-cl';
     541                $es_cl->google_code = 'es';
     542                $es_cl->facebook_locale = 'es_LA';
     543
     544                $es_mx = new GP_Locale();
     545                $es_mx->english_name = 'Spanish (Mexico)';
     546                $es_mx->native_name = 'Español de México';
     547                $es_mx->lang_code_iso_639_1 = 'es';
     548                $es_mx->lang_code_iso_639_2 = 'spa';
     549                $es_mx->country_code = 'mx';
     550                $es_mx->wp_locale = 'es_MX';
     551                $es_mx->slug = 'es-mx';
     552                $es_mx->google_code = 'es';
     553                $es_mx->facebook_locale = 'es_LA';
     554
     555                $es_pe = new GP_Locale();
     556                $es_pe->english_name = 'Spanish (Peru)';
     557                $es_pe->native_name = 'Español de Perú';
     558                $es_pe->lang_code_iso_639_1 = 'es';
     559                $es_pe->lang_code_iso_639_2 = 'spa';
     560                $es_pe->country_code = 'pe';
     561                $es_pe->wp_locale = 'es_PE';
     562                $es_pe->slug = 'es-pe';
     563                $es_pe->google_code = 'es';
     564                $es_pe->facebook_locale = 'es_LA';
     565
     566                $es_pr = new GP_Locale();
     567                $es_pr->english_name = 'Spanish (Puerto Rico)';
     568                $es_pr->native_name = 'Español de Puerto Rico';
     569                $es_pr->lang_code_iso_639_1 = 'es';
     570                $es_pr->lang_code_iso_639_2 = 'spa';
     571                $es_pr->country_code = 'pr';
     572                $es_pr->wp_locale = 'es_PR';
     573                $es_pr->slug = 'es-pr';
     574                $es_pr->google_code = 'es';
     575                $es_pr->facebook_locale = 'es_LA';
     576
     577                $es_ve = new GP_Locale();
     578                $es_ve->english_name = 'Spanish (Venezuela)';
     579                $es_ve->native_name = 'Español de Venezuela';
     580                $es_ve->lang_code_iso_639_1 = 'es';
     581                $es_ve->lang_code_iso_639_2 = 'spa';
     582                $es_ve->country_code = 'pe';
     583                $es_ve->wp_locale = 'es_VE';
     584                $es_ve->slug = 'es-ve';
     585                $es_ve->google_code = 'es';
     586                $es_ve->facebook_locale = 'es_LA';
     587
     588                $es_co = new GP_Locale();
     589                $es_co->english_name = 'Spanish (Colombia)';
     590                $es_co->native_name = 'Español de Colombia';
     591                $es_co->lang_code_iso_639_1 = 'es';
     592                $es_co->lang_code_iso_639_2 = 'spa';
     593                $es_co->country_code = 'co';
     594                $es_co->wp_locale = 'es_CO';
     595                $es_co->slug = 'es-co';
     596                $es_co->google_code = 'es';
     597                $es_co->facebook_locale = 'es_LA';
     598
     599                $es = new GP_Locale();
     600                $es->english_name = 'Spanish (Spain)';
     601                $es->native_name = 'Español';
     602                $es->lang_code_iso_639_1 = 'es';
     603                $es->country_code = 'es';
     604                $es->wp_locale = 'es_ES';
     605                $es->slug = 'es';
     606                $es->google_code = 'es';
     607                $es->facebook_locale = 'es_ES';
     608
     609                $et = new GP_Locale();
     610                $et->english_name = 'Estonian';
     611                $et->native_name = 'Eesti';
     612                $et->lang_code_iso_639_1 = 'et';
     613                $et->lang_code_iso_639_2 = 'est';
     614                $et->country_code = 'ee';
     615                $et->wp_locale = 'et';
     616                $et->slug = 'et';
     617                $et->google_code = 'et';
     618                $et->facebook_locale = 'et_EE';
     619
     620                $eu = new GP_Locale();
     621                $eu->english_name = 'Basque';
     622                $eu->native_name = 'Euskara';
     623                $eu->lang_code_iso_639_1 = 'eu';
     624                $eu->lang_code_iso_639_2 = 'eus';
     625                $eu->country_code = 'es';
     626                $eu->wp_locale = 'eu';
     627                $eu->slug = 'eu';
     628                $eu->google_code = 'eu';
     629                $eu->facebook_locale = 'eu_ES';
     630
     631                $fa = new GP_Locale();
     632                $fa->english_name = 'Persian';
     633                $fa->native_name = 'فارسی';
     634                $fa->lang_code_iso_639_1 = 'fa';
     635                $fa->lang_code_iso_639_2 = 'fas';
     636                $fa->country_code = '';
     637                $fa->wp_locale = 'fa_IR';
     638                $fa->slug = 'fa';
     639                $fa->google_code = 'fa';
     640                $fa->facebook_locale = 'fa_IR';
     641                $fa->nplurals = 1;
     642                $fa->plural_expression = '0';
     643                $fa->rtl = true;
     644
     645                $fa_af = new GP_Locale();
     646                $fa_af->english_name = 'Persian (Afghanistan)';
     647                $fa_af->native_name = '(فارسی (افغانستان';
     648                $fa_af->lang_code_iso_639_1 = 'fa';
     649                $fa_af->lang_code_iso_639_2 = 'fas';
     650                $fa_af->country_code = '';
     651                $fa_af->wp_locale = 'fa_AF';
     652                $fa_af->slug = 'fa-af';
     653                $fa_af->google_code = 'fa';
     654                $fa_af->nplurals = 1;
     655                $fa_af->plural_expression = '0';
     656                $fa_af->rtl = true;
     657
     658                $fi = new GP_Locale();
     659                $fi->english_name = 'Finnish';
     660                $fi->native_name = 'Suomi';
     661                $fi->lang_code_iso_639_1 = 'fi';
     662                $fi->lang_code_iso_639_2 = 'fin';
     663                $fi->country_code = 'fi';
     664                $fi->wp_locale = 'fi';
     665                $fi->slug = 'fi';
     666                $fi->google_code = 'fi';
     667                $fi->facebook_locale = 'fi_FI';
     668
     669                $fj = new GP_Locale();
     670                $fj->english_name = 'Fijian';
     671                $fj->native_name = 'vosa Vakaviti';
     672                $fj->lang_code_iso_639_1 = 'fj';
     673                $fj->lang_code_iso_639_2 = 'fij';
     674                $fj->country_code = 'fj';
     675                $fj->slug = 'fj';
     676
     677                $fo = new GP_Locale();
     678                $fo->english_name = 'Faroese';
     679                $fo->native_name = 'føroyskt';
     680                $fo->lang_code_iso_639_1 = 'fo';
     681                $fo->lang_code_iso_639_2 = 'fao';
     682                $fo->country_code = 'fo';
     683                $fo->wp_locale = 'fo';
     684                $fo->slug = 'fo';
     685                $fo->facebook_locale = 'fo_FO';
     686
     687                $fr = new GP_Locale();
     688                $fr->english_name = 'French (France)';
     689                $fr->native_name = 'Français';
     690                $fr->lang_code_iso_639_1 = 'fr';
     691                $fr->country_code = 'fr';
     692                $fr->wp_locale = 'fr_FR';
     693                $fr->slug = 'fr';
     694                $fr->google_code = 'fr';
     695                $fr->facebook_locale = 'fr_FR';
     696                $fr->nplurals = 2;
     697                $fr->plural_expression = 'n > 1';
     698
     699                $fr_be = new GP_Locale();
     700                $fr_be->english_name = 'French (Belgium)';
     701                $fr_be->native_name = 'Français de Belgique';
     702                $fr_be->lang_code_iso_639_1 = 'fr';
     703                $fr_be->lang_code_iso_639_2 = 'fra';
     704                $fr_be->country_code = 'be';
     705                $fr_be->wp_locale = 'fr_BE';
     706                $fr_be->slug = 'fr-be';
     707
     708                $fr_ca = new GP_Locale();
     709                $fr_ca->english_name = 'French (Canada)';
     710                $fr_ca->native_name = 'Français du Canada';
     711                $fr_ca->lang_code_iso_639_1 = 'fr';
     712                $fr_ca->lang_code_iso_639_2 = 'fra';
     713                $fr_ca->country_code = 'ca';
     714                $fr_ca->facebook_locale = 'fr_CA';
     715                $fr_ca->slug = 'fr-ca';
     716
     717                $fr_ch = new GP_Locale();
     718                $fr_ch->english_name = 'French (Switzerland)';
     719                $fr_ch->native_name = 'Français de Suisse';
     720                $fr_ch->lang_code_iso_639_1 = 'fr';
     721                $fr_ch->lang_code_iso_639_2 = 'fra';
     722                $fr_ch->country_code = 'ch';
     723                $fr_ch->slug = 'fr-ch';
     724
     725                $fy = new GP_Locale();
     726                $fy->english_name = 'Frisian';
     727                $fy->native_name = 'Frysk';
     728                $fy->lang_code_iso_639_1 = 'fy';
     729                $fy->lang_code_iso_639_2 = 'fry';
     730                $fy->country_code = 'fy';
     731                $fy->facebook_locale = 'fy_NL';
     732                $fy->slug = 'fy';
     733                $fy->wp_locale = 'fy';
     734
     735                $ga = new GP_Locale();
     736                $ga->english_name = 'Irish';
     737                $ga->native_name = 'Gaelige';
     738                $ga->lang_code_iso_639_1 = 'ga';
     739                $ga->lang_code_iso_639_2 = 'gle';
     740                $ga->country_code = 'ie';
     741                $ga->slug = 'ga';
     742                $ga->google_code = 'ga';
     743                $ga->facebook_locale = 'ga_IE';
     744                $ga->nplurals = 5;
     745                $ga->plural_expression = 'n==1 ? 0 : n==2 ? 1 : n<7 ? 2 : n<11 ? 3 : 4';
     746
     747                $gd = new GP_Locale();
     748                $gd->english_name = 'Scottish Gaelic';
     749                $gd->native_name = 'Gàidhlig';
     750                $gd->lang_code_iso_639_1 = 'gd';
     751                $gd->lang_code_iso_639_2 = 'gla';
     752                $gd->lang_code_iso_639_3 = 'gla';
     753                $gd->country_code = 'uk';
     754                $gd->wp_locale = 'gd';
     755                $gd->slug = 'gd';
     756                $gd->google_code = 'gd';
     757                $gd->nplurals = 4;
     758                $gd->plural_expression = '(n==1 || n==11) ? 0 : (n==2 || n==12) ? 1 : (n > 2 && n < 20) ? 2 : 3';
     759
     760                $gl = new GP_Locale();
     761                $gl->english_name = 'Galician';
     762                $gl->native_name = 'Galego';
     763                $gl->lang_code_iso_639_1 = 'gl';
     764                $gl->lang_code_iso_639_2 = 'glg';
     765                $gl->country_code = 'es';
     766                $gl->wp_locale = 'gl_ES';
     767                $gl->slug = 'gl';
     768                $gl->google_code = 'gl';
     769                $gl->facebook_locale = 'gl_ES';
     770
     771                $gn = new GP_Locale();
     772                $gn->english_name = 'Guaraní';
     773                $gn->native_name = 'Avañe\'ẽ';
     774                $gn->lang_code_iso_639_1 = 'gn';
     775                $gn->lang_code_iso_639_2 = 'grn';
     776                $gn->country_code = '';
     777                $gn->wp_locale = 'gn';
     778                $gn->slug = 'gn';
     779                $gn->google_code = 'gn';
     780
     781                $gsw = new GP_Locale();
     782                $gsw->english_name = 'Swiss German';
     783                $gsw->native_name = 'Schwyzerdütsch';
     784                $gsw->lang_code_iso_639_1 = null;
     785                $gsw->lang_code_iso_639_2 = 'gsw';
     786                $gsw->lang_code_iso_639_3 = 'gsw';
     787                $gsw->country_code = 'ch';
     788                $gsw->wp_locale = 'gsw';
     789                $gsw->slug = 'gsw';
     790
     791                $gu = new GP_Locale();
     792                $gu->english_name = 'Gujarati';
     793                $gu->native_name = 'ગુજરાતી';
     794                $gu->lang_code_iso_639_1 = 'gu';
     795                $gu->lang_code_iso_639_2 = 'guj';
     796                $gu->country_code = '';
     797                $gu->slug = 'gu';
     798                $gu->google_code = 'gu';
     799
     800                $ha = new GP_Locale();
     801                $ha->english_name = 'Hausa';
     802                $ha->native_name = 'هَوُسَ';
     803                $ha->lang_code_iso_639_1 = 'he';
     804                $ha->lang_code_iso_639_2 = 'hau';
     805                $ha->country_code = '';
     806                $ha->slug = 'ha';
     807                $ha->rtl = true;
     808
     809                $haw = new GP_Locale();
     810                $haw->english_name = 'Hawaiian';
     811                $haw->native_name = 'Ōlelo Hawaiʻi';
     812                $haw->lang_code_iso_639_1 = null;
     813                $haw->lang_code_iso_639_2 = 'haw';
     814                $haw->country_code = 'us';
     815                $haw->wp_locale = 'haw_US';
     816                $haw->slug = 'haw';
     817
     818                $haz = new GP_Locale();
     819                $haz->english_name = 'Hazaragi';
     820                $haz->native_name = 'هزاره گی';
     821                $haz->lang_code_iso_639_1 = null;
     822                $haz->lang_code_iso_639_2 = 'haz';
     823                $haz->country_code = 'af';
     824                $haz->wp_locale = 'haz';
     825                $haz->slug = 'haz';
     826                $haz->rtl = true;
     827
     828                $he = new GP_Locale();
     829                $he->english_name = 'Hebrew';
     830                $he->native_name = 'עִבְרִית';
     831                $he->lang_code_iso_639_1 = 'he';
     832                $he->country_code = 'il';
     833                $he->wp_locale = 'he_IL';
     834                $he->slug = 'he';
     835                $he->google_code = 'iw';
     836                $he->facebook_locale = 'he_IL';
     837                $he->rtl = true;
     838
     839                $hi = new GP_Locale();
     840                $hi->english_name = 'Hindi';
     841                $hi->native_name = 'हिन्दी';
     842                $hi->lang_code_iso_639_1 = 'hi';
     843                $hi->lang_code_iso_639_2 = 'hin';
     844                $hi->country_code = 'in';
     845                $hi->wp_locale = 'hi_IN';
     846                $hi->slug = 'hi';
     847                $hi->google_code = 'hi';
     848                $hi->facebook_locale = 'hi_IN';
     849
     850                $hr = new GP_Locale();
     851                $hr->english_name = 'Croatian';
     852                $hr->native_name = 'Hrvatski';
     853                $hr->lang_code_iso_639_1 = 'hr';
     854                $hr->lang_code_iso_639_2 = 'hrv';
     855                $hr->country_code = 'hr';
     856                $hr->wp_locale = 'hr';
     857                $hr->slug = 'hr';
     858                $hr->google_code = 'hr';
     859                $hr->facebook_locale = 'hr_HR';
     860                $hr->nplurals = 3;
     861                $hr->plural_expression = '(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2)';
     862
     863                $hu = new GP_Locale();
     864                $hu->english_name = 'Hungarian';
     865                $hu->native_name = 'Magyar';
     866                $hu->lang_code_iso_639_1 = 'hu';
     867                $hu->lang_code_iso_639_2 = 'hun';
     868                $hu->country_code = 'hu';
     869                $hu->wp_locale = 'hu_HU';
     870                $hu->slug = 'hu';
     871                $hu->google_code = 'hu';
     872                $hu->facebook_locale = 'hu_HU';
     873
     874                $hy = new GP_Locale();
     875                $hy->english_name = 'Armenian';
     876                $hy->native_name = 'Հայերեն';
     877                $hy->lang_code_iso_639_1 = 'hy';
     878                $hy->lang_code_iso_639_2 = 'hye';
     879                $hy->country_code = 'am';
     880                $hy->wp_locale = 'hy';
     881                $hy->slug = 'hy';
     882                $hy->google_code = 'hy';
     883                $hy->facebook_locale = 'hy_AM';
     884                $hy->nplurals = 2;
     885
     886                $ia = new GP_Locale();
     887                $ia->english_name = 'Interlingua';
     888                $ia->native_name = 'Interlingua';
     889                $ia->lang_code_iso_639_1 = 'ia';
     890                $ia->lang_code_iso_639_2 = 'ina';
     891                $ia->country_code = '';
     892                $ia->slug = 'ia';
     893
     894                $id = new GP_Locale();
     895                $id->english_name = 'Indonesian';
     896                $id->native_name = 'Bahasa Indonesia';
     897                $id->lang_code_iso_639_1 = 'id';
     898                $id->lang_code_iso_639_2 = 'ind';
     899                $id->country_code = 'id';
     900                $id->wp_locale = 'id_ID';
     901                $id->slug = 'id';
     902                $id->google_code = 'id';
     903                $id->facebook_locale = 'id_ID';
     904                $id->nplurals = 2;
     905                $id->plural_expression = 'n > 1';
     906
     907                $ike = new GP_Locale();
     908                $ike->english_name = 'Inuktitut';
     909                $ike->native_name = 'ᐃᓄᒃᑎᑐᑦ';
     910                $ike->lang_code_iso_639_1 = 'iu';
     911                $ike->lang_code_iso_639_2 = 'iku';
     912                $ike->country_code = 'ca';
     913                $ike->slug = 'ike';
     914
     915                $ilo = new GP_Locale();
     916                $ilo->english_name = 'Iloko';
     917                $ilo->native_name = 'Pagsasao nga Iloko';
     918                $ilo->lang_code_iso_639_1 = null;
     919                $ilo->lang_code_iso_639_2 = 'ilo';
     920                $ilo->country_code = 'ph';
     921                $ilo->slug = 'ilo';
     922
     923                $is = new GP_Locale();
     924                $is->english_name = 'Icelandic';
     925                $is->native_name = 'Íslenska';
     926                $is->lang_code_iso_639_1 = 'is';
     927                $is->lang_code_iso_639_2 = 'isl';
     928                $is->country_code = 'is';
     929                $is->slug = 'is';
     930                $is->google_code = 'is';
     931                $is->facebook_locale = 'is_IS';
     932                $is->wp_locale = 'is_IS';
     933                $is->nplurals = 2;
     934                $is->plural_expression = '(n % 100 != 1 && n % 100 != 21 && n % 100 != 31 && n % 100 != 41 && n % 100 != 51 && n % 100 != 61 && n % 100 != 71 && n % 100 != 81 && n % 100 != 91)';
     935
     936                $it = new GP_Locale();
     937                $it->english_name = 'Italian';
     938                $it->native_name = 'Italiano';
     939                $it->lang_code_iso_639_1 = 'it';
     940                $it->lang_code_iso_639_2 = 'ita';
     941                $it->country_code = 'it';
     942                $it->wp_locale = 'it_IT';
     943                $it->slug = 'it';
     944                $it->google_code = 'it';
     945                $it->facebook_locale = 'it_IT';
     946
     947                $ja = new GP_Locale();
     948                $ja->english_name = 'Japanese';
     949                $ja->native_name = '日本語';
     950                $ja->lang_code_iso_639_1 = 'ja';
     951                $ja->country_code = 'jp';
     952                $ja->wp_locale = 'ja';
     953                $ja->slug = 'ja';
     954                $ja->google_code = 'ja';
     955                $ja->facebook_locale = 'ja_JP';
     956                $ja->nplurals = 1;
     957                $ja->plural_expression = '0';
     958
     959                $jv = new GP_Locale();
     960                $jv->english_name = 'Javanese';
     961                $jv->native_name = 'Basa Jawa';
     962                $jv->lang_code_iso_639_1 = 'jv';
     963                $jv->lang_code_iso_639_2 = 'jav';
     964                $jv->country_code = 'id';
     965                $jv->wp_locale = 'jv_ID';
     966                $jv->slug = 'jv';
     967                $jv->google_code = 'jw';
     968
     969                $ka = new GP_Locale();
     970                $ka->english_name = 'Georgian';
     971                $ka->native_name = 'ქართული';
     972                $ka->lang_code_iso_639_1 = 'ka';
     973                $ka->lang_code_iso_639_2 = 'kat';
     974                $ka->country_code = 'ge';
     975                $ka->wp_locale = 'ka_GE';
     976                $ka->slug = 'ka';
     977                $ka->google_code = 'ka';
     978                $ka->facebook_locale = 'ka_GE';
     979                $ka->nplurals = 1;
     980                $ka->plural_expression = '0';
     981
     982                $kin = new GP_Locale();
     983                $kin->english_name = 'Kinyarwanda';
     984                $kin->native_name = 'Kinyarwanda';
     985                $kin->lang_code_iso_639_1 = 'rw';
     986                $kin->lang_code_iso_639_2 = 'kin';
     987                $kin->lang_code_iso_639_3 = 'kin';
     988                $kin->wp_locale = 'kin';
     989                $kin->country_code = 'rw';
     990                $kin->slug = 'rw';
     991                $kin->nplurals = 2;
     992                $kin->plural_expression = '(n > 1)';
     993
     994                $kk = new GP_Locale();
     995                $kk->english_name = 'Kazakh';
     996                $kk->native_name = 'Қазақ тілі';
     997                $kk->lang_code_iso_639_1 = 'kk';
     998                $kk->lang_code_iso_639_2 = 'kaz';
     999                $kk->country_code = 'kz';
     1000                $kk->wp_locale = 'kk';
     1001                $kk->slug = 'kk';
     1002                $kk->google_code = 'kk';
     1003
     1004                $km = new GP_Locale();
     1005                $km->english_name = 'Khmer';
     1006                $km->native_name = 'ភាសាខ្មែរ';
     1007                $km->lang_code_iso_639_1 = 'km';
     1008                $km->lang_code_iso_639_2 = 'khm';
     1009                $km->country_code = 'kh';
     1010                $km->slug = 'km';
     1011                $km->google_code = 'km';
     1012                $km->facebook_locale = 'km_KH';
     1013                $km->nplurals = 1;
     1014                $km->plural_expression = '0';
     1015
     1016                $kn = new GP_Locale();
     1017                $kn->english_name = 'Kannada';
     1018                $kn->native_name = 'ಕನ್ನಡ';
     1019                $kn->lang_code_iso_639_1 = 'kn';
     1020                $kn->lang_code_iso_639_2 = 'kan';
     1021                $kn->country_code = 'in';
     1022                $kn->wp_locale = 'kn';
     1023                $kn->slug = 'kn';
     1024                $kn->google_code = 'kn';
     1025
     1026                $ko = new GP_Locale();
     1027                $ko->english_name = 'Korean';
     1028                $ko->native_name = '한국어';
     1029                $ko->lang_code_iso_639_1 = 'ko';
     1030                $ko->lang_code_iso_639_2 = 'kor';
     1031                $ko->country_code = 'kr';
     1032                $ko->wp_locale = 'ko_KR';
     1033                $ko->slug = 'ko';
     1034                $ko->google_code = 'ko';
     1035                $ko->facebook_locale = 'ko_KR';
     1036                $ko->nplurals = 1;
     1037                $ko->plural_expression = '0';
     1038
     1039                $ks = new GP_Locale();
     1040                $ks->english_name = 'Kashmiri';
     1041                $ks->native_name = 'कश्मीरी';
     1042                $ks->lang_code_iso_639_1 = 'ks';
     1043                $ks->lang_code_iso_639_2 = 'kas';
     1044                $ks->country_code = '';
     1045                $ks->slug = 'ks';
     1046
     1047                $ku = new GP_Locale();
     1048                $ku->english_name = 'Kurdish (Kurmanji)';
     1049                $ku->native_name = 'Kurdî';
     1050                $ku->lang_code_iso_639_1 = 'ku';
     1051                $ku->lang_code_iso_639_2 = 'kur';
     1052                $ku->country_code = 'ku';
     1053                $ku->slug = 'ku';
     1054                $ku->google_code = 'ku';
     1055                $ku->facebook_locale = 'ku_TR';
     1056
     1057                $ky = new GP_Locale();
     1058                $ky->english_name = 'Kirghiz';
     1059                $ky->native_name = 'кыргыз тили';
     1060                $ky->lang_code_iso_639_1 = 'ky';
     1061                $ky->lang_code_iso_639_2 = 'kir';
     1062                $ky->country_code = 'kg';
     1063                $ky->wp_locale = 'ky_KY';
     1064                $ky->slug = 'ky';
     1065                $ky->nplurals = 1;
     1066                $ky->plural_expression = '0';
     1067
     1068                $la = new GP_Locale();
     1069                $la->english_name = 'Latin';
     1070                $la->native_name = 'latine';
     1071                $la->lang_code_iso_639_1 = 'la';
     1072                $la->lang_code_iso_639_2 = 'lat';
     1073                $la->country_code = '';
     1074                $la->slug = 'la';
     1075                $la->facebook_locale = 'la_VA';
     1076
     1077                $lb = new GP_Locale();
     1078                $lb->english_name = 'Luxembourgish';
     1079                $lb->native_name = 'Lëtzebuergesch';
     1080                $lb->lang_code_iso_639_1 = 'lb';
     1081                $lb->country_code = 'lu';
     1082                $lb->wp_locale = 'lb_LU';
     1083                $lb->slug = 'lb';
     1084
     1085                $li = new GP_Locale();
     1086                $li->english_name = 'Limburgish';
     1087                $li->native_name = 'Limburgs';
     1088                $li->lang_code_iso_639_1 = 'li';
     1089                $li->lang_code_iso_639_2 = 'lim';
     1090                $li->lang_code_iso_639_3 = 'lim';
     1091                $li->country_code = 'nl';
     1092                $li->wp_locale = 'li';
     1093                $li->slug = 'li';
     1094                $li->google_code = 'li';
     1095
     1096                $lo = new GP_Locale();
     1097                $lo->english_name = 'Lao';
     1098                $lo->native_name = 'ພາສາລາວ';
     1099                $lo->lang_code_iso_639_1 = 'lo';
     1100                $lo->lang_code_iso_639_2 = 'lao';
     1101                $lo->country_code = '';
     1102                $lo->wp_locale = 'lo';
     1103                $lo->slug = 'lo';
     1104                $lo->google_code = 'lo';
     1105                $lo->nplurals = 1;
     1106                $lo->plural_expression = '0';
     1107
     1108                $lt = new GP_Locale();
     1109                $lt->english_name = 'Lithuanian';
     1110                $lt->native_name = 'Lietuvių kalba';
     1111                $lt->lang_code_iso_639_1 = 'lt';
     1112                $lt->lang_code_iso_639_2 = 'lit';
     1113                $lt->country_code = 'lt';
     1114                $lt->wp_locale = 'lt_LT';
     1115                $lt->slug = 'lt';
     1116                $lt->google_code = 'lt';
     1117                $lt->facebook_locale = 'lt_LT';
     1118                $lt->nplurals = 3;
     1119                $lt->plural_expression = '(n%10==1 && n%100!=11 ? 0 : n%10>=2 && (n%100<10 || n%100>=20) ? 1 : 2)';
     1120
     1121                $lv = new GP_Locale();
     1122                $lv->english_name = 'Latvian';
     1123                $lv->native_name = 'latviešu valoda';
     1124                $lv->lang_code_iso_639_1 = 'lv';
     1125                $lv->lang_code_iso_639_2 = 'lav';
     1126                $lv->country_code = 'lv';
     1127                $lv->wp_locale = 'lv';
     1128                $lv->slug = 'lv';
     1129                $lv->google_code = 'lv';
     1130                $lv->facebook_locale = 'lv_LV';
     1131                $lv->nplurals = 3;
     1132                $lv->plural_expression = '(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2)';
     1133
     1134                $me = new GP_Locale();
     1135                $me->english_name = 'Montenegrin';
     1136                $me->native_name = 'Crnogorski jezik';
     1137                $me->lang_code_iso_639_1 = 'me';
     1138                $me->country_code = 'me';
     1139                $me->wp_locale = 'me_ME';
     1140                $me->google_code = 'srp';
     1141                $me->slug = 'me';
     1142                $me->nplurals = 3;
     1143                $me->plural_expression = '(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2)';
     1144
     1145                $mg = new GP_Locale();
     1146                $mg->english_name = 'Malagasy';
     1147                $mg->native_name = 'Malagasy';
     1148                $mg->lang_code_iso_639_1 = 'mg';
     1149                $mg->lang_code_iso_639_2 = 'mlg';
     1150                $mg->country_code = 'mg';
     1151                $mg->wp_locale = 'mg_MG';
     1152                $mg->slug = 'mg';
     1153
     1154                $mhr = new GP_Locale();
     1155                $mhr->english_name = 'Mari (Meadow)';
     1156                $mhr->native_name = 'олык марий';
     1157                $mhr->lang_code_iso_639_1 = null;
     1158                $mhr->lang_code_iso_639_2 = null;
     1159                $mhr->lang_code_iso_639_3 = 'mhr';
     1160                $mhr->country_code = 'ru';
     1161                $mhr->slug = 'mhr';
     1162                $mhr->google_code = 'chm';
     1163
     1164                $mk = new GP_Locale();
     1165                $mk->english_name = 'Macedonian';
     1166                $mk->native_name = 'македонски јазик';
     1167                $mk->lang_code_iso_639_1 = 'mk';
     1168                $mk->lang_code_iso_639_2 = 'mkd';
     1169                $mk->country_code = 'mk';
     1170                $mk->wp_locale = 'mk_MK';
     1171                $mk->slug = 'mk';
     1172                $mk->google_code = 'mk';
     1173                $mk->facebook_locale = 'mk_MK';
     1174                $mk->nplurals = 2;
     1175                $mk->plural_expression = 'n==1 || n%10==1 ? 0 : 1';
     1176
     1177                $ml = new GP_Locale();
     1178                $ml->english_name = 'Malayalam';
     1179                $ml->native_name = 'മലയാളം';
     1180                $ml->lang_code_iso_639_1 = 'ml';
     1181                $ml->lang_code_iso_639_2 = 'mal';
     1182                $ml->country_code = 'in';
     1183                $ml->wp_locale = 'ml_IN';
     1184                $ml->slug = 'ml';
     1185                $ml->google_code = 'ml';
     1186                $ml->facebook_locale = 'ml_IN';
     1187
     1188                $mn = new GP_Locale();
     1189                $mn->english_name = 'Mongolian';
     1190                $mn->native_name = 'Монгол';
     1191                $mn->lang_code_iso_639_1 = 'mn';
     1192                $mn->lang_code_iso_639_2 = 'mon';
     1193                $mn->country_code = 'mn';
     1194                $mn->slug = 'mn';
     1195                $mn->google_code = 'mn';
     1196
     1197                $mr = new GP_Locale();
     1198                $mr->english_name = 'Marathi';
     1199                $mr->native_name = 'मराठी';
     1200                $mr->lang_code_iso_639_1 = 'mr';
     1201                $mr->lang_code_iso_639_2 = 'mar';
     1202                $mr->country_code = '';
     1203                $mr->slug = 'mr';
     1204                $mr->google_code = 'mr';
     1205
     1206                $mri = new GP_Locale();
     1207                $mri->english_name = 'Maori';
     1208                $mri->native_name = 'Te Reo Māori';
     1209                $mri->lang_code_iso_639_1 = null;
     1210                $mri->lang_code_iso_639_2 = null;
     1211                $mri->lang_code_iso_639_3 = 'mri';
     1212                $mri->country_code = 'nz';
     1213                $mri->slug = 'mri';
     1214                $mri->nplurals = 2;
     1215                $mri->plural_expression = '(n > 1)';
     1216
     1217                $mrj = new GP_Locale();
     1218                $mrj->english_name = 'Mari (Hill)';
     1219                $mrj->native_name = 'кырык мары';
     1220                $mrj->lang_code_iso_639_1 = null;
     1221                $mrj->lang_code_iso_639_2 = null;
     1222                $mrj->lang_code_iso_639_3 = 'mrj';
     1223                $mrj->country_code = 'ru';
     1224                $mrj->slug = 'mrj';
     1225                $mrj->google_code = 'chm';
     1226
     1227                $ms = new GP_Locale();
     1228                $ms->english_name = 'Malay';
     1229                $ms->native_name = 'Bahasa Melayu';
     1230                $ms->lang_code_iso_639_1 = 'ms';
     1231                $ms->lang_code_iso_639_2 = 'msa';
     1232                $ms->country_code = '';
     1233                $ms->wp_locale = 'ms_MY';
     1234                $ms->slug = 'ms';
     1235                $ms->google_code = 'ms';
     1236                $ms->facebook_locale = 'ms_MY';
     1237                $ms->nplurals = 1;
     1238                $ms->plural_expression = '0';
     1239
     1240                $mwl = new GP_Locale();
     1241                $mwl->english_name = 'Mirandese';
     1242                $mwl->native_name = 'Mirandés';
     1243                $mwl->lang_code_iso_639_1 = null;
     1244                $mwl->lang_code_iso_639_2 = 'mwl';
     1245                $mwl->country_code = '';
     1246                $mwl->slug = 'mwl';
     1247
     1248                $my = new GP_Locale();
     1249                $my->english_name = 'Burmese';
     1250                $my->native_name = 'ဗမာစာ';
     1251                $my->lang_code_iso_639_1 = 'my';
     1252                $my->lang_code_iso_639_2 = 'mya';
     1253                $my->country_code = 'mm';
     1254                $my->wp_locale = 'my_MM';
     1255                $my->slug = 'mya';
     1256                $my->google_code = 'my';
     1257
     1258                $ne = new GP_Locale();
     1259                $ne->english_name = 'Nepali';
     1260                $ne->native_name = 'नेपाली';
     1261                $ne->lang_code_iso_639_1 = 'ne';
     1262                $ne->lang_code_iso_639_2 = 'nep';
     1263                $ne->country_code = 'np';
     1264                $ne->wp_locale = 'ne_NP';
     1265                $ne->slug = 'ne';
     1266                $ne->facebook_locale = 'ne_NP';
     1267
     1268                $nb = new GP_Locale();
     1269                $nb->english_name = 'Norwegian (Bokmål)';
     1270                $nb->native_name = 'Norsk bokmål';
     1271                $nb->lang_code_iso_639_1 = 'nb';
     1272                $nb->lang_code_iso_639_2 = 'nob';
     1273                $nb->country_code = 'no';
     1274                $nb->wp_locale = 'nb_NO';
     1275                $nb->slug = 'nb';
     1276                $nb->google_code = 'no';
     1277                $nb->facebook_locale = 'nb_NO';
     1278
     1279                $nl = new GP_Locale();
     1280                $nl->english_name = 'Dutch';
     1281                $nl->native_name = 'Nederlands';
     1282                $nl->lang_code_iso_639_1 = 'nl';
     1283                $nl->lang_code_iso_639_2 = 'nld';
     1284                $nl->country_code = 'nl';
     1285                $nl->wp_locale = 'nl_NL';
     1286                $nl->slug = 'nl';
     1287                $nl->google_code = 'nl';
     1288                $nl->facebook_locale = 'nl_NL';
     1289
     1290                $nl_be = new GP_Locale();
     1291                $nl_be->english_name = 'Dutch (Belgium)';
     1292                $nl_be->native_name = 'Nederlands (België)';
     1293                $nl_be->lang_code_iso_639_1 = 'nl';
     1294                $nl_be->lang_code_iso_639_2 = 'nld';
     1295                $nl_be->country_code = 'be';
     1296                $nl_be->wp_locale = 'nl_BE';
     1297                $nl_be->slug = 'nl-be';
     1298                $nl_be->google_code = 'nl';
     1299
     1300                $nn = new GP_Locale();
     1301                $nn->english_name = 'Norwegian (Nynorsk)';
     1302                $nn->native_name = 'Norsk nynorsk';
     1303                $nn->lang_code_iso_639_1 = 'nn';
     1304                $nn->lang_code_iso_639_2 = 'nno';
     1305                $nn->country_code = 'no';
     1306                $nn->wp_locale = 'nn_NO';
     1307                $nn->slug = 'nn';
     1308                $nn->facebook_locale = 'nn_NO';
     1309
     1310                $no = new GP_Locale();
     1311                $no->english_name = 'Norwegian';
     1312                $no->native_name = 'Norsk';
     1313                $no->lang_code_iso_639_1 = 'no';
     1314                $no->lang_code_iso_639_2 = 'nor';
     1315                $no->country_code = 'no';
     1316                $no->slug = 'no';
     1317                $no->google_code = 'no';
     1318
     1319                $oc = new GP_Locale();
     1320                $oc->english_name = 'Occitan';
     1321                $oc->native_name = 'Occitan';
     1322                $oc->lang_code_iso_639_1 = 'oc';
     1323                $oc->lang_code_iso_639_2 = 'oci';
     1324                $oc->country_code = '';
     1325                $oc->slug = 'oc';
     1326
     1327                $os = new GP_Locale();
     1328                $os->english_name = 'Ossetic';
     1329                $os->native_name = 'Ирон';
     1330                $os->lang_code_iso_639_1 = 'os';
     1331                $os->lang_code_iso_639_2 = 'oss';
     1332                $os->wp_locale = 'os';
     1333                $os->country_code = '';
     1334                $os->slug = 'os';
     1335
     1336                $pa = new GP_Locale();
     1337                $pa->english_name = 'Punjabi';
     1338                $pa->native_name = 'ਪੰਜਾਬੀ';
     1339                $pa->lang_code_iso_639_1 = 'pa';
     1340                $pa->lang_code_iso_639_2 = 'pan';
     1341                $pa->country_code = 'in';
     1342                $pa->wp_locale = 'pa_IN';
     1343                $pa->slug = 'pa';
     1344                $pa->facebook_locale = 'pa_IN';
     1345
     1346                $pl = new GP_Locale();
     1347                $pl->english_name = 'Polish';
     1348                $pl->native_name = 'Polski';
     1349                $pl->lang_code_iso_639_1 = 'pl';
     1350                $pl->lang_code_iso_639_2 = 'pol';
     1351                $pl->country_code = 'pl';
     1352                $pl->wp_locale = 'pl_PL';
     1353                $pl->slug = 'pl';
     1354                $pl->google_code = 'pl';
     1355                $pl->facebook_locale = 'pl_PL';
     1356                $pl->nplurals = 3;
     1357                $pl->plural_expression = '(n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2)';
     1358
     1359
     1360                $pt_br = new GP_Locale();
     1361                $pt_br->english_name = 'Portuguese (Brazil)';
     1362                $pt_br->native_name = 'Português do Brasil';
     1363                $pt_br->lang_code_iso_639_1 = 'pt';
     1364                $pt_br->lang_code_iso_639_2 = 'por';
     1365                $pt_br->country_code = 'br';
     1366                $pt_br->wp_locale = 'pt_BR';
     1367                $pt_br->slug = 'pt-br';
     1368                $pt_br->google_code = 'pt-PT';
     1369                $pt_br->facebook_locale = 'pt_BR';
     1370                $pt_br->nplurals = 2;
     1371                $pt_br->plural_expression = '(n > 1)';
     1372
     1373                $pt = new GP_Locale();
     1374                $pt->english_name = 'Portuguese (Portugal)';
     1375                $pt->native_name = 'Português';
     1376                $pt->lang_code_iso_639_1 = 'pt';
     1377                $pt->country_code = 'pt';
     1378                $pt->wp_locale = 'pt_PT';
     1379                $pt->slug = 'pt';
     1380                $pt->google_code = 'pt-PT';
     1381                $pt->facebook_locale = 'pt_PT';
     1382
     1383                $ps = new GP_Locale();
     1384                $ps->english_name = 'Pashto';
     1385                $ps->native_name = 'پښتو';
     1386                $ps->lang_code_iso_639_1 = 'ps';
     1387                $ps->country_code = '';
     1388                $ps->wp_locale = 'ps';
     1389                $ps->slug = 'ps';
     1390                $ps->google_code = 'ps';
     1391                $ps->facebook_locale = 'ps_AF';
     1392                $ps->rtl = true;
     1393
     1394                $ro = new GP_Locale();
     1395                $ro->english_name = 'Romanian';
     1396                $ro->native_name = 'Română';
     1397                $ro->lang_code_iso_639_1 = 'ro';
     1398                $ro->lang_code_iso_639_2 = 'ron';
     1399                $ro->country_code = 'ro';
     1400                $ro->wp_locale = 'ro_RO';
     1401                $ro->slug = 'ro';
     1402                $ro->google_code = 'ro';
     1403                $ro->facebook_locale = 'ro_RO';
     1404                $ro->nplurals = 3;
     1405                $ro->plural_expression = '(n==1 ? 0 : (n==0 || (n%100 > 0 && n%100 < 20)) ? 1 : 2)';
     1406
     1407                $ru = new GP_Locale();
     1408                $ru->english_name = 'Russian';
     1409                $ru->native_name = 'Русский';
     1410                $ru->lang_code_iso_639_1 = 'ru';
     1411                $ru->lang_code_iso_639_2 = 'rus';
     1412                $ru->country_code = 'ru';
     1413                $ru->wp_locale = 'ru_RU';
     1414                $ru->slug = 'ru';
     1415                $ru->google_code = 'ru';
     1416                $ru->facebook_locale = 'ru_RU';
     1417                $ru->nplurals = 3;
     1418                $ru->plural_expression = '(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2)';
     1419
     1420                $ru_ua = new GP_Locale();
     1421                $ru_ua->english_name = 'Russian (Ukraine)';
     1422                $ru_ua->native_name = 'украї́нська мо́ва';
     1423                $ru_ua->lang_code_iso_639_1 = 'ru';
     1424                $ru_ua->lang_code_iso_639_2 = 'rus';
     1425                $ru_ua->country_code = 'ua';
     1426                $ru_ua->wp_locale = 'ru_UA';
     1427                $ru_ua->slug = 'ru-ua';
     1428                $ru_ua->google_code = 'ru';
     1429                $ru_ua->nplurals = 3;
     1430                $ru_ua->plural_expression = '(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2)';
     1431
     1432                $rue = new GP_Locale();
     1433                $rue->english_name = 'Rusyn';
     1434                $rue->native_name = 'Русиньскый';
     1435                $rue->lang_code_iso_639_1 = null;
     1436                $rue->lang_code_iso_639_2 = null;
     1437                $rue->lang_code_iso_639_3 = 'rue';
     1438                $rue->country_code = null;
     1439                $rue->wp_locale = 'rue';
     1440                $rue->slug = 'rue';
     1441                $rue->nplurals = 3;
     1442                $rue->plural_expression = '(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2)';
     1443
     1444                $rup = new GP_Locale();
     1445                $rup->english_name = 'Aromanian';
     1446                $rup->native_name = 'Armãneashce';
     1447                $rup->lang_code_iso_639_1 = null;
     1448                $rup->lang_code_iso_639_2 = 'rup';
     1449                $rup->lang_code_iso_639_3 = 'rup';
     1450                $rup->country_code = 'mk';
     1451                $rup->wp_locale = 'rup_MK';
     1452                $rup->slug = 'rup';
     1453
     1454                $sah = new GP_Locale();
     1455                $sah->english_name = 'Sakha';
     1456                $sah->native_name = 'Sakha';
     1457                $sah->lang_code_iso_639_1 = null;
     1458                $sah->lang_code_iso_639_2 = 'sah';
     1459                $sah->lang_code_iso_639_3 = 'sah';
     1460                $sah->country_code = 'ru';
     1461                $sah->wp_locale = 'sah';
     1462                $sah->slug = 'sah';
     1463
     1464                $sa_in = new GP_Locale();
     1465                $sa_in->english_name = 'Sanskrit';
     1466                $sa_in->native_name = 'भारतम्';
     1467                $sa_in->lang_code_iso_639_1 = null;
     1468                $sa_in->lang_code_iso_639_2 = 'san';
     1469                $sa_in->lang_code_iso_639_3 = 'san';
     1470                $sa_in->country_code = 'in';
     1471                $sa_in->wp_locale = 'sa_IN';
     1472                $sa_in->slug = 'sa-in';
     1473
     1474                $sd = new GP_Locale();
     1475                $sd->english_name = 'Sindhi';
     1476                $sd->native_name = 'سندھ';
     1477                $sd->lang_code_iso_639_1 = 'sd';
     1478                $sd->lang_code_iso_639_2 = 'snd';
     1479                $sd->country_code = 'pk';
     1480                $sd->wp_locale = 'sd_PK';
     1481                $sd->slug = 'sd';
     1482                $sd->google_code = 'sd';
     1483
     1484                $si = new GP_Locale();
     1485                $si->english_name = 'Sinhala';
     1486                $si->native_name = 'සිංහල';
     1487                $si->lang_code_iso_639_1 = 'si';
     1488                $si->lang_code_iso_639_2 = 'sin';
     1489                $si->country_code = 'lk';
     1490                $si->wp_locale = 'si_LK';
     1491                $si->slug = 'si';
     1492                $si->google_code = 'si';
     1493
     1494                $sk = new GP_Locale();
     1495                $sk->english_name = 'Slovak';
     1496                $sk->native_name = 'Slovenčina';
     1497                $sk->lang_code_iso_639_1 = 'sk';
     1498                $sk->lang_code_iso_639_2 = 'slk';
     1499                $sk->country_code = 'sk';
     1500                $sk->slug = 'sk';
     1501                $sk->wp_locale = 'sk_SK';
     1502                $sk->google_code = 'sk';
     1503                $sk->facebook_locale = 'sk_SK';
     1504                $sk->nplurals = 3;
     1505                $sk->plural_expression = '(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2';
     1506
     1507                $sl = new GP_Locale();
     1508                $sl->english_name = 'Slovenian';
     1509                $sl->native_name = 'slovenščina';
     1510                $sl->lang_code_iso_639_1 = 'sl';
     1511                $sl->lang_code_iso_639_2 = 'slv';
     1512                $sl->country_code = 'si';
     1513                $sl->wp_locale = 'sl_SI';
     1514                $sl->slug = 'sl';
     1515                $sl->google_code = 'sl';
     1516                $sl->facebook_locale = 'sl_SI';
     1517                $sl->nplurals = 4;
     1518                $sl->plural_expression = '(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3)';
     1519
     1520                $so = new GP_Locale();
     1521                $so->english_name = 'Somali';
     1522                $so->native_name = 'Afsoomaali';
     1523                $so->lang_code_iso_639_1 = 'so';
     1524                $so->lang_code_iso_639_2 = 'som';
     1525                $so->lang_code_iso_639_3 = 'som';
     1526                $so->country_code = 'so';
     1527                $so->wp_locale = 'so_SO';
     1528                $so->slug = 'so';
     1529                $so->google_code = 'so';
     1530
     1531                $sq = new GP_Locale();
     1532                $sq->english_name = 'Albanian';
     1533                $sq->native_name = 'Shqip';
     1534                $sq->lang_code_iso_639_1 = 'sq';
     1535                $sq->lang_code_iso_639_2 = 'sqi';
     1536                $sq->wp_locale = 'sq';
     1537                $sq->country_code = 'al';
     1538                $sq->slug = 'sq';
     1539                $sq->google_code = 'sq';
     1540                $sq->facebook_locale = 'sq_AL';
     1541
     1542                $sr = new GP_Locale();
     1543                $sr->english_name = 'Serbian';
     1544                $sr->native_name = 'Српски језик';
     1545                $sr->lang_code_iso_639_1 = 'sr';
     1546                $sr->lang_code_iso_639_2 = 'srp';
     1547                $sr->country_code = 'rs';
     1548                $sr->wp_locale = 'sr_RS';
     1549                $sr->slug = 'sr';
     1550                $sr->google_code = 'sr';
     1551                $sr->facebook_locale = 'sr_RS';
     1552                $sr->nplurals = 3;
     1553                $sr->plural_expression = '(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2)';
     1554
     1555                $srd = new GP_Locale();
     1556                $srd->english_name = 'Sardinian';
     1557                $srd->native_name = 'sardu';
     1558                $srd->lang_code_iso_639_1 = 'sc';
     1559                $srd->lang_code_iso_639_2 = 'srd';
     1560                $srd->country_code = 'srd';
     1561                $srd->wp_locale = 'srd';
     1562                $srd->slug = 'srd';
     1563
     1564                $su = new GP_Locale();
     1565                $su->english_name = 'Sundanese';
     1566                $su->native_name = 'Basa Sunda';
     1567                $su->lang_code_iso_639_1 = 'su';
     1568                $su->lang_code_iso_639_2 = 'sun';
     1569                $su->country_code = 'id';
     1570                $su->wp_locale = 'su_ID';
     1571                $su->slug = 'su';
     1572                $su->nplurals = 1;
     1573                $su->plural_expression = '0';
     1574
     1575                $sv = new GP_Locale();
     1576                $sv->english_name = 'Swedish';
     1577                $sv->native_name = 'Svenska';
     1578                $sv->lang_code_iso_639_1 = 'sv';
     1579                $sv->lang_code_iso_639_2 = 'swe';
     1580                $sv->country_code = 'se';
     1581                $sv->wp_locale = 'sv_SE';
     1582                $sv->slug = 'sv';
     1583                $sv->google_code = 'sv';
     1584                $sv->facebook_locale = 'sv_SE';
     1585
     1586                $sw = new GP_Locale();
     1587                $sw->english_name = 'Swahili';
     1588                $sw->native_name = 'Kiswahili';
     1589                $sw->lang_code_iso_639_1 = 'sw';
     1590                $sw->lang_code_iso_639_2 = 'swa';
     1591                $sw->country_code = '';
     1592                $sw->wp_locale = 'sw';
     1593                $sw->slug = 'sw';
     1594                $sw->google_code = 'sw';
     1595                $sw->facebook_locale = 'sw_KE';
     1596
     1597                $ta = new GP_Locale();
     1598                $ta->english_name = 'Tamil';
     1599                $ta->native_name = 'தமிழ்';
     1600                $ta->lang_code_iso_639_1 = 'ta';
     1601                $ta->lang_code_iso_639_2 = 'tam';
     1602                $ta->country_code = 'IN';
     1603                $ta->wp_locale = 'ta_IN';
     1604                $ta->slug = 'ta';
     1605                $ta->google_code = 'ta';
     1606                $ta->facebook_locale = 'ta_IN';
     1607
     1608                $ta_lk = new GP_Locale();
     1609                $ta_lk->english_name = 'Tamil (Sri Lanka)';
     1610                $ta_lk->native_name = 'தமிழ்';
     1611                $ta_lk->lang_code_iso_639_1 = 'ta';
     1612                $ta_lk->lang_code_iso_639_2 = 'tam';
     1613                $ta_lk->country_code = 'LK';
     1614                $ta_lk->wp_locale = 'ta_LK';
     1615                $ta_lk->slug = 'ta-lk';
     1616                $ta_lk->google_code = 'ta';
     1617
     1618                $te = new GP_Locale();
     1619                $te->english_name = 'Telugu';
     1620                $te->native_name = 'తెలుగు';
     1621                $te->lang_code_iso_639_1 = 'te';
     1622                $te->lang_code_iso_639_2 = 'tel';
     1623                $te->country_code = '';
     1624                $te->wp_locale = 'te';
     1625                $te->slug = 'te';
     1626                $te->google_code = 'te';
     1627                $te->facebook_locale = 'te_IN';
     1628
     1629                $tg = new GP_Locale();
     1630                $tg->english_name = 'Tajik';
     1631                $tg->native_name = 'тоҷикӣ';
     1632                $tg->lang_code_iso_639_1 = 'tg';
     1633                $tg->lang_code_iso_639_2 = 'tgk';
     1634                $tg->country_code = '';
     1635                $tg->wp_locale = 'tg';
     1636                $tg->slug = 'tg';
     1637                $tg->google_code = 'tg';
     1638                $tg->nplurals = 2;
     1639                $tg->plural_expression = 'n != 1;';
     1640
     1641                $th = new GP_Locale();
     1642                $th->english_name = 'Thai';
     1643                $th->native_name = 'ไทย';
     1644                $th->lang_code_iso_639_1 = 'th';
     1645                $th->lang_code_iso_639_2 = 'tha';
     1646                $th->country_code = '';
     1647                $th->wp_locale = 'th';
     1648                $th->slug = 'th';
     1649                $th->google_code = 'th';
     1650                $th->facebook_locale = 'th_TH';
     1651                $th->nplurals = 1;
     1652                $th->plural_expression = '0';
     1653
     1654                $tlh = new GP_Locale();
     1655                $tlh->english_name = 'Klingon';
     1656                $tlh->native_name = 'TlhIngan';
     1657                $tlh->lang_code_iso_639_1 = '';
     1658                $tlh->lang_code_iso_639_2 = 'tlh';
     1659                $tlh->country_code = '';
     1660                $tlh->slug = 'tlh';
     1661                $tlh->nplurals = 1;
     1662                $tlh->plural_expression = '0';
     1663
     1664                $tl = new GP_Locale();
     1665                $tl->english_name = 'Tagalog';
     1666                $tl->native_name = 'Tagalog';
     1667                $tl->lang_code_iso_639_1 = 'tl';
     1668                $tl->lang_code_iso_639_2 = 'tgl';
     1669                $tl->country_code = 'ph';
     1670                $tl->wp_locale = 'tl';
     1671                $tl->slug = 'tl';
     1672                $tl->google_code = 'tl';
     1673                $tl->facebook_locale = 'tl_PH';
     1674
     1675                $tr = new GP_Locale();
     1676                $tr->english_name = 'Turkish';
     1677                $tr->native_name = 'Türkçe';
     1678                $tr->lang_code_iso_639_1 = 'tr';
     1679                $tr->lang_code_iso_639_2 = 'tur';
     1680                $tr->country_code = 'tr';
     1681                $tr->wp_locale = 'tr_TR';
     1682                $tr->slug = 'tr';
     1683                $tr->google_code = 'tr';
     1684                $tr->facebook_locale = 'tr_TR';
     1685                $tr->nplurals = 2;
     1686                $tr->plural_expression = '(n > 1)';
     1687
     1688                $tt_ru = new GP_Locale();
     1689                $tt_ru->english_name = 'Tatar';
     1690                $tt_ru->native_name = 'Татар теле';
     1691                $tt_ru->lang_code_iso_639_1 = 'tt';
     1692                $tt_ru->lang_code_iso_639_2 = 'tat';
     1693                $tt_ru->country_code = 'tt';
     1694                $tt_ru->wp_locale = 'tt_RU';
     1695                $tt_ru->slug = 'tt';
     1696                $tt_ru->google_code = 'tt';
     1697                $tt_ru->nplurals = 3;
     1698                $tt_ru->plural_expression = '(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2)';
     1699
     1700                $tuk = new GP_Locale();
     1701                $tuk->english_name = 'Turkmen';
     1702                $tuk->native_name = 'Türkmençe';
     1703                $tuk->lang_code_iso_639_1 = 'tk';
     1704                $tuk->lang_code_iso_639_2 = 'tuk';
     1705                $tuk->country_code = 'tm';
     1706                $tuk->wp_locale = 'tuk';
     1707                $tuk->slug = 'tuk';
     1708                $tuk->nplurals = 2;
     1709                $tuk->plural_expression = '(n > 1)';
     1710
     1711                $tzm = new GP_Locale();
     1712                $tzm->english_name = 'Tamazight (Central Atlas)';
     1713                $tzm->native_name = 'ⵜⴰⵎⴰⵣⵉⵖⵜ';
     1714                $tzm->lang_code_iso_639_1 = null;
     1715                $tzm->lang_code_iso_639_2 = 'tzm';
     1716                $tzm->country_code = 'ma';
     1717                $tzm->wp_locale = 'tzm';
     1718                $tzm->slug = 'tzm';
     1719                $tzm->nplurals = 2;
     1720                $tzm->plural_expression = '(n > 1)';
     1721               
     1722                $udm = new GP_Locale();
     1723                $udm->english_name = 'Udmurt';
     1724                $udm->native_name = 'удмурт кыл';
     1725                $udm->lang_code_iso_639_1 = null;
     1726                $udm->lang_code_iso_639_2 = 'udm';
     1727                $udm->country_code = '';
     1728                $udm->slug = 'udm';
     1729
     1730                $ug = new GP_Locale();
     1731                $ug->english_name = 'Uighur';
     1732                $ug->native_name = 'Uyƣurqə';
     1733                $ug->lang_code_iso_639_1 = 'ug';
     1734                $ug->lang_code_iso_639_2 = 'uig';
     1735                $ug->country_code = 'cn';
     1736                $ug->wp_locale = 'ug_CN';
     1737                $ug->slug = 'ug';
     1738                $ug->google_code = 'ug';
     1739
     1740                $uk = new GP_Locale();
     1741                $uk->english_name = 'Ukrainian';
     1742                $uk->native_name = 'Українська';
     1743                $uk->lang_code_iso_639_1 = 'uk';
     1744                $uk->lang_code_iso_639_2 = 'ukr';
     1745                $uk->country_code = 'ua';
     1746                $uk->wp_locale = 'uk';
     1747                $uk->slug = 'uk';
     1748                $uk->google_code = 'uk';
     1749                $uk->facebook_locale = 'uk_UA';
     1750                $uk->nplurals = 3;
     1751                $uk->plural_expression = '(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2)';
     1752
     1753                $ur = new GP_Locale();
     1754                $ur->english_name = 'Urdu';
     1755                $ur->native_name = 'اردو';
     1756                $ur->lang_code_iso_639_1 = 'ur';
     1757                $ur->lang_code_iso_639_2 = 'urd';
     1758                $ur->country_code = '';
     1759                $ur->wp_locale = 'ur';
     1760                $ur->slug = 'ur';
     1761                $ur->google_code = 'ur';
     1762
     1763                $uz = new GP_Locale();
     1764                $uz->english_name = 'Uzbek';
     1765                $uz->native_name = 'O‘zbekcha';
     1766                $uz->lang_code_iso_639_1 = 'uz';
     1767                $uz->lang_code_iso_639_2 = 'uzb';
     1768                $uz->country_code = 'uz';
     1769                $uz->wp_locale = 'uz_UZ';
     1770                $uz->slug = 'uz';
     1771                $uz->google_code = 'uz';
     1772                $uz->nplurals = 1;
     1773                $uz->plural_expression = '0';
     1774
     1775                $vec = new GP_Locale();
     1776                $vec->english_name = 'Venetian';
     1777                $vec->native_name = 'vèneta';
     1778                $vec->lang_code_iso_639_1 = null;
     1779                $vec->lang_code_iso_639_2 = 'roa';
     1780                $vec->country_code = 'uz';
     1781                $vec->slug = 'vec';
     1782
     1783                $vi = new GP_Locale();
     1784                $vi->english_name = 'Vietnamese';
     1785                $vi->native_name = 'Tiếng Việt';
     1786                $vi->lang_code_iso_639_1 = 'vi';
     1787                $vi->lang_code_iso_639_2 = 'vie';
     1788                $vi->country_code = 'vn';
     1789                $vi->wp_locale = 'vi';
     1790                $vi->slug = 'vi';
     1791                $vi->google_code = 'vi';
     1792                $vi->facebook_locale = 'vi_VN';
     1793                $vi->nplurals = 1;
     1794                $vi->plural_expression = '0';
     1795
     1796                $wa = new GP_Locale();
     1797                $wa->english_name = 'Walloon';
     1798                $wa->native_name = 'Walon';
     1799                $wa->lang_code_iso_639_1 = 'wa';
     1800                $wa->lang_code_iso_639_2 = 'wln';
     1801                $wa->country_code = 'be';
     1802                $wa->wp_locale = 'wa';
     1803                $wa->slug = 'wa';
     1804
     1805                $xmf = new GP_Locale();
     1806                $xmf->english_name = 'Mingrelian';
     1807                $xmf->native_name = 'მარგალური ნინა';
     1808                $xmf->lang_code_iso_639_1 = null;
     1809                $xmf->lang_code_iso_639_2 = null;
     1810                $xmf->lang_code_iso_639_3 = 'xmf';
     1811                $xmf->country_code = 'ge';
     1812                $xmf->wp_locale = 'xmf';
     1813                $xmf->slug = 'xmf';
     1814
     1815                $yi = new GP_Locale();
     1816                $yi->english_name = 'Yiddish';
     1817                $yi->native_name = 'ייִדיש';
     1818                $yi->lang_code_iso_639_1 = 'yi';
     1819                $yi->lang_code_iso_639_2 = 'yid';
     1820                $yi->country_code = '';
     1821                $yi->slug = 'yi';
     1822                $yi->google_code = 'yi';
     1823                $yi->rtl = true;
     1824
     1825                $yo = new GP_Locale();
     1826                $yo->english_name = 'Yorùbá';
     1827                $yo->native_name = 'èdè Yorùbá';
     1828                $yo->lang_code_iso_639_1 = 'yo';
     1829                $yo->lang_code_iso_639_2 = 'yor';
     1830                $yo->country_code = '';
     1831                $yo->slug = 'yo';
     1832
     1833                $zh_cn = new GP_Locale();
     1834                $zh_cn->english_name = 'Chinese (China)';
     1835                $zh_cn->native_name = '中文';
     1836                $zh_cn->lang_code_iso_639_1 = 'zh';
     1837                $zh_cn->lang_code_iso_639_2 = 'zho';
     1838                $zh_cn->country_code = 'cn';
     1839                $zh_cn->wp_locale = 'zh_CN';
     1840                $zh_cn->slug = 'zh-cn';
     1841                $zh_cn->google_code = 'zh-CN';
     1842                $zh_cn->facebook_locale = 'zh_CN';
     1843                $zh_cn->nplurals = 1;
     1844                $zh_cn->plural_expression = '0';
     1845
     1846                $zh_hk = new GP_Locale();
     1847                $zh_hk->english_name = 'Chinese (Hong Kong)';
     1848                $zh_hk->native_name = '香港中文版    ';
     1849                $zh_hk->lang_code_iso_639_1 = 'zh';
     1850                $zh_hk->lang_code_iso_639_2 = 'zho';
     1851                $zh_hk->country_code = 'hk';
     1852                $zh_hk->wp_locale = 'zh_HK';
     1853                $zh_hk->slug = 'zh-hk';
     1854                $zh_hk->facebook_locale = 'zh_HK';
     1855                $zh_hk->nplurals = 1;
     1856                $zh_hk->plural_expression = '0';
     1857
     1858                $zh_sg = new GP_Locale();
     1859                $zh_sg->english_name = 'Chinese (Singapore)';
     1860                $zh_sg->native_name = '中文';
     1861                $zh_sg->lang_code_iso_639_1 = 'zh';
     1862                $zh_sg->lang_code_iso_639_2 = 'zho';
     1863                $zh_sg->country_code = 'sg';
     1864                $zh_sg->slug = 'zh-sg';
     1865                $zh_sg->nplurals = 1;
     1866                $zh_sg->plural_expression = '0';
     1867
     1868                $zh_tw = new GP_Locale();
     1869                $zh_tw->english_name = 'Chinese (Taiwan)';
     1870                $zh_tw->native_name = '中文';
     1871                $zh_tw->lang_code_iso_639_1 = 'zh';
     1872                $zh_tw->lang_code_iso_639_2 = 'zho';
     1873                $zh_tw->country_code = 'tw';
     1874                $zh_tw->slug = 'zh-tw';
     1875                $zh_tw->wp_locale= 'zh_TW';
     1876                $zh_tw->google_code = 'zh-TW';
     1877                $zh_tw->facebook_locale = 'zh_TW';
     1878                $zh_tw->nplurals = 1;
     1879                $zh_tw->plural_expression = '0';
     1880
     1881                $zh = new GP_Locale();
     1882                $zh->english_name = 'Chinese';
     1883                $zh->native_name = '中文';
     1884                $zh->lang_code_iso_639_1 = 'zh';
     1885                $zh->lang_code_iso_639_2 = 'zho';
     1886                $zh->country_code = '';
     1887                $zh->slug = 'zh';
     1888                $zh->nplurals = 1;
     1889                $zh->plural_expression = '0';
     1890
     1891                foreach( get_defined_vars() as $locale ) {
     1892                        $this->locales[ $locale->slug ] = $locale;
     1893                }
     1894        }
     1895
     1896        public static function &instance() {
     1897                if ( ! isset( $GLOBALS['gp_locales'] ) )
     1898                        $GLOBALS['gp_locales'] = new GP_Locales;
     1899
     1900                return $GLOBALS['gp_locales'];
     1901        }
     1902
     1903        public static function locales() {
     1904                $instance = GP_Locales::instance();
     1905                return $instance->locales;
     1906        }
     1907
     1908        public static function exists( $slug ) {
     1909                $instance = GP_Locales::instance();
     1910                return isset( $instance->locales[ $slug ] );
     1911        }
     1912
     1913        public static function by_slug( $slug ) {
     1914                $instance = GP_Locales::instance();
     1915                return isset( $instance->locales[ $slug ] )? $instance->locales[ $slug ] : null;
     1916        }
     1917
     1918        public static function by_field( $field_name, $field_value ) {
     1919                $instance = GP_Locales::instance();
     1920                $result   = false;
     1921
     1922                foreach( $instance->locales() as $locale ) {
     1923                        if ( isset( $locale->$field_name ) && $locale->$field_name == $field_value ) {
     1924                                $result = $locale;
     1925                                break;
     1926                        }
     1927                }
     1928
     1929                return $result;
     1930        }
     1931}
  • src/wp-admin/includes/ms.php

     
    480480        return $id;
    481481}
    482482
    483 function format_code_lang( $code = '' ) {
    484         $code = strtolower( substr( $code, 0, 2 ) );
    485         $lang_codes = array(
    486                 'aa' => 'Afar', 'ab' => 'Abkhazian', 'af' => 'Afrikaans', 'ak' => 'Akan', 'sq' => 'Albanian', 'am' => 'Amharic', 'ar' => 'Arabic', 'an' => 'Aragonese', 'hy' => 'Armenian', 'as' => 'Assamese', 'av' => 'Avaric', 'ae' => 'Avestan', 'ay' => 'Aymara', 'az' => 'Azerbaijani', 'ba' => 'Bashkir', 'bm' => 'Bambara', 'eu' => 'Basque', 'be' => 'Belarusian', 'bn' => 'Bengali',
    487                 'bh' => 'Bihari', 'bi' => 'Bislama', 'bs' => 'Bosnian', 'br' => 'Breton', 'bg' => 'Bulgarian', 'my' => 'Burmese', 'ca' => 'Catalan; Valencian', 'ch' => 'Chamorro', 'ce' => 'Chechen', 'zh' => 'Chinese', 'cu' => 'Church Slavic; Old Slavonic; Church Slavonic; Old Bulgarian; Old Church Slavonic', 'cv' => 'Chuvash', 'kw' => 'Cornish', 'co' => 'Corsican', 'cr' => 'Cree',
    488                 'cs' => 'Czech', 'da' => 'Danish', 'dv' => 'Divehi; Dhivehi; Maldivian', 'nl' => 'Dutch; Flemish', 'dz' => 'Dzongkha', 'en' => 'English', 'eo' => 'Esperanto', 'et' => 'Estonian', 'ee' => 'Ewe', 'fo' => 'Faroese', 'fj' => 'Fijjian', 'fi' => 'Finnish', 'fr' => 'French', 'fy' => 'Western Frisian', 'ff' => 'Fulah', 'ka' => 'Georgian', 'de' => 'German', 'gd' => 'Gaelic; Scottish Gaelic',
    489                 'ga' => 'Irish', 'gl' => 'Galician', 'gv' => 'Manx', 'el' => 'Greek, Modern', 'gn' => 'Guarani', 'gu' => 'Gujarati', 'ht' => 'Haitian; Haitian Creole', 'ha' => 'Hausa', 'he' => 'Hebrew', 'hz' => 'Herero', 'hi' => 'Hindi', 'ho' => 'Hiri Motu', 'hu' => 'Hungarian', 'ig' => 'Igbo', 'is' => 'Icelandic', 'io' => 'Ido', 'ii' => 'Sichuan Yi', 'iu' => 'Inuktitut', 'ie' => 'Interlingue',
    490                 'ia' => 'Interlingua (International Auxiliary Language Association)', 'id' => 'Indonesian', 'ik' => 'Inupiaq', 'it' => 'Italian', 'jv' => 'Javanese', 'ja' => 'Japanese', 'kl' => 'Kalaallisut; Greenlandic', 'kn' => 'Kannada', 'ks' => 'Kashmiri', 'kr' => 'Kanuri', 'kk' => 'Kazakh', 'km' => 'Central Khmer', 'ki' => 'Kikuyu; Gikuyu', 'rw' => 'Kinyarwanda', 'ky' => 'Kirghiz; Kyrgyz',
    491                 'kv' => 'Komi', 'kg' => 'Kongo', 'ko' => 'Korean', 'kj' => 'Kuanyama; Kwanyama', 'ku' => 'Kurdish', 'lo' => 'Lao', 'la' => 'Latin', 'lv' => 'Latvian', 'li' => 'Limburgan; Limburger; Limburgish', 'ln' => 'Lingala', 'lt' => 'Lithuanian', 'lb' => 'Luxembourgish; Letzeburgesch', 'lu' => 'Luba-Katanga', 'lg' => 'Ganda', 'mk' => 'Macedonian', 'mh' => 'Marshallese', 'ml' => 'Malayalam',
    492                 'mi' => 'Maori', 'mr' => 'Marathi', 'ms' => 'Malay', 'mg' => 'Malagasy', 'mt' => 'Maltese', 'mo' => 'Moldavian', 'mn' => 'Mongolian', 'na' => 'Nauru', 'nv' => 'Navajo; Navaho', 'nr' => 'Ndebele, South; South Ndebele', 'nd' => 'Ndebele, North; North Ndebele', 'ng' => 'Ndonga', 'ne' => 'Nepali', 'nn' => 'Norwegian Nynorsk; Nynorsk, Norwegian', 'nb' => 'Bokmål, Norwegian, Norwegian Bokmål',
    493                 'no' => 'Norwegian', 'ny' => 'Chichewa; Chewa; Nyanja', 'oc' => 'Occitan, Provençal', 'oj' => 'Ojibwa', 'or' => 'Oriya', 'om' => 'Oromo', 'os' => 'Ossetian; Ossetic', 'pa' => 'Panjabi; Punjabi', 'fa' => 'Persian', 'pi' => 'Pali', 'pl' => 'Polish', 'pt' => 'Portuguese', 'ps' => 'Pushto', 'qu' => 'Quechua', 'rm' => 'Romansh', 'ro' => 'Romanian', 'rn' => 'Rundi', 'ru' => 'Russian',
    494                 'sg' => 'Sango', 'sa' => 'Sanskrit', 'sr' => 'Serbian', 'hr' => 'Croatian', 'si' => 'Sinhala; Sinhalese', 'sk' => 'Slovak', 'sl' => 'Slovenian', 'se' => 'Northern Sami', 'sm' => 'Samoan', 'sn' => 'Shona', 'sd' => 'Sindhi', 'so' => 'Somali', 'st' => 'Sotho, Southern', 'es' => 'Spanish; Castilian', 'sc' => 'Sardinian', 'ss' => 'Swati', 'su' => 'Sundanese', 'sw' => 'Swahili',
    495                 'sv' => 'Swedish', 'ty' => 'Tahitian', 'ta' => 'Tamil', 'tt' => 'Tatar', 'te' => 'Telugu', 'tg' => 'Tajik', 'tl' => 'Tagalog', 'th' => 'Thai', 'bo' => 'Tibetan', 'ti' => 'Tigrinya', 'to' => 'Tonga (Tonga Islands)', 'tn' => 'Tswana', 'ts' => 'Tsonga', 'tk' => 'Turkmen', 'tr' => 'Turkish', 'tw' => 'Twi', 'ug' => 'Uighur; Uyghur', 'uk' => 'Ukrainian', 'ur' => 'Urdu', 'uz' => 'Uzbek',
    496                 've' => 'Venda', 'vi' => 'Vietnamese', 'vo' => 'Volapük', 'cy' => 'Welsh','wa' => 'Walloon','wo' => 'Wolof', 'xh' => 'Xhosa', 'yi' => 'Yiddish', 'yo' => 'Yoruba', 'za' => 'Zhuang; Chuang', 'zu' => 'Zulu' );
     483function format_code_lang( $code = '', $lang_codes = array() ) {
     484        if ( empty ( $lang_codes ) ) {
     485                $lang_codes = get_locale_names();
     486        }
    497487
     488        $short_code = strtolower( substr( $code, 0, 2 ) );      // only exists for backwards-compatibility, see #15677
     489       
    498490        /**
    499491         * Filter the language codes.
    500492         *
    501493         * @since MU
    502494         *
    503          * @param array  $lang_codes Key/value pair of language codes where key is the short version.
    504          * @param string $code       A two-letter designation of the language.
     495         * @param array $lang_codes Key/value pair of language codes where key is the short version.
     496         * @param string $code A two-letter designation of the language.
    505497         */
    506         $lang_codes = apply_filters( 'lang_codes', $lang_codes, $code );
    507         return strtr( $code, $lang_codes );
     498        $lang_codes = apply_filters( 'lang_codes', $lang_codes, $short_code, $code );   // only exists for backwards-compatibility, use 'locale_names' instead. see #15677
     499       
     500        return $lang_codes[ $code ];
    508501}
    509502
    510503function sync_category_tag_slugs( $term, $taxonomy ) {
     
    566559function mu_dropdown_languages( $lang_files = array(), $current = '' ) {
    567560        $flag = false;
    568561        $output = array();
     562        $locale_names = get_locale_names();
    569563
    570564        foreach ( (array) $lang_files as $val ) {
    571565                $code_lang = basename( $val, '.mo' );
     
    579573                        $be = __( 'British English' );
    580574                        $output[$be] = '<option value="' . esc_attr( $code_lang ) . '"' . selected( $current, $code_lang, false ) . '> ' . $be . '</option>';
    581575                } else {
    582                         $translated = format_code_lang( $code_lang );
     576                        $translated = format_code_lang( $code_lang, $locale_names );
    583577                        $output[$translated] = '<option value="' . esc_attr( $code_lang ) . '"' . selected( $current, $code_lang, false ) . '> ' . esc_html ( $translated ) . '</option>';
    584578                }
    585579
     
    603597        echo implode( "\n\t", $output );
    604598}
    605599
     600/**
     601 * Build an array of locale names, indexed by their corresponding WordPress locale code
     602 * @return array The array of local codes and names
     603 */
     604function get_locale_names() {
     605        require_once( dirname( __FILE__ ) . '/locales.php' );
     606        $locales = GP_Locales::instance();
     607        $locale_names = array();
     608       
     609        foreach( $locales->locales as $locale ) {
     610                if ( isset( $locale->wp_locale ) && isset( $locale->english_name ) ) {
     611                        $locale_names[ $locale->wp_locale ] = $locale->english_name;
     612                }
     613        }
     614
     615        /**
     616         * Filter the locale names
     617         *
     618         * @since 3.8
     619         *
     620         * @param array $locale_names Key/value pair of locale names, indexed by their corresponding WordPress locale code.
     621         */
     622        return apply_filters( 'locale_names', $locale_names );
     623}
     624
    606625function site_admin_notice() {
    607626        global $wp_db_version;
    608627        if ( !is_super_admin() )