Skip to content
Extraits de code Groupes Projets
Valider c8c787a3 rédigé par Matthieu Napoli's avatar Matthieu Napoli
Parcourir les fichiers

The FrontController now uses the container to create controllers (i.e. DI in controllers)

parent 10b58b36
Aucune branche associée trouvée
Aucune étiquette associée trouvée
Aucune requête de fusion associée trouvée
......@@ -19,7 +19,6 @@ use Piwik\Plugin\Report;
use Piwik\Plugin\Widgets;
use Piwik\Plugins\CoreAdminHome\CustomLogo;
use Piwik\Session;
use Piwik\Plugins\CoreHome\Controller as CoreHomeController;
/**
* This singleton dispatches requests to the appropriate plugin Controller.
......@@ -113,6 +112,8 @@ class FrontController extends Singleton
protected function makeController($module, $action, &$parameters)
{
$container = StaticContainer::getContainer();
$controllerClassName = $this->getClassNameController($module);
// TRY TO FIND ACTION IN CONTROLLER
......@@ -120,7 +121,7 @@ class FrontController extends Singleton
$class = $this->getClassNameController($module);
/** @var $controller Controller */
$controller = new $class;
$controller = $container->get($class);
$controllerAction = $action;
if ($controllerAction === false) {
......@@ -146,7 +147,7 @@ class FrontController extends Singleton
$parameters['widgetModule'] = $module;
$parameters['widgetMethod'] = $action;
return array(new CoreHomeController(), 'renderWidget');
return array($container->get('Piwik\Plugins\CoreHome\Controller'), 'renderWidget');
}
// TRY TO FIND ACTION IN REPORT
......@@ -157,7 +158,7 @@ class FrontController extends Singleton
$parameters['reportModule'] = $module;
$parameters['reportAction'] = $action;
return array(new CoreHomeController(), 'renderReportWidget');
return array($container->get('Piwik\Plugins\CoreHome\Controller'), 'renderReportWidget');
}
if (!empty($action) && Report::PREFIX_ACTION_IN_MENU === substr($action, 0, strlen(Report
......@@ -169,7 +170,7 @@ class FrontController extends Singleton
$parameters['reportModule'] = $module;
$parameters['reportAction'] = $reportAction;
return array(new CoreHomeController(), 'renderReportMenu');
return array($container->get('Piwik\Plugins\CoreHome\Controller'), 'renderReportMenu');
}
}
......
0% Chargement en cours ou .
You are about to add 0 people to the discussion. Proceed with caution.
Terminez d'abord l'édition de ce message.
Veuillez vous inscrire ou vous pour commenter