summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--modules/system/system.admin.inc5
-rw-r--r--modules/system/system.test12
2 files changed, 13 insertions, 4 deletions
diff --git a/modules/system/system.admin.inc b/modules/system/system.admin.inc
index 9ef4fcf45..1d37f6b66 100644
--- a/modules/system/system.admin.inc
+++ b/modules/system/system.admin.inc
@@ -645,7 +645,7 @@ function system_modules($form_state = array()) {
$extra = array();
// If the module is requried, set it to be so.
if (in_array($filename, $modules_required)) {
- $extra['required'] = TRUE;
+ continue;
}
$extra['enabled'] = (bool) $module->status;
// If this module has dependencies, add them to the array.
@@ -689,7 +689,6 @@ function system_modules($form_state = array()) {
'#type' => 'fieldset',
'#title' => t($package),
'#collapsible' => TRUE,
- '#access' => ($package != 'Core - required'),
'#theme' => 'system_modules_fieldset',
'#header' => array(
array('data' => t('Enabled'), 'class' => 'checkbox'),
@@ -722,7 +721,6 @@ function system_sort_modules_by_info_name($a, $b) {
function _system_modules_build_row($info, $extra) {
// Add in the defaults.
$extra += array(
- 'required' => FALSE,
'dependencies' => array(),
'dependents' => array(),
'disabled' => FALSE,
@@ -773,7 +771,6 @@ function _system_modules_build_row($info, $extra) {
$form['enable'] = array(
'#type' => 'checkbox',
'#title' => t('Enable'),
- '#required' => $extra['required'],
'#default_value' => $extra['enabled'],
);
if ($extra['disabled']) {
diff --git a/modules/system/system.test b/modules/system/system.test
index 52c51db72..dc36470e4 100644
--- a/modules/system/system.test
+++ b/modules/system/system.test
@@ -89,6 +89,18 @@ class EnableDisableCoreTestCase extends DrupalWebTestCase {
}
/**
+ * Assert that core required modules cannot be disabled.
+ */
+ function testDisableRequired() {
+ $required_modules = drupal_required_modules();
+ foreach($required_modules as $module) {
+ // Check to make sure the checkbox for required module is not found.
+ $this->drupalGet('admin/build/modules');
+ $this->assertNoFieldByName('modules[Core][' . $module . '][enable]');
+ }
+ }
+
+ /**
* Assert tables that begin with the specified base table name.
*
* @param string $base_table Begginning of table name to look for.