module_enable

Хочешь помочь с переводом? Это очень просто и быстро. Лишь зарегистрируйся, и можешь тут же начать переводить.

includes/module.inc, строка 285

Версии
5 – 6
module_enable($module_list)

Включает данный список модулей.

Параметры

$module_list Массив с именами модулей.

▾ 4 функции вызывают module_enable()

drupal_install_modules in includes/install.inc
Вызывает функцию установки и обновляет таблицу system для указанного списка модулей.
system_modules_submit in modules/system/system.admin.inc
Submit callback; handles modules form submission.
system_update_6029 in modules/system/system.install
Enable the dblog module on sites that upgrade, since otherwise watchdog logging will stop unexpectedly.
_install_module_batch in ./install.php
Batch callback for batch installation of modules.

Код

<?php
function module_enable($module_list) {
  $invoke_modules = array();
  foreach ($module_list as $module) {
    $existing = db_fetch_object(db_query("SELECT status FROM {system} WHERE type = '%s' AND name = '%s'", 'module', $module));
    if ($existing->status == 0) {
      module_load_install($module);
      db_query("UPDATE {system} SET status = %d, throttle = %d WHERE type = '%s' AND name = '%s'", 1, 0, 'module', $module);
      drupal_load('module', $module);
      $invoke_modules[] = $module;
    }
  }

  if (!empty($invoke_modules)) {
    // Refresh the module list to include the new enabled module.
    module_list(TRUE, FALSE);
    // Force to regenerate the stored list of hook implementations.
    module_implements('', FALSE, TRUE);
  }

  foreach ($invoke_modules as $module) {
    module_invoke($module, 'enable');
    // Check if node_access table needs rebuilding.
    // We check for the existence of node_access_needs_rebuild() since
    // at install time, module_enable() could be called while node.module
    // is not enabled yet.
    if (function_exists('node_access_needs_rebuild') && !node_access_needs_rebuild() && module_hook($module, 'node_grants')) {
      node_access_needs_rebuild(TRUE);
    }
  }
}
?>

Пользовательские комментарии

Функция игнорирует зависимости модулей.
См. http://drupal.org/node/399642
В 7ке эта же функция уже может работать с зависимостями: http://api.drupal.org/api/function/module_enable/7

Войдите или зарегистрируйтесь, чтобы получить возможность отправлять комментарии

Вход в систему