Browse Source

Get rid of $this->template logic, switched to type of exception

namespace
Anton Terekhov 12 years ago
parent
commit
a2cb6a405e
  1. 12
      app/ErrorAction.php

12
app/ErrorAction.php

@ -25,11 +25,12 @@ class ErrorAction extends Action
protected function execute() protected function execute()
{ {
$this->template = 500;
if ($this->exception instanceof Error404Exception) { if ($this->exception instanceof Error404Exception) {
$this->template = 404; $this->template = 404;
} elseif ($this->exception instanceof ErrorHTTPException) { } elseif ($this->exception instanceof ErrorHTTPException) {
$this->template = 'HTTP'; $this->template = 'HTTP';
} else {
$this->template = 500;
} }
$this->logError(); $this->logError();
$this->sendHTTPCode(); $this->sendHTTPCode();
@ -50,19 +51,16 @@ class ErrorAction extends Action
protected function sendHttpCode() protected function sendHttpCode()
{ {
switch ($this->template) {
case 404:
case 'HTTP':
if ($this->exception instanceof ErrorHTTPException) {
header($this->exception->getHTTPHeader()); header($this->exception->getHTTPHeader());
break;
default:
} else {
header('HTTP/1.0 500 Internal Server Error'); header('HTTP/1.0 500 Internal Server Error');
} }
} }
protected function logError() protected function logError()
{ {
if ($this->template == 500) {
if (!$this->exception instanceof Error404Exception) {
ErrorHandler::logError($this->exception); ErrorHandler::logError($this->exception);
} }
} }

Loading…
Cancel
Save