Same name and namespace in other branches
  1. 10 core/includes/install.inc \drupal_check_module()
  2. 5.x includes/install.inc \drupal_check_module()
  3. 7.x includes/install.inc \drupal_check_module()
  4. 8.9.x core/includes/install.inc \drupal_check_module()
  5. 9 core/includes/install.inc \drupal_check_module()

Check a module's requirements.

File

includes/install.inc, line 713

Code

function drupal_check_module($module) {

  // Include install file
  $install = drupal_get_install_files(array(
    $module,
  ));
  if (isset($install[$module])) {
    require_once $install[$module]->filename;

    // Check requirements
    $requirements = module_invoke($module, 'requirements', 'install');
    if (is_array($requirements) && drupal_requirements_severity($requirements) == REQUIREMENT_ERROR) {

      // Print any error messages
      foreach ($requirements as $requirement) {
        if (isset($requirement['severity']) && $requirement['severity'] == REQUIREMENT_ERROR) {
          $message = $requirement['description'];
          if (isset($requirement['value']) && $requirement['value']) {
            $message .= ' (' . t('Currently using !item !version', array(
              '!item' => $requirement['title'],
              '!version' => $requirement['value'],
            )) . ')';
          }
          drupal_set_message($message, 'error');
        }
      }
      return FALSE;
    }
  }
  return TRUE;
}