initial commit
This commit is contained in:
commit
e869a1cab4
107 changed files with 9029 additions and 0 deletions
49
app/plugins/ExceptionHandlerPlugin.php
Normal file
49
app/plugins/ExceptionHandlerPlugin.php
Normal file
|
|
@ -0,0 +1,49 @@
|
|||
<?php
|
||||
|
||||
use Phalcon\Events\Event;
|
||||
use Phalcon\Mvc\User\Plugin;
|
||||
use Phalcon\Mvc\Dispatcher;
|
||||
use Phalcon\Mvc\Dispatcher\Exception as DispatcherException;
|
||||
|
||||
/**
|
||||
* Class ExceptionHandlerPlugin
|
||||
*
|
||||
* Plugin for forwarding user to 404 (not found) page
|
||||
* if a request could not be dispatched.
|
||||
*/
|
||||
class ExceptionHandlerPlugin extends Plugin
|
||||
{
|
||||
protected $_route_notfound = array(
|
||||
'controller' => 'error',
|
||||
'action' => 'show404'
|
||||
);
|
||||
|
||||
protected $_route_error = array(
|
||||
'controller' => 'error',
|
||||
'action' => 'error',
|
||||
);
|
||||
|
||||
/**
|
||||
* @param Event $event
|
||||
* @param Dispatcher $dispatcher
|
||||
* @param Exception $exception
|
||||
* @return bool
|
||||
*/
|
||||
public function beforeException(Event $event, Dispatcher $dispatcher, Exception $exception)
|
||||
{
|
||||
// Figure out if this was a exception from dispatcher and that exception
|
||||
// was that an controller or action was not found.
|
||||
if ($exception instanceof DispatcherException) {
|
||||
switch ($exception->getCode()) {
|
||||
case Dispatcher::EXCEPTION_HANDLER_NOT_FOUND :
|
||||
case Dispatcher::EXCEPTION_ACTION_NOT_FOUND :
|
||||
// in this case, forward to 404 page.
|
||||
$dispatcher->forward($this->_route_notfound);
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
$dispatcher->forward($this->_route_error);
|
||||
return false;
|
||||
}
|
||||
}
|
||||
Reference in a new issue