Commit da131e29 authored by Dries's avatar Dries

- Patch #1231402 by Gábor Hojtsy: Drupal does not use ISO language codes, iso.inc is misleading.

parent 9864e17b
......@@ -1234,8 +1234,8 @@ function install_select_locale(&$install_state) {
* Form API array definition for language selection.
*/
function install_select_locale_form($form, &$form_state, $locales, $profilename) {
include_once DRUPAL_ROOT . '/includes/iso.inc';
$languages = _locale_get_predefined_list();
include_once DRUPAL_ROOT . '/includes/standard.inc';
$languages = standard_language_list();
foreach ($locales as $locale) {
$name = $locale->langcode;
if (isset($languages[$name])) {
......@@ -1376,8 +1376,8 @@ function install_import_locales(&$install_state) {
include_once drupal_get_path('module', 'locale') . '/locale.bulk.inc';
$install_locale = $install_state['parameters']['locale'];
include_once DRUPAL_ROOT . '/includes/iso.inc';
$predefined = _locale_get_predefined_list();
include_once DRUPAL_ROOT . '/includes/standard.inc';
$predefined = standard_language_list();
if (!isset($predefined[$install_locale])) {
// Drupal does not know about this language, so we prefill its values with
// our best guess. The user will be able to edit afterwards.
......
This diff is collapsed.
......@@ -466,8 +466,8 @@ function locale_add_language($langcode, $name = NULL, $native = NULL, $direction
// If name was not set, we add a predefined language.
if (!isset($name)) {
include_once DRUPAL_ROOT . '/includes/iso.inc';
$predefined = _locale_get_predefined_list();
include_once DRUPAL_ROOT . '/includes/standard.inc';
$predefined = standard_language_list();
$name = $predefined[$langcode][0];
$native = isset($predefined[$langcode][1]) ? $predefined[$langcode][1] : $predefined[$langcode][0];
$direction = isset($predefined[$langcode][2]) ? $predefined[$langcode][2] : LANGUAGE_LTR;
......@@ -750,9 +750,9 @@ function _locale_rebuild_js($langcode = NULL) {
* Prepares the language code list for a select form item with only the unsupported ones
*/
function _locale_prepare_predefined_list() {
include_once DRUPAL_ROOT . '/includes/iso.inc';
include_once DRUPAL_ROOT . '/includes/standard.inc';
$languages = language_list();
$predefined = _locale_get_predefined_list();
$predefined = standard_language_list();
foreach ($predefined as $key => $value) {
if (isset($languages[$key])) {
unset($predefined[$key]);
......@@ -782,8 +782,8 @@ function _locale_prepare_predefined_list() {
* An array of all country code => country name pairs.
*/
function country_get_list() {
include_once DRUPAL_ROOT . '/includes/iso.inc';
$countries = _country_get_predefined_list();
include_once DRUPAL_ROOT . '/includes/standard.inc';
$countries = standard_country_list();
// Allow other modules to modify the country list.
drupal_alter('countries', $countries);
return $countries;
......
......@@ -280,7 +280,7 @@ function _locale_languages_common_controls(&$form, $language = NULL) {
'#required' => TRUE,
'#default_value' => @$language->language,
'#disabled' => (isset($language->language)),
'#description' => t('<a href="@rfc4646">RFC 4646</a> compliant language identifier. Language codes typically use a country code, and optionally, a script or regional variant name. <em>Examples: "en", "en-US" and "zh-Hant".</em>', array('@rfc4646' => 'http://www.ietf.org/rfc/rfc4646.txt')),
'#description' => t('Use language codes as <a href="@w3ctags">defined by the W3C</a> for interoperability. <em>Examples: "en", "en-gb" and "zh-hant".</em>', array('@w3ctags' => 'http://www.w3.org/International/articles/language-tags/')),
);
}
$form['name'] = array('#type' => 'textfield',
......@@ -331,8 +331,8 @@ function locale_languages_predefined_form_validate($form, &$form_state) {
if (!isset($form_state['values']['name'])) {
// Predefined language selection.
include_once DRUPAL_ROOT . '/includes/iso.inc';
$predefined = _locale_get_predefined_list();
include_once DRUPAL_ROOT . '/includes/standard.inc';
$predefined = standard_language_list();
if (!isset($predefined[$langcode])) {
form_set_error('langcode', t('Invalid language code.'));
}
......@@ -355,8 +355,8 @@ function locale_languages_predefined_form_submit($form, &$form_state) {
}
else {
// Predefined language selection.
include_once DRUPAL_ROOT . '/includes/iso.inc';
$predefined = _locale_get_predefined_list();
include_once DRUPAL_ROOT . '/includes/standard.inc';
$predefined = standard_language_list();
locale_add_language($langcode);
drupal_set_message(t('The language %language has been created and can now be used. More information is available on the <a href="@locale-help">help screen</a>.', array('%language' => t($predefined[$langcode][0]), '@locale-help' => url('admin/help/locale'))));
}
......
......@@ -68,8 +68,8 @@ function locale_translate_import_form_submit($form, &$form_state) {
$languages = language_list('language');
$langcode = $form_state['values']['langcode'];
if (!isset($languages[$langcode])) {
include_once DRUPAL_ROOT . '/includes/iso.inc';
$predefined = _locale_get_predefined_list();
include_once DRUPAL_ROOT . '/includes/standard.inc';
$predefined = standard_language_list();
locale_add_language($langcode);
drupal_set_message(t('The language %language has been created.', array('%language' => t($predefined[$langcode][0]))));
}
......
......@@ -4383,7 +4383,7 @@ function hook_updater_info_alter(&$updaters) {
* The associative array of countries keyed by ISO 3166-1 country code.
*
* @see country_get_list()
* @see _country_get_predefined_list()
* @see standard_country_list()
*/
function hook_countries_alter(&$countries) {
// Elbonia is now independent, so add it to the country list.
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment