summaryrefslogtreecommitdiff
path: root/includes/module.inc
diff options
context:
space:
mode:
Diffstat (limited to 'includes/module.inc')
-rw-r--r--includes/module.inc16
1 files changed, 10 insertions, 6 deletions
diff --git a/includes/module.inc b/includes/module.inc
index e80384343..787f072f2 100644
--- a/includes/module.inc
+++ b/includes/module.inc
@@ -40,8 +40,8 @@ function module_invoke_all($hook, $a1 = NULL, $a2 = NULL, $a3 = NULL, $a4 = NULL
return $return;
}
-// return array of module names (includes lazy module loading):
-function module_list($refresh = 0) {
+// return array of module names (includes lazy module loading if not in bootstrap mode)
+function module_list($refresh = 0, $bootstrap = 0) {
static $list;
if ($refresh) {
@@ -50,16 +50,20 @@ function module_list($refresh = 0) {
if (!$list) {
$list = array("admin" => "admin", "system" => "system", "user" => "user", "watchdog" => "watchdog");
- $result = db_query("SELECT name, filename FROM {system} WHERE type = 'module' AND status = '1' ORDER BY name");
+ $result = db_query("SELECT name, filename, bootstrap FROM {system} WHERE type = 'module' AND status = '1' ORDER BY name");
while ($module = db_fetch_object($result)) {
if (file_exists($module->filename)) {
- $list[$module->name] = $module->name;
- include_once $module->filename;
+ if ($bootstrap) {
+ $list[$module->name] = array("name"=> $module->name, "bootstrap" => $module->bootstrap, "filename" => $module->filename);
+ }
+ else {
+ $list[$module->name] = $module->name;
+ include_once $module->filename;
+ }
}
}
natcasesort($list);
}
-
return $list;
}