From 592e2235af3ab09172423b6356722db7911d16b5 Mon Sep 17 00:00:00 2001 From: florenttorregrosa Date: Mon, 6 Feb 2017 15:45:00 +0100 Subject: [PATCH] Issue #1279550 by ergonlogic, Steven Jones, Grimreaper: D8 multi-language update during installation --- package/hosting_package.languages.inc | 112 ++++++++++++++++++++++++++++++++++ package/hosting_package.module | 16 +++++ 2 files changed, 128 insertions(+) create mode 100644 package/hosting_package.languages.inc diff --git a/package/hosting_package.languages.inc b/package/hosting_package.languages.inc new file mode 100644 index 0000000..0bc2f67 --- /dev/null +++ b/package/hosting_package.languages.inc @@ -0,0 +1,112 @@ + array('Afrikaans', 'Afrikaans'), + 'am' => array('Amharic', 'አማርኛ'), + 'ar' => array('Arabic', /* Left-to-right marker "‭" */ 'العربية', 'rtl'), + 'ast' => array('Asturian', 'Asturianu'), + 'az' => array('Azerbaijani', 'Azərbaycanca'), + 'be' => array('Belarusian', 'Беларуская'), + 'bg' => array('Bulgarian', 'Български'), + 'bn' => array('Bengali', 'বাংলা'), + 'bo' => array('Tibetan', 'བོད་སྐད་'), + 'bs' => array('Bosnian', 'Bosanski'), + 'ca' => array('Catalan', 'Català'), + 'cs' => array('Czech', 'Čeština'), + 'cy' => array('Welsh', 'Cymraeg'), + 'da' => array('Danish', 'Dansk'), + 'de' => array('German', 'Deutsch'), + 'dz' => array('Dzongkha', 'རྫོང་ཁ'), + 'el' => array('Greek', 'Ελληνικά'), + 'en' => array('English', 'English'), + 'en-x-simple' => array('Simple English', 'Simple English'), + 'eo' => array('Esperanto', 'Esperanto'), + 'es' => array('Spanish', 'Español'), + 'et' => array('Estonian', 'Eesti'), + 'eu' => array('Basque', 'Euskera'), + 'fa' => array('Persian, Farsi', /* Left-to-right marker "‭" */ 'فارسی', 'rtl'), + 'fi' => array('Finnish', 'Suomi'), + 'fil' => array('Filipino', 'Filipino'), + 'fo' => array('Faeroese', 'Føroyskt'), + 'fr' => array('French', 'Français'), + 'fy' => array('Frisian, Western', 'Frysk'), + 'ga' => array('Irish', 'Gaeilge'), + 'gd' => array('Scots Gaelic', 'Gàidhlig'), + 'gl' => array('Galician', 'Galego'), + 'gsw-berne' => array('Swiss German', 'Schwyzerdütsch'), + 'gu' => array('Gujarati', 'ગુજરાતી'), + 'he' => array('Hebrew', /* Left-to-right marker "‭" */ 'עברית', 'rtl'), + 'hi' => array('Hindi', 'हिन्दी'), + 'hr' => array('Croatian', 'Hrvatski'), + 'ht' => array('Haitian Creole', 'Kreyòl ayisyen'), + 'hu' => array('Hungarian', 'Magyar'), + 'hy' => array('Armenian', 'Հայերեն'), + 'id' => array('Indonesian', 'Bahasa Indonesia'), + 'is' => array('Icelandic', 'Íslenska'), + 'it' => array('Italian', 'Italiano'), + 'ja' => array('Japanese', '日本語'), + 'jv' => array('Javanese', 'Basa Java'), + 'ka' => array('Georgian', 'ქართული ენა'), + 'kk' => array('Kazakh', 'Қазақ'), + 'km' => array('Khmer', 'ភាសាខ្មែរ'), + 'kn' => array('Kannada', 'ಕನ್ನಡ'), + 'ko' => array('Korean', '한국어'), + 'ku' => array('Kurdish', 'Kurdî'), + 'ky' => array('Kyrgyz', 'Кыргызча'), + 'lo' => array('Lao', 'ພາສາລາວ'), + 'lt' => array('Lithuanian', 'Lietuvių'), + 'lv' => array('Latvian', 'Latviešu'), + 'mg' => array('Malagasy', 'Malagasy'), + 'mk' => array('Macedonian', 'Македонски'), + 'ml' => array('Malayalam', 'മലയാളം'), + 'mn' => array('Mongolian', 'монгол'), + 'mr' => array('Marathi', 'मराठी'), + 'ms' => array('Bahasa Malaysia', 'بهاس ملايو'), + 'my' => array('Burmese', 'ဗမာစကား'), + 'ne' => array('Nepali', 'नेपाली'), + 'nl' => array('Dutch', 'Nederlands'), + 'nb' => array('Norwegian Bokmål', 'Norsk, bokmål'), + 'nn' => array('Norwegian Nynorsk', 'Norsk, nynorsk'), + 'oc' => array('Occitan', 'Occitan'), + 'pa' => array('Punjabi', 'ਪੰਜਾਬੀ'), + 'pl' => array('Polish', 'Polski'), + 'pt-pt' => array('Portuguese, Portugal', 'Português, Portugal'), + 'pt-br' => array('Portuguese, Brazil', 'Português, Brasil'), + 'ro' => array('Romanian', 'Română'), + 'ru' => array('Russian', 'Русский'), + 'sco' => array('Scots', 'Scots'), + 'se' => array('Northern Sami', 'Sámi'), + 'si' => array('Sinhala', 'සිංහල'), + 'sk' => array('Slovak', 'Slovenčina'), + 'sl' => array('Slovenian', 'Slovenščina'), + 'sq' => array('Albanian', 'Shqip'), + 'sr' => array('Serbian', 'Српски'), + 'sv' => array('Swedish', 'Svenska'), + 'sw' => array('Swahili', 'Kiswahili'), + 'ta' => array('Tamil', 'தமிழ்'), + 'ta-lk' => array('Tamil, Sri Lanka', 'தமிழ், இலங்கை'), + 'te' => array('Telugu', 'తెలుగు'), + 'th' => array('Thai', 'ภาษาไทย'), + 'tr' => array('Turkish', 'Türkçe'), + 'tyv' => array('Tuvan', 'Тыва дыл'), + 'ug' => array('Uyghur', 'Уйғур'), + 'uk' => array('Ukrainian', 'Українська'), + 'ur' => array('Urdu', /* Left-to-right marker "‭" */ 'اردو', 'rtl'), + 'vi' => array('Vietnamese', 'Tiếng Việt'), + 'xx-lolspeak' => array('Lolspeak', 'Lolspeak'), + 'zh-hans' => array('Chinese, Simplified', '简体中文'), + 'zh-hant' => array('Chinese, Traditional', '繁體中文'), + ); +} diff --git a/package/hosting_package.module b/package/hosting_package.module index 15b1a1b..b1384c1 100644 --- a/package/hosting_package.module +++ b/package/hosting_package.module @@ -168,6 +168,22 @@ function hosting_get_profile_platforms($profile, $check_old_short_name = FALSE) * @todo document this function */ function hosting_get_profile_languages($profile = NULL, $platform = NULL) { + // D8 and above. + if ($platform) { + $platform_node = node_load($platform); + $core_major_version = $platform_node->release->version[0]; + if ($core_major_version >= 8) { + // Inspired from Drupal 8 code in + // core/lib/Drupal/Core/Installer/Form/SelectLanguageForm.php. + require_once 'hosting_package.languages.inc'; + $languages = array(); + foreach (hosting_package_get_standard_language_list() as $langcode => $language_names) { + $languages[$langcode] = $language_names[0] . ' (' . $language_names[1] . ')'; + } + return $languages; + } + } + $languages['en'] = _hosting_language_name('en'); if ($profile && $platform) { $instance = hosting_package_instance_load(array( -- 1.9.1