From 6e00bab0ecfbbdd35d135a297d54a4989a44e500 Mon Sep 17 00:00:00 2001 From: admin Date: Tue, 26 Sep 2006 08:13:06 +0000 Subject: --- system/libraries/Controller.php | 28 +++++++++++++++++++++++++++- 1 file changed, 27 insertions(+), 1 deletion(-) (limited to 'system/libraries/Controller.php') diff --git a/system/libraries/Controller.php b/system/libraries/Controller.php index 74b233ef3..9d858e6c2 100644 --- a/system/libraries/Controller.php +++ b/system/libraries/Controller.php @@ -301,9 +301,18 @@ class Controller extends CI_Base { } + $exceptions = array('dbutil', 'dbexport'); + foreach ($autoload['libraries'] as $item) { - $this->_ci_init_class($item); + if ( ! in_array($item, $exceptions)) + { + $this->_ci_init_class($item); + } + else + { + $this->_ci_init_dbextra($item); + } } unset($autoload['libraries']); @@ -452,6 +461,23 @@ class Controller extends CI_Base { // -------------------------------------------------------------------- + /** + * Initialize Database Ancillary Classes + * + * @access private + * @param str class name + * @return void + */ + function _ci_init_dbextra($class) + { + $map = array('dbutil' => 'DB_utility', 'dbexport' => 'DB_export'); + require_once(BASEPATH.'database/'.$map[$class].EXT); + + $this->init_class('CI_'.$map[$class], $class); + } + + // -------------------------------------------------------------------- + /** * Returns TRUE if a class is loaded, FALSE if not * -- cgit v1.2.3-24-g4f1b