/**
* Global Route /module/controller/action
* @param MvcEvent $e
*/
public function onRoute(MvcEvent $e)
{
$matches = $e->getRouteMatch();
$module = $matches->getParam('module');
$controller = $matches->getParam('controller');
if ($module && $controller && strpos($controller, '\\') === false) {
$matches->setParam(self::ORIGINAL_CONTROLLER, $controller);
$controllerLoader = $e->getApplication()->getServiceManager()->get('ControllerManager');
$ctrlClass = $this->convertName($module) . '\\Controller\\';
$ctrlClass .= $this->convertName($controller);
$controller = $ctrlClass;
$matches->setParam('controller', $controller);
$ctrlClass .= 'Controller';
if (!$controllerLoader->has($controller) && class_exists($ctrlClass)) {
$controllerLoader->setInvokableClass($controller, $ctrlClass);
$e->setController($controller);
$e->setControllerClass($ctrlClass);
}
}
}