Skip to content

Commit 4b62aa0

Browse files
committed
Updated Router and RouterCommand classes.
1 parent f2584f4 commit 4b62aa0

File tree

2 files changed

+17
-8
lines changed

2 files changed

+17
-8
lines changed

src/Router.php

Lines changed: 16 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -405,9 +405,18 @@ private function addRoute($uri, $method, $callback, $settings)
405405
$group .= $value['route'];
406406

407407
$page = dirname($_SERVER['PHP_SELF']);
408-
$route = rtrim($page . $group . '/' . trim($uri, '/'), '/');
408+
$page = $page == '/' ? '' : $page;
409409

410-
if($route == $page)
410+
if(strstr($page, 'index.php'))
411+
{
412+
$data = implode('/', explode('/', $page));
413+
$page = str_replace($data, '', $page);
414+
}
415+
416+
$route = $page . $group . '/' . trim($uri, '/');
417+
$route = rtrim($route, '/');
418+
419+
if($route == $page)
411420
$route .= '/';
412421

413422
$data = [
@@ -453,19 +462,19 @@ private function runRouteCommand($command, $params = null)
453462
*/
454463
public function runRouteMiddleware($middleware, $type)
455464
{
456-
if($type == 'before')
465+
if($type == 'before')
457466
{
458467
if(!is_null($middleware['group']))
459-
RouterCommand::beforeAfter($middleware['group'][$type], $this->middlewares);
468+
RouterCommand::beforeAfter($middleware['group'][$type], $this->middlewares, $this->paths['middlewares'], $this->namespaces['middlewares']);
460469

461-
RouterCommand::beforeAfter($middleware[$type], $this->middlewares);
470+
RouterCommand::beforeAfter($middleware[$type], $this->middlewares, $this->paths['middlewares'], $this->namespaces['middlewares']);
462471
}
463472
else
464473
{
465-
RouterCommand::beforeAfter($middleware[$type], $this->middlewares);
474+
RouterCommand::beforeAfter($middleware[$type], $this->middlewares, $this->paths['middlewares'], $this->namespaces['middlewares']);
466475

467476
if(!is_null($middleware['group']))
468-
RouterCommand::beforeAfter($middleware['group'][$type], $this->middlewares);
477+
RouterCommand::beforeAfter($middleware['group'][$type], $this->middlewares, $this->paths['middlewares'], $this->namespaces['middlewares']);
469478
}
470479
}
471480

src/Router/RouterCommand.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,7 @@ public static function beforeAfter($command, $middleware, $path = '', $namespace
4848
$controller = new $segments[0]();
4949

5050
if(in_array($segments[1], get_class_methods($controller)))
51-
return $controller->$segments[1]();
51+
return call_user_func([$controller, $segments[1]]);
5252
else
5353
return new RouterException($segments[1] . ' method is not found in <b>'.$segments[0].'</b> middleware. Please, check file.');
5454
}

0 commit comments

Comments
 (0)