diff --git a/classes/Dispatcher.php b/classes/Dispatcher.php index 5c19473f4..85bb8d3b5 100644 --- a/classes/Dispatcher.php +++ b/classes/Dispatcher.php @@ -562,10 +562,17 @@ class DispatcherCore if (preg_match($route['regexp'], $this->request_uri, $m)) { // Route found ! Now fill $_GET with parameters of uri - $controller = $route['controller']; foreach ($m as $k => $v) if (!is_numeric($k)) $_GET[$k] = $v; + + $controller = $route['controller'] ? $route['controller'] : $_GET['controller']; + if (!empty($route['params'])) + foreach ($route['params'] as $k => $v) + $_GET[$k] = $v; + + if (isset($_GET['fc']) && $_GET['fc'] == 'module') + $this->front_controller = self::FC_MODULE; break; }