diff options
author | Dries Buytaert <dries@buytaert.net> | 2007-02-04 21:20:50 +0000 |
---|---|---|
committer | Dries Buytaert <dries@buytaert.net> | 2007-02-04 21:20:50 +0000 |
commit | 781235a525790acccc9b411c04ed39e590781a0d (patch) | |
tree | 743e546fe1ff72f1f71b4d2eea533e21819301fe | |
parent | 4980327172bee2eaee1d401fef900f924d41a383 (diff) | |
download | brdo-781235a525790acccc9b411c04ed39e590781a0d.tar.gz brdo-781235a525790acccc9b411c04ed39e590781a0d.tar.bz2 |
- Patch #108272 by webchick, Ralf et al: improved handling of required modules in install profiles.
-rw-r--r-- | includes/install.inc | 4 | ||||
-rw-r--r-- | includes/module.inc | 7 | ||||
-rw-r--r-- | modules/system/system.module | 3 | ||||
-rw-r--r-- | profiles/default/default.profile | 2 |
4 files changed, 10 insertions, 6 deletions
diff --git a/includes/install.inc b/includes/install.inc index 82dc0336a..a3173330e 100644 --- a/includes/install.inc +++ b/includes/install.inc @@ -272,7 +272,7 @@ function drupal_verify_profile($profile, $locale) { // Get a list of modules required by this profile. $function = $profile .'_profile_modules'; - $module_list = array_merge(array('system'), $function(), ($locale ? array('locale') : array())); + $module_list = array_merge(drupal_required_modules(), $function(), ($locale ? array('locale') : array())); // Get a list of modules that exist in Drupal's assorted subdirectories. $present_modules = array(); @@ -687,7 +687,7 @@ function drupal_check_profile($profile) { // Get a list of modules required by this profile. $function = $profile .'_profile_modules'; - $module_list = array_unique(array_merge(array('system'), $function())); + $module_list = array_unique(array_merge(drupal_required_modules(), $function())); // Get a list of all .install files. $installs = drupal_get_install_files($module_list); diff --git a/includes/module.inc b/includes/module.inc index 9f16cc7e1..d2a6d7c0a 100644 --- a/includes/module.inc +++ b/includes/module.inc @@ -419,4 +419,9 @@ function module_invoke_all() { * @} End of "defgroup hooks". */ - +/** + * Array of modules required by core. + */ +function drupal_required_modules() { + return array('block', 'filter', 'node', 'system', 'user', 'watchdog'); +} diff --git a/modules/system/system.module b/modules/system/system.module index 518b934b8..74b806fcd 100644 --- a/modules/system/system.module +++ b/modules/system/system.module @@ -1313,8 +1313,7 @@ function system_modules($form_values = NULL) { } // Merge in required modules. - $modules_required = array('block', 'filter', 'node', 'system', 'user', 'watchdog'); - foreach ($modules_required as $required) { + foreach (drupal_required_modules() as $required) { $disabled[] = $required; $form['disabled_modules']['#value'][$required] = TRUE; } diff --git a/profiles/default/default.profile b/profiles/default/default.profile index 4f1915afe..be884cfd6 100644 --- a/profiles/default/default.profile +++ b/profiles/default/default.profile @@ -8,7 +8,7 @@ * An array of modules to be enabled. */ function default_profile_modules() { - return array('block', 'color', 'comment', 'filter', 'help', 'node', 'system', 'taxonomy', 'user', 'watchdog'); + return array('color', 'comment', 'help', 'taxonomy'); } /** |