diff options
author | David King <imkingdavid@gmail.com> | 2012-11-19 12:37:20 -0500 |
---|---|---|
committer | David King <imkingdavid@gmail.com> | 2012-11-19 12:37:20 -0500 |
commit | f8614bfc84ba9b9cc814b8f78e343005620f18f8 (patch) | |
tree | 2bc656eecad6052aa04134c4506ab10876d6fe63 /phpBB/includes/event | |
parent | 30043502814cd42d824dc1d6bcb25bebc60adbed (diff) | |
download | forums-f8614bfc84ba9b9cc814b8f78e343005620f18f8.tar forums-f8614bfc84ba9b9cc814b8f78e343005620f18f8.tar.gz forums-f8614bfc84ba9b9cc814b8f78e343005620f18f8.tar.bz2 forums-f8614bfc84ba9b9cc814b8f78e343005620f18f8.tar.xz forums-f8614bfc84ba9b9cc814b8f78e343005620f18f8.zip |
[feature/controller] Check for proper status codes from controllers
PHPBB3-10864
Diffstat (limited to 'phpBB/includes/event')
-rw-r--r-- | phpBB/includes/event/kernel_exception_subscriber.php | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/phpBB/includes/event/kernel_exception_subscriber.php b/phpBB/includes/event/kernel_exception_subscriber.php index e2668d4560..e843df2e68 100644 --- a/phpBB/includes/event/kernel_exception_subscriber.php +++ b/phpBB/includes/event/kernel_exception_subscriber.php @@ -18,6 +18,7 @@ if (!defined('IN_PHPBB')) use Symfony\Component\EventDispatcher\EventSubscriberInterface; use Symfony\Component\HttpKernel\KernelEvents; use Symfony\Component\HttpKernel\Event\GetResponseForExceptionEvent; +use Symfony\Component\HttpKernel\Exception\NotFoundHttpException; use Symfony\Component\HttpFoundation\Response; class phpbb_event_kernel_exception_subscriber implements EventSubscriberInterface @@ -56,9 +57,11 @@ class phpbb_event_kernel_exception_subscriber implements EventSubscriberInterfac { page_header($this->user->lang('INFORMATION')); + $exception = $event->getException(); + $this->template->assign_vars(array( 'MESSAGE_TITLE' => $this->user->lang('INFORMATION'), - 'MESSAGE_TEXT' => $event->getException()->getMessage(), + 'MESSAGE_TEXT' => $exception->getMessage(), )); $this->template->set_filenames(array( @@ -67,7 +70,9 @@ class phpbb_event_kernel_exception_subscriber implements EventSubscriberInterfac page_footer(true, false, false); - $response = new Response($this->template->assign_display('body'), 404); + + $status_code = $exception instanceof NotFoundHttpException ? $exception->getStatusCode() : 500; + $response = new Response($this->template->assign_display('body'), $status_code); $event->setResponse($response); } |