diff --git a/includes/bootstrap.inc b/includes/bootstrap.inc index 2d6366739ee939a56f3e6dad3866d937a159bc7d..2856529603940643394c537ab29c7265cec7277d 100644 --- a/includes/bootstrap.inc +++ b/includes/bootstrap.inc @@ -2559,14 +2559,28 @@ function language_list($field = 'language') { } /** - * Default language used on the site + * Default language used on the site. * - * @param $property - * Optional property of the language object to return - */ -function language_default($property = NULL) { - $language = variable_get('language_default', (object) array('language' => 'en', 'name' => 'English', 'native' => 'English', 'direction' => 0, 'enabled' => 1, 'plurals' => 0, 'formula' => '', 'domain' => '', 'prefix' => '', 'weight' => 0, 'javascript' => '')); - return $property ? $language->$property : $language; + * @return + * A language object. + */ +function language_default() { + return variable_get( + 'language_default', + (object) array( + 'language' => 'en', + 'name' => 'English', + 'native' => 'English', + 'direction' => 0, + 'enabled' => 1, + 'plurals' => 0, + 'formula' => '', + 'domain' => '', + 'prefix' => '', + 'weight' => 0, + 'javascript' => '' + ) + ); } /** diff --git a/includes/locale.inc b/includes/locale.inc index b7d9672dfc66adab96468b4adacbb31d64ef543c..fabde9025af8be9bd764583b505cd80e4c185b71 100644 --- a/includes/locale.inc +++ b/includes/locale.inc @@ -709,7 +709,7 @@ function _locale_rebuild_js($langcode = NULL) { // Update the default language variable if the default language has been altered. // This is necessary to keep the variable consistent with the database // version of the language and to prevent checking against an outdated hash. - $default_langcode = language_default('language'); + $default_langcode = language_default()->language; if ($default_langcode == $language->language) { $default = db_query("SELECT * FROM {languages} WHERE language = :language", array(':language' => $default_langcode))->fetchObject(); variable_set('language_default', $default); diff --git a/modules/field/field.multilingual.inc b/modules/field/field.multilingual.inc index e0cfec76c0f265848e862c0c2e309f6967f8a636..d9227455cca5a0a7a1ec98a8b18c0936f8a649c5 100644 --- a/modules/field/field.multilingual.inc +++ b/modules/field/field.multilingual.inc @@ -228,7 +228,7 @@ function field_valid_language($langcode, $default = TRUE) { return $langcode; } global $language_content; - return $default ? language_default('language') : $language_content->language; + return $default ? language_default()->language : $language_content->language; } /** diff --git a/modules/locale/locale.admin.inc b/modules/locale/locale.admin.inc index d9044c6ee9cc41512603159e1b35505dea50dcd1..3e8f707004f2f8ff5bc4200090a0b95bd01ae389 100644 --- a/modules/locale/locale.admin.inc +++ b/modules/locale/locale.admin.inc @@ -52,7 +52,7 @@ function locale_languages_overview_form() { '#title' => t('Default language'), '#title_display' => 'invisible', '#options' => $options, - '#default_value' => language_default('language'), + '#default_value' => language_default()->language, ); $form['actions'] = array('#type' => 'actions'); $form['actions']['submit'] = array('#type' => 'submit', '#value' => t('Save configuration')); @@ -392,7 +392,7 @@ function locale_languages_edit_form_validate($form, &$form_state) { if (!empty($form_state['values']['domain']) && $duplicate = db_query("SELECT language FROM {languages} WHERE domain = :domain AND language <> :language", array(':domain' => $form_state['values']['domain'], ':language' => $form_state['values']['langcode']))->fetchField()) { form_set_error('domain', t('The domain (%domain) is already tied to a language (%language).', array('%domain' => $form_state['values']['domain'], '%language' => $duplicate->language))); } - if (empty($form_state['values']['prefix']) && language_default('language') != $form_state['values']['langcode'] && empty($form_state['values']['domain'])) { + if (empty($form_state['values']['prefix']) && language_default()->language != $form_state['values']['langcode'] && empty($form_state['values']['domain'])) { form_set_error('prefix', t('Only the default language can have both the domain and prefix empty.')); } if (!empty($form_state['values']['prefix']) && $duplicate = db_query("SELECT language FROM {languages} WHERE prefix = :prefix AND language <> :language", array(':prefix' => $form_state['values']['prefix'], ':language' => $form_state['values']['langcode']))->fetchField()) { @@ -439,7 +439,7 @@ function locale_languages_delete_form($form, &$form_state, $langcode) { drupal_goto('admin/config/regional/language'); } - if (language_default('language') == $langcode) { + if (language_default()->language == $langcode) { drupal_set_message(t('The default language cannot be deleted.')); drupal_goto('admin/config/regional/language'); } diff --git a/modules/path/path.test b/modules/path/path.test index f42ec81be08cc95b101cecf534fb654e0b42b785..9e501782b4cdfec090859a3142b9fcbd17ef9f1f 100644 --- a/modules/path/path.test +++ b/modules/path/path.test @@ -477,7 +477,7 @@ class PathMonolingualTestCase extends DrupalWebTestCase { // Verify that French is the only language. $this->assertFalse(drupal_multilingual(), t('Site is mono-lingual')); - $this->assertEqual(language_default('language'), 'fr', t('French is the default language')); + $this->assertEqual(language_default()->language, 'fr', t('French is the default language')); // Set language detection to URL. $edit = array('language[enabled][locale-url]' => TRUE);