From 42737940a981113725e11ac1399c77e3e3d22938 Mon Sep 17 00:00:00 2001 From: Franck Allimant Date: Thu, 16 Jan 2014 19:35:12 +0100 Subject: [PATCH] The router id is now configurable via setters and getters to allow modules to use their own router. --- .../Controller/Admin/BaseAdminController.php | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/core/lib/Thelia/Controller/Admin/BaseAdminController.php b/core/lib/Thelia/Controller/Admin/BaseAdminController.php index 1ef329dd1..0e4252eba 100755 --- a/core/lib/Thelia/Controller/Admin/BaseAdminController.php +++ b/core/lib/Thelia/Controller/Admin/BaseAdminController.php @@ -49,6 +49,21 @@ class BaseAdminController extends BaseController { const TEMPLATE_404 = "404"; + /** + * The current router identifier. The default is router.admin. Modules may use + * setCurrentRouter() method to pass their own router, and use the route related + * methods of this class. + */ + private $currentRouter = "router.admin"; + + protected function getCurrentRouter() { + return $this->currentRouter; + } + + protected function setCurrentRouter($routerId) { + $this->currentRouter = $routerId; + } + /** * Helper to append a message to the admin log. * @@ -242,7 +257,7 @@ class BaseAdminController extends BaseController protected function getRoute($routeId, $parameters = array(), $referenceType = Router::ABSOLUTE_URL) { return $this->getRouteFromRouter( - 'router.admin', + $this->currentRouter, $routeId, $parameters, $referenceType