summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--system/database/DB_cache.php6
-rw-r--r--system/database/DB_driver.php17
-rw-r--r--system/libraries/Controller.php97
-rw-r--r--system/libraries/Loader.php54
-rw-r--r--user_guide/database/utilities.html10
-rw-r--r--user_guide/general/controllers.html13
6 files changed, 56 insertions, 141 deletions
diff --git a/system/database/DB_cache.php b/system/database/DB_cache.php
index 913140f6c..bb2b47b7b 100644
--- a/system/database/DB_cache.php
+++ b/system/database/DB_cache.php
@@ -97,7 +97,7 @@ class CI_DB_Cache {
return $this->obj->db->cache_off();
}
- $uri = ($this->obj->uri->segment(1) == FALSE) ? 'default_' : $this->obj->uri->segment(1).'_';
+ $uri = ($this->obj->uri->segment(1) == FALSE) ? 'default.' : $this->obj->uri->segment(1).'.';
$uri .= ($this->obj->uri->segment(2) == FALSE) ? 'index' : $this->obj->uri->segment(2);
$filepath = $uri.'/'.md5($sql);
@@ -125,7 +125,7 @@ class CI_DB_Cache {
return $this->obj->db->cache_off();
}
- $uri = ($this->obj->uri->segment(1) == FALSE) ? 'default_' : $this->obj->uri->segment(1).'_';
+ $uri = ($this->obj->uri->segment(1) == FALSE) ? 'default.' : $this->obj->uri->segment(1).'.';
$uri .= ($this->obj->uri->segment(2) == FALSE) ? 'index' : $this->obj->uri->segment(2);
$dir_path = $this->obj->db->cachedir.$uri.'/';
@@ -171,7 +171,7 @@ class CI_DB_Cache {
$segment_two = ($this->obj->uri->segment(2) == FALSE) ? 'index' : $this->obj->uri->segment(2);
}
- $dir_path = $this->obj->db->cachedir.md5($segment_one.'_'.$segment_two).'/';
+ $dir_path = $this->obj->db->cachedir.md5($segment_one.'.'.$segment_two).'/';
delete_files($dir_path, TRUE);
}
diff --git a/system/database/DB_driver.php b/system/database/DB_driver.php
index e8c4a8236..b89ebbf8d 100644
--- a/system/database/DB_driver.php
+++ b/system/database/DB_driver.php
@@ -156,6 +156,23 @@ class CI_DB_driver {
}
}
+ // --------------------------------------------------------------------
+
+ /**
+ * Load the Utilities Class
+ *
+ * @access public
+ * @return string
+ */
+ function load_utilities()
+ {
+ $obj =& get_instance();
+
+ require_once(BASEPATH.'database/DB_utility'.EXT);
+ require_once(BASEPATH.'database/drivers/'.$this->dbdriver.'/'.$this->dbdriver.'_utility'.EXT);
+ $class = 'CI_DB_'.$this->dbdriver.'_utility';
+ $obj->dbutil = new $class();
+ }
// --------------------------------------------------------------------
diff --git a/system/libraries/Controller.php b/system/libraries/Controller.php
index 2a4c19522..b09be6c57 100644
--- a/system/libraries/Controller.php
+++ b/system/libraries/Controller.php
@@ -434,101 +434,10 @@ class Controller extends CI_Base {
* @return void
*/
function _ci_init_database($params = '', $return = FALSE, $active_record = FALSE)
- {
- if ($this->_ci_is_loaded('db') == TRUE AND $return == FALSE AND $active_record == FALSE)
- {
- return;
- }
-
- // Load the DB config file if needed. We'll test for a DSN string
- if (is_string($params) AND strpos($params, '://') === FALSE)
- {
- include(APPPATH.'config/database'.EXT);
-
- $group = ($params == '') ? $active_group : $params;
-
- if ( ! isset($db[$group]))
- {
- show_error('You have specified an invalid database connection group: '.$group);
- }
-
- $params = $db[$group];
- }
-
- // No DB specified yet? Beat them senseless...
- if ( ! isset($params['dbdriver']) OR $params['dbdriver'] == '')
- {
- show_error('You have not selected a database type to connect to.');
- }
-
- // Load the DB classes. Note: Since the active record class is optional
- // we need to dynamically create a class that extends proper parent class
- // based on whether we're using the active record class or not.
- // Kudos to Paul for discovering this clever use of eval()
-
- if ($active_record == TRUE)
- {
- $params['active_r'] = TRUE;
- }
-
- require_once(BASEPATH.'database/DB_driver'.EXT);
-
- if ( ! isset($params['active_r']) OR $params['active_r'] == TRUE)
- {
- require_once(BASEPATH.'database/DB_active_rec'.EXT);
-
- if ( ! class_exists('CI_DB'))
- {
- eval('class CI_DB extends CI_DB_active_record { }');
- }
- }
- else
- {
- if ( ! class_exists('CI_DB'))
- {
- eval('class CI_DB extends CI_DB_driver { }');
- }
- }
-
- require_once(BASEPATH.'database/drivers/'.$params['dbdriver'].'/'.$params['dbdriver'].'_driver'.EXT);
-
- // Instantiate the DB adapter
- $driver = 'CI_DB_'.$params['dbdriver'].'_driver';
- $DB = new $driver($params);
-
- if ($return === TRUE)
- {
- return $DB;
- }
-
- $obj =& get_instance();
- $obj->db =& $DB;
- }
-
- // --------------------------------------------------------------------
-
- /**
- * Initialize Database Ancillary Classes
- *
- * @access private
- * @param str class name
- * @return void
- */
- function _ci_init_dbextra($class)
{
- if ( ! $this->_ci_is_loaded('db'))
- {
- $this->_ci_init_database();
- }
-
- if ($class == 'dbutil')
- {
- require_once(BASEPATH.'database/DB_utility'.EXT);
- require_once(BASEPATH.'database/drivers/'.$this->db->dbdriver.'/'.$this->db->dbdriver.'_utility'.EXT);
- $class = 'CI_DB_'.$this->db->dbdriver.'_utility';
- $this->dbutil = new $class();
- }
- }
+ require_once(BASEPATH.'database/DB'.EXT);
+ return DB($params, $return, $active_record);
+ }
// --------------------------------------------------------------------
diff --git a/system/libraries/Loader.php b/system/libraries/Loader.php
index 2534e6965..6809054e5 100644
--- a/system/libraries/Loader.php
+++ b/system/libraries/Loader.php
@@ -110,7 +110,9 @@ class CI_Loader {
function database($db = '', $return = FALSE, $active_record = FALSE)
{
$obj =& get_instance();
-
+
+ return DB($params, $return, $active_record);
+
if ($return === TRUE)
{
return $obj->_ci_init_database($db, TRUE, $active_record);
@@ -125,20 +127,6 @@ class CI_Loader {
// --------------------------------------------------------------------
/**
- * Database Utiliy Loader
- *
- * @access public
- * @return object
- */
- function dbutil()
- {
- $obj =& get_instance();
- $obj->_ci_init_dbextra('dbutil');
- }
-
- // --------------------------------------------------------------------
-
- /**
* Scaffolding Loader
*
* @access public
@@ -336,7 +324,24 @@ class CI_Loader {
log_message('debug', 'Plugins loaded: '.implode(', ', $plugins));
}
+
+ // --------------------------------------------------------------------
+ /**
+ * Load Plugins
+ *
+ * This is simply an alias to the above function in case the
+ * user has written the plural form of this function.
+ *
+ * @access public
+ * @param array
+ * @return void
+ */
+ function plugins($plugins = array())
+ {
+ $this->plugin($plugins);
+ }
+
// --------------------------------------------------------------------
/**
@@ -380,24 +385,7 @@ class CI_Loader {
log_message('debug', 'Scripts loaded: '.implode(', ', $scripts));
}
-
- // --------------------------------------------------------------------
-
- /**
- * Load Plugins
- *
- * This is simply an alias to the above function in case the
- * user has written the plural form of this function.
- *
- * @access public
- * @param array
- * @return void
- */
- function plugins($plugins = array())
- {
- $this->plugin($plugins);
- }
-
+
// --------------------------------------------------------------------
/**
diff --git a/user_guide/database/utilities.html b/user_guide/database/utilities.html
index fcfc24945..f815039cb 100644
--- a/user_guide/database/utilities.html
+++ b/user_guide/database/utilities.html
@@ -85,14 +85,12 @@ Database Utility Class
<a name="init"></a>
<h2>Initializing the Utility Class</h2>
-<p class="important"><strong>Important:</strong>&nbsp; This class must be initialized independently since it is a separate class from the main Database class.
-More info below...</p>
+<p class="important"><strong>Important:</strong>&nbsp; In order to initialize the Utility class, your database driver must
+already be running, since the utilities class is loaded from within the main DB class.</p>
-<p>To initialize this class please use the following code:</p>
+<p>Load the Utility Class as follows:</p>
-<code>$this->load->dbutil()</code>
-
-<p>You can also autoload this class from within your <dfn>config/autoload.php</dfn> file by specifying <kbd>dbutil</kbd> in the <samp>$autoload['libraries']</samp> array.</p>
+<code>$this->db->load_utilities()</code>
<p>Once initialized you will access the functions using the <dfn>$this->dbutil</dfn> object:</p>
diff --git a/user_guide/general/controllers.html b/user_guide/general/controllers.html
index 0bfe973e5..20f207f5f 100644
--- a/user_guide/general/controllers.html
+++ b/user_guide/general/controllers.html
@@ -372,18 +372,16 @@ is a list of reserved names. Do not name your controller functions any of these
<ul>
<li>Controller</li>
<li>CI_Base</li>
-<li>_ci_autoload</li>
-<li>_ci_autoloader</li>
<li>_ci_assign_core</li>
-<li>_ci_init_class</li>
+<li>_ci_assign_to_models</li>
+<li>_ci_autoload</li>
<li>_ci_init_database</li>
+<li>_ci_init_class</li>
<li>_ci_init_model</li>
<li>_ci_init_scaffolding</li>
<li>_ci_is_loaded</li>
-<li>_ci_load</li>
<li>_ci_load_class</li>
<li>_ci_scaffolding</li>
-<li>_ci_set_view_path</li>
</ul>
<p><br />If you are running PHP 4 there are some additional reserved names. These ONLY apply if you are running PHP 4.</p>
@@ -397,12 +395,17 @@ is a list of reserved names. Do not name your controller functions any of these
<li>helpers</li>
<li>language</li>
<li>library</li>
+<li>model</li>
<li>plugin</li>
<li>plugins</li>
<li>scaffolding</li>
<li>script</li>
<li>view</li>
<li>vars</li>
+<li>_ci_autoloader</li>
+<li>_ci_load</li>
+<li>_ci_object_to_array</li>
+<li>_ci_set_view_path</li>
</ul>