48 lines
1.2 KiB
PHP
Executable File
48 lines
1.2 KiB
PHP
Executable File
<?php
|
|
|
|
class ErrorController extends Zend_Controller_Action
|
|
{
|
|
public function errorAction()
|
|
{
|
|
$errors = $this->_getParam('error_handler');
|
|
|
|
if(empty($errors))
|
|
{
|
|
// 404 error -- controller or action not found
|
|
$this->getResponse()->setRawHeader('HTTP/1.1 404 Not Found');
|
|
$content =<<<EOH
|
|
<h1>Error!</h1>
|
|
<p>The page you requested was not found.</p>
|
|
EOH;
|
|
|
|
}
|
|
else
|
|
{
|
|
|
|
switch ($errors->type) {
|
|
case Zend_Controller_Plugin_ErrorHandler::EXCEPTION_NO_CONTROLLER:
|
|
case Zend_Controller_Plugin_ErrorHandler::EXCEPTION_NO_ACTION:
|
|
// 404 error -- controller or action not found
|
|
$this->getResponse()->setRawHeader('HTTP/1.1 404 Not Found');
|
|
|
|
$content =<<<EOH
|
|
<h1>Error!</h1>
|
|
<p>The page you requested was not found.</p>
|
|
EOH;
|
|
break;
|
|
default:
|
|
// application error
|
|
$content =<<<EOH
|
|
<h1>Error!</h1>
|
|
<p>An unexpected error occurred. Please try again later.</p>
|
|
EOH;
|
|
break;
|
|
}
|
|
}
|
|
|
|
// Clear previous content
|
|
$this->getResponse()->clearBody();
|
|
|
|
$this->view->content = $content;
|
|
}
|
|
} |