From: Andrey Kutejko Date: Sat, 17 Dec 2016 18:37:24 +0000 (+0100) Subject: add project to controller X-Git-Tag: 0.6~38 X-Git-Url: https://git.andy128k.dev/?a=commitdiff_plain;h=3bd79a2fab9b7e01dde29e062409b0ed29d18a96;p=ipf.git add project to controller --- diff --git a/ipf/controller/base.php b/ipf/controller/base.php index 916b4a3..6e0b7cc 100644 --- a/ipf/controller/base.php +++ b/ipf/controller/base.php @@ -2,7 +2,15 @@ class IPF_Controller { - protected $request, $params; + /** @var IPF_Project */ + protected $project; + protected $request; + protected $params; + + function __construct(IPF_Project $project) + { + $this->project = $project; + } function process($action, $request, $matches) { @@ -25,6 +33,7 @@ class IPF_Controller if ($response) return $response; } + return null; } protected function after($action, $response) @@ -48,4 +57,3 @@ class IPF_Controller return $filters; } } - diff --git a/ipf/middleware/dispatch.php b/ipf/middleware/dispatch.php index 2dbd456..abfe8f4 100644 --- a/ipf/middleware/dispatch.php +++ b/ipf/middleware/dispatch.php @@ -4,7 +4,7 @@ class IPF_Dispatch_Middleware extends IPF_Middleware { function processRequest($request) { - $router = \IPF_Project::getInstance()->router; + $router = $this->project->router; $m = $router->match($request); if (!$m) { @@ -16,11 +16,10 @@ class IPF_Dispatch_Middleware extends IPF_Middleware try { $controller = $route->controller(); - $controller = new $controller; + $controller = new $controller($this->project); return $controller->process($route->action(), $request, $match); } catch (IPF_Router_Shortcut $e) { return $e->response($request); } } } -