diff options
author | Dries Buytaert <dries@buytaert.net> | 2007-04-09 14:46:55 +0000 |
---|---|---|
committer | Dries Buytaert <dries@buytaert.net> | 2007-04-09 14:46:55 +0000 |
commit | ded653fbbd3d8123e5e4ee5a7bd0336519201e61 (patch) | |
tree | a732faa591b1515dad052074e62e9594975d7c7b | |
parent | dcbb5fa3f4434be266793f6a610071a14c777414 (diff) | |
download | brdo-ded653fbbd3d8123e5e4ee5a7bd0336519201e61.tar.gz brdo-ded653fbbd3d8123e5e4ee5a7bd0336519201e61.tar.bz2 |
- Patch #128866 by Gabor and erdemkose: make it impossible to delete the default language or the English language.
-rw-r--r-- | includes/locale.inc | 3 | ||||
-rw-r--r-- | modules/locale/locale.module | 6 |
2 files changed, 8 insertions, 1 deletions
diff --git a/includes/locale.inc b/includes/locale.inc index 9929668d2..b19dd4e84 100644 --- a/includes/locale.inc +++ b/includes/locale.inc @@ -95,10 +95,11 @@ function _locale_admin_manage_screen() { * Theme the admin langauge manager form. */ function theme_locale_admin_manage_screen($form) { + $default = language_default(); foreach ($form['name'] as $key => $element) { // Do not take form control structures. if (is_array($element) && element_child($key)) { - $rows[] = array(array('data' => drupal_render($form['enabled'][$key]), 'align' => 'center'), check_plain($key), '<strong>'. drupal_render($form['name'][$key]) .'</strong>', drupal_render($form['native'][$key]), drupal_render($form['direction'][$key]), drupal_render($form['site_default'][$key]), drupal_render($form['weight'][$key]), l(t('edit'), 'admin/build/locale/language/edit/'. $key). ($key != 'en' ? ' ' .l(t('delete'), 'admin/build/locale/language/delete/'. $key) : '')); + $rows[] = array(array('data' => drupal_render($form['enabled'][$key]), 'align' => 'center'), check_plain($key), '<strong>'. drupal_render($form['name'][$key]) .'</strong>', drupal_render($form['native'][$key]), drupal_render($form['direction'][$key]), drupal_render($form['site_default'][$key]), drupal_render($form['weight'][$key]), l(t('edit'), 'admin/build/locale/language/edit/'. $key). (($key != 'en' && $key != $default->language) ? ' '. l(t('delete') ,'admin/build/locale/language/delete/'. $key) : '')); } } $header = array(array('data' => t('Enabled')), array('data' => t('Code')), array('data' => t('English name')), array('data' => t('Native name')), array('data' => t('Direction')), array('data' => t('Default')), array('data' => t('Weight')), array('data' => t('Operations'))); diff --git a/modules/locale/locale.module b/modules/locale/locale.module index c3856f947..9d769a851 100644 --- a/modules/locale/locale.module +++ b/modules/locale/locale.module @@ -357,6 +357,12 @@ function locale_admin_manage_delete_form($langcode) { drupal_goto('admin/build/locale/language/overview'); } + $default = language_default(); + if ($default->language == $langcode) { + drupal_set_message(t('The default language cannot be deleted.')); + drupal_goto('admin/build/locale/language/overview'); + } + // For other locales, warn user that data loss is ahead. $languages = language_list(); |