1: <?php
2: /**
3: * Error Handling Controller
4: *
5: * Controller used by ErrorHandler to render error views.
6: *
7: * PHP 5
8: *
9: * CakePHP(tm) : Rapid Development Framework (http://cakephp.org)
10: * Copyright 2005-2012, Cake Software Foundation, Inc. (http://cakefoundation.org)
11: *
12: * Licensed under The MIT License
13: * Redistributions of files must retain the above copyright notice.
14: *
15: * @copyright Copyright 2005-2012, Cake Software Foundation, Inc. (http://cakefoundation.org)
16: * @link http://cakephp.org CakePHP(tm) Project
17: * @package Cake.Controller
18: * @since CakePHP(tm) v 2.0
19: * @license MIT License (http://www.opensource.org/licenses/mit-license.php)
20: */
21:
22: /**
23: * Error Handling Controller
24: *
25: * Controller used by ErrorHandler to render error views.
26: *
27: * @package Cake.Controller
28: */
29: class CakeErrorController extends AppController {
30:
31: /**
32: * Controller name
33: *
34: * @var string
35: */
36: public $name = 'CakeError';
37:
38: /**
39: * Uses Property
40: *
41: * @var array
42: */
43: public $uses = array();
44:
45: /**
46: * __construct
47: *
48: * @param CakeRequest $request
49: * @param CakeResponse $response
50: */
51: public function __construct($request = null, $response = null) {
52: parent::__construct($request, $response);
53: if (count(Router::extensions())) {
54: $this->components[] = 'RequestHandler';
55: }
56: $this->constructClasses();
57: if ($this->Components->enabled('Auth')) {
58: $this->Components->disable('Auth');
59: }
60: if ($this->Components->enabled('Security')) {
61: $this->Components->disable('Security');
62: }
63: $this->startupProcess();
64:
65: $this->_set(array('cacheAction' => false, 'viewPath' => 'Errors'));
66: }
67:
68: /**
69: * Escapes the viewVars.
70: *
71: * @return void
72: */
73: public function beforeRender() {
74: parent::beforeRender();
75: foreach ($this->viewVars as $key => $value) {
76: if (!is_object($value)) {
77: $this->viewVars[$key] = h($value);
78: }
79: }
80: }
81:
82: }
83: