diff options
Diffstat (limited to 'includes/locale.inc')
-rw-r--r-- | includes/locale.inc | 55 |
1 files changed, 31 insertions, 24 deletions
diff --git a/includes/locale.inc b/includes/locale.inc index d31755e23..b7afd254c 100644 --- a/includes/locale.inc +++ b/includes/locale.inc @@ -69,7 +69,7 @@ function theme_locale_languages_overview_form($form) { /** * Process language overview form submissions, updating existing languages. */ -function locale_languages_overview_form_submit($form_id, $form_values) { +function locale_languages_overview_form_submit($form_values, $form, &$form_state) { $languages = language_list(); $enabled_count = 0; foreach ($languages as $langcode => $language) { @@ -95,7 +95,8 @@ function locale_languages_overview_form_submit($form_id, $form_values) { // Changing the language settings impacts the interface. cache_clear_all('*', 'cache_page', TRUE); - return 'admin/settings/language'; + $form_state['redirect'] = 'admin/settings/language'; + return; } /** * @} End of "locale-language-overview" @@ -151,8 +152,8 @@ function locale_languages_custom_form() { '#value' => t('Add custom language') ); // Reuse the validation and submit functions of the predefined language setup form. - $form['#submit']['locale_languages_predefined_form_submit'] = array(); - $form['#validate']['locale_languages_predefined_form_validate'] = array(); + $form['#submit'][] = 'locale_languages_predefined_form_submit'; + $form['#validate'][] = 'locale_languages_predefined_form_validate'; return $form; } @@ -170,8 +171,8 @@ function locale_languages_edit_form($langcode) { '#type' => 'submit', '#value' => t('Save language') ); - $form['#submit']['locale_languages_edit_form_submit'] = array(); - $form['#validate']['locale_languages_edit_form_validate'] = array(); + $form['#submit'][] = 'locale_languages_edit_form_submit'; + $form['#validate'][] = 'locale_languages_edit_form_validate'; return $form; } else { @@ -252,7 +253,7 @@ function _locale_languages_common_controls(&$form, $language = NULL) { /** * Validate the language addition form. */ -function locale_languages_predefined_form_validate($form_id, $form_values) { +function locale_languages_predefined_form_validate($form_values, $form, &$form_state) { $langcode = $form_values['langcode']; if ($duplicate = db_num_rows(db_query("SELECT language FROM {languages} WHERE language = '%s'", $langcode)) != 0) { @@ -268,14 +269,14 @@ function locale_languages_predefined_form_validate($form_id, $form_values) { } else { // Reuse the editing form validation routine if we add a custom language. - locale_languages_edit_form_validate($form_id, $form_values); + locale_languages_edit_form_validate($form_values, $form, $form_state); } } /** * Process the language addition form submission. */ -function locale_languages_predefined_form_submit($form_id, $form_values) { +function locale_languages_predefined_form_submit($form_values, $form, &$form_state) { $langcode = $form_values['langcode']; if (isset($form_values['name'])) { // Custom language form. @@ -288,13 +289,14 @@ function locale_languages_predefined_form_submit($form_id, $form_values) { locale_add_language($langcode, $lang[0], isset($lang[1]) ? $lang[1] : $lang[0], isset($lang[2]) ? $lang[2] : 0, '', $langcode); } - return 'admin/settings/language'; + $form_state['redirect'] = 'admin/settings/language'; + return; } /** * Validate the language editing form. Reused for custom language addition too. */ -function locale_languages_edit_form_validate($form_id, $form_values) { +function locale_languages_edit_form_validate($form_values, $form, &$form_state) { if (!empty($form_values['domain']) && !empty($form_values['prefix'])) { form_set_error('prefix', t('Domain and path prefix values should not be set at the same time.')); } @@ -313,7 +315,7 @@ function locale_languages_edit_form_validate($form_id, $form_values) { /** * Process the language editing form submission. */ -function locale_languages_edit_form_submit($form_id, $form_values) { +function locale_languages_edit_form_submit($form_values, $form, &$form_state) { db_query("UPDATE {languages} SET name = '%s', native = '%s', domain = '%s', prefix = '%s', direction = %d WHERE language = '%s'", $form_values['name'], $form_values['native'], $form_values['domain'], $form_values['prefix'], $form_values['direction'], $form_values['langcode']); $default = language_default(); if ($default->language == $form_values['langcode']) { @@ -323,7 +325,8 @@ function locale_languages_edit_form_submit($form_id, $form_values) { } variable_set('language_default', $default); } - return 'admin/settings/language'; + $form_state['redirect'] = 'admin/settings/language'; + return; } /** * @} End of "locale-language-add-edit" @@ -366,7 +369,7 @@ function locale_languages_delete_form($langcode) { /** * Process language deletion submissions. */ -function locale_languages_delete_form_submit($form_id, $form_values) { +function locale_languages_delete_form_submit($form_values, $form, &$form_state) { $languages = language_list(); if (isset($languages[$form_values['langcode']])) { db_query("DELETE FROM {languages} WHERE language = '%s'", $form_values['langcode']); @@ -380,7 +383,8 @@ function locale_languages_delete_form_submit($form_id, $form_values) { // Changing the language settings impacts the interface: cache_clear_all('*', 'cache_page', TRUE); - return 'admin/settings/language'; + $form_state['redirect'] = 'admin/settings/language'; + return; } /** * @} End of "locale-language-add-edit" @@ -416,10 +420,11 @@ function locale_languages_configure_form() { /** * Submit function for language negotiation settings. */ -function locale_languages_configure_form_submit($form_id, $form_values) { +function locale_languages_configure_form_submit($form_values, $form, &$form_state) { variable_set('language_negotiation', $form_values['language_negotiation']); drupal_set_message(t('Language negotiation configuration saved.')); - return 'admin/settings/language'; + $form_state['redirect'] = 'admin/settings/language'; + return; } /** * @} End of "locale-languages-negotiation" @@ -588,7 +593,7 @@ function locale_translate_import_form() { /** * Process the locale import form submission. */ -function locale_translate_import_form_submit($form_id, $form_values) { +function locale_translate_import_form_submit($form_values, $form, &$form_state) { // Ensure we have the file uploaded if ($file = file_check_upload('file')) { @@ -613,7 +618,8 @@ function locale_translate_import_form_submit($form_id, $form_values) { return 'admin/build/translate/import'; } - return 'admin/build/translate'; + $form_state['redirect'] = 'admin/build/translate'; + return; } /** * @} End of "locale-translate-import" @@ -682,15 +688,15 @@ function locale_translate_export_pot_form() { ); $form['export']['submit'] = array('#type' => 'submit', '#value' => t('Export')); // Reuse PO export submission callback. - $form['#submit']['locale_translate_export_po_form_submit'] = array(); - $form['#validate']['locale_translate_export_po_form_validate'] = array(); + $form['#submit'][] = 'locale_translate_export_po_form_submit'; + $form['#validate'][] = 'locale_translate_export_po_form_validate'; return $form; } /** * Process a translation (or template) export form submission. */ -function locale_translate_export_po_form_submit($form_id, $form_values) { +function locale_translate_export_po_form_submit($form_values, $form, &$form_state) { // If template is required, language code is not given. _locale_export_po(isset($form_values['langcode']) ? $form_values['langcode'] : NULL, $form_values['group']); } @@ -759,7 +765,7 @@ function locale_translate_edit_form($lid) { * Process string editing form submissions. * Saves all translations of one string submitted from a form. */ -function locale_translate_edit_form_submit($form_id, $form_values) { +function locale_translate_edit_form_submit($form_values, $form, &$form_state) { $lid = $form_values['lid']; foreach ($form_values['translations'] as $key => $value) { $trans = db_fetch_object(db_query("SELECT translation FROM {locales_target} WHERE lid = %d AND language = '%s'", $lid, $key)); @@ -777,7 +783,8 @@ function locale_translate_edit_form_submit($form_id, $form_values) { // Rebuild the menu, strings may have changed. menu_rebuild(); - return 'admin/build/translate/search'; + $form_state['redirect'] = 'admin/build/translate/search'; + return; } /** * @} End of "locale-translate-edit" |