drupal_install_modules

Versions
5 – 6
drupal_install_modules($module_list = array())
7
drupal_install_modules($module_list = array(), $disable_modules_installed_hook = FALSE)

Calls the install function for a given list of modules.

Parameters

$module_list The modules to install.

$disable_modules_installed_hook Normally just testing wants to set this to TRUE.

▾ 4 functions call drupal_install_modules()

install_configure_form_submit in ./install.php
Form API submit for the site configuration form.
system_modules_submit in modules/system/system.admin.inc
Submit callback; handles modules form submission.
system_update_7020 in modules/system/system.install
Enable field module.
system_update_7027 in modules/system/system.install
Enable field type modules.

Code

includes/install.inc, line 560

<?php
function drupal_install_modules($module_list = array(), $disable_modules_installed_hook = FALSE) {
  $files = system_rebuild_module_data();
  $module_list = array_flip(array_values($module_list));
  do {
    $moved = FALSE;
    foreach ($module_list as $module => $weight) {
      $file = $files[$module];
      if (isset($file->info['dependencies']) && is_array($file->info['dependencies'])) {
        foreach ($file->info['dependencies'] as $dependency) {
          if (isset($module_list[$dependency]) && $module_list[$module] < $module_list[$dependency] +1) {
            $module_list[$module] = $module_list[$dependency] +1;
            $moved = TRUE;
          }
        }
      }
    }
  } while ($moved);
  asort($module_list);
  $module_list = array_keys($module_list);
  module_enable($module_list, $disable_modules_installed_hook);
}
?>
Login or register to post comments
 
 

All source code and documentation on this site is released under the terms of the GNU General Public License, version 2 and later. Drupal is a registered trademark of Dries Buytaert.