summaryrefslogtreecommitdiff
path: root/includes/module.inc
diff options
context:
space:
mode:
authorDries Buytaert <dries@buytaert.net>2007-05-25 12:46:46 +0000
committerDries Buytaert <dries@buytaert.net>2007-05-25 12:46:46 +0000
commit3cafffe63f70f418d0b6ca32ac5e0f3e27dceb41 (patch)
treecd59a40556a084f35b7b5a3bc3caa50874087541 /includes/module.inc
parentae762838c0e92bded86370103df4583874c50da7 (diff)
downloadbrdo-3cafffe63f70f418d0b6ca32ac5e0f3e27dceb41.tar.gz
brdo-3cafffe63f70f418d0b6ca32ac5e0f3e27dceb41.tar.bz2
- Killer patch #144765 by bjaspan, frando et al: schema API 1 hits core. Oh, behave.
Diffstat (limited to 'includes/module.inc')
-rw-r--r--includes/module.inc39
1 files changed, 36 insertions, 3 deletions
diff --git a/includes/module.inc b/includes/module.inc
index 5ff8f5575..dcec75f5c 100644
--- a/includes/module.inc
+++ b/includes/module.inc
@@ -189,9 +189,42 @@ function module_load_install($module) {
// Make sure the installation API is available
include_once './includes/install.inc';
- $install_file = './'. drupal_get_path('module', $module) .'/'. $module .'.install';
- if (is_file($install_file)) {
- include_once $install_file;
+ module_load_include('install', $module);
+}
+
+/**
+ * Load a module include file.
+ *
+ * @param $type
+ * The include file's type (file extension).
+ * @param $module
+ * The module to which the include file belongs.
+ * @param $name
+ * Optionally, specify the file name. If not set, the module's name is used.
+ */
+function module_load_include($type, $module, $name = NULL) {
+ if (empty($name)) {
+ $name = $module;
+ }
+
+ $file = './'. drupal_get_path('module', $module) ."/$name.$type";
+
+ if (is_file($file)) {
+ require_once $file;
+ }
+ else {
+ return FALSE;
+ }
+}
+
+/**
+ * Load an include file for each of the modules that have been enabled in
+ * the system table.
+ */
+function module_load_all_includes($type, $name = NULL) {
+ $modules = module_list();
+ foreach ($modules as $module) {
+ module_load_include($type, $module, $name);
}
}