mirror of
https://github.com/skipperbent/simple-php-router.git
synced 2026-07-11 04:42:15 +00:00
@@ -268,8 +268,6 @@ class RouterBase {
|
|||||||
|
|
||||||
protected function handleException(\Exception $e) {
|
protected function handleException(\Exception $e) {
|
||||||
|
|
||||||
$request = clone $this->request;
|
|
||||||
|
|
||||||
/* @var $route RouterGroup */
|
/* @var $route RouterGroup */
|
||||||
foreach ($this->exceptionHandlers as $route) {
|
foreach ($this->exceptionHandlers as $route) {
|
||||||
$handler = $route->getExceptionHandler();
|
$handler = $route->getExceptionHandler();
|
||||||
@@ -279,20 +277,11 @@ class RouterBase {
|
|||||||
throw new RouterException('Exception handler must implement the IExceptionHandler interface.');
|
throw new RouterException('Exception handler must implement the IExceptionHandler interface.');
|
||||||
}
|
}
|
||||||
|
|
||||||
$request = $handler->handleError($request, $this->loadedRoute, $e);
|
$request = $handler->handleError($this->request, $this->loadedRoute, $e);
|
||||||
$request = ($request === null) ? $this->request : $request;
|
|
||||||
|
|
||||||
if(!in_array($request->getUri(), $this->routeChanges)) {
|
|
||||||
|
|
||||||
|
if($request !== null && !in_array($request->getUri(), $this->routeChanges)) {
|
||||||
$this->routeChanges[] = $request->getUri();
|
$this->routeChanges[] = $request->getUri();
|
||||||
|
$this->routeRequest($request);
|
||||||
if($request->getUri() !== $this->request->getUri()) {
|
|
||||||
$this->routeRequest($request);
|
|
||||||
} else {
|
|
||||||
$this->loadedRoute->renderRoute($request);
|
|
||||||
}
|
|
||||||
|
|
||||||
return;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -269,7 +269,7 @@ abstract class RouterEntry {
|
|||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
public function loadMiddleware(Request $request, RouterRoute &$route) {
|
public function loadMiddleware(Request $request, RouterEntry &$route) {
|
||||||
if(count($this->getMiddleware())) {
|
if(count($this->getMiddleware())) {
|
||||||
foreach($this->getMiddleware() as $middleware) {
|
foreach($this->getMiddleware() as $middleware) {
|
||||||
$middleware = $this->loadClass($middleware);
|
$middleware = $this->loadClass($middleware);
|
||||||
|
|||||||
Reference in New Issue
Block a user