summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDries Buytaert <dries@buytaert.net>2007-04-09 14:46:55 +0000
committerDries Buytaert <dries@buytaert.net>2007-04-09 14:46:55 +0000
commitded653fbbd3d8123e5e4ee5a7bd0336519201e61 (patch)
treea732faa591b1515dad052074e62e9594975d7c7b
parentdcbb5fa3f4434be266793f6a610071a14c777414 (diff)
downloadbrdo-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.inc3
-rw-r--r--modules/locale/locale.module6
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();