summaryrefslogtreecommitdiffstats
path: root/system/core/Exceptions.php
diff options
context:
space:
mode:
authorvlakoff <vlakoff@gmail.com>2014-04-14 14:34:06 +0200
committervlakoff <vlakoff@gmail.com>2014-04-14 14:34:06 +0200
commit08ea83bb19146eab8e792acc35f02f6e8d055894 (patch)
tree3029d8126002bffc468e3b96565941a089a55e6b /system/core/Exceptions.php
parent511a6b8eb67e34820c1b9446cfc8891b52df90c7 (diff)
Different method for handling "error_views_path" config item
Diffstat (limited to 'system/core/Exceptions.php')
-rw-r--r--system/core/Exceptions.php25
1 files changed, 10 insertions, 15 deletions
diff --git a/system/core/Exceptions.php b/system/core/Exceptions.php
index 0c247f916..5bcb7c1c5 100644
--- a/system/core/Exceptions.php
+++ b/system/core/Exceptions.php
@@ -45,13 +45,6 @@ class CI_Exceptions {
public $ob_level;
/**
- * Path to the error templates
- *
- * @var string
- */
- protected $_templates_path;
-
- /**
* List if available error levels
*
* @var array
@@ -80,12 +73,6 @@ class CI_Exceptions {
{
$this->ob_level = ob_get_level();
// Note: Do not log messages from this constructor.
-
- $config =& get_config();
-
- $this->_templates_path = (isset($config['error_views_path']) && $config['error_views_path'] !== '')
- ? $config['error_views_path']
- : VIEWPATH.'errors'.DIRECTORY_SEPARATOR;
}
// --------------------------------------------------------------------
@@ -158,6 +145,10 @@ class CI_Exceptions {
*/
public function show_error($heading, $message, $template = 'error_general', $status_code = 500)
{
+ $templates_path = config_item('error_views_path')
+ ? config_item('error_views_path')
+ : VIEWPATH.'errors'.DIRECTORY_SEPARATOR;
+
if (is_cli())
{
$message = "\t".(is_array($message) ? implode("\n\t", $message) : $message);
@@ -175,7 +166,7 @@ class CI_Exceptions {
ob_end_flush();
}
ob_start();
- include($this->_templates_path.$template.'.php');
+ include($templates_path.$template.'.php');
$buffer = ob_get_contents();
ob_end_clean();
return $buffer;
@@ -194,6 +185,10 @@ class CI_Exceptions {
*/
public function show_php_error($severity, $message, $filepath, $line)
{
+ $templates_path = config_item('error_views_path')
+ ? config_item('error_views_path')
+ : VIEWPATH.'errors'.DIRECTORY_SEPARATOR;
+
$severity = isset($this->levels[$severity]) ? $this->levels[$severity] : $severity;
// For safety reasons we don't show the full file path in non-CLI requests
@@ -218,7 +213,7 @@ class CI_Exceptions {
ob_end_flush();
}
ob_start();
- include($this->_templates_path.$template.'.php');
+ include($templates_path.$template.'.php');
$buffer = ob_get_contents();
ob_end_clean();
echo $buffer;