Code Coverage |
||||||||||
Classes and Traits |
Functions and Methods |
Lines |
||||||||
| Total | |
0.00% |
0 / 1 |
|
0.00% |
0 / 1 |
CRAP | |
33.33% |
7 / 21 |
| Router | |
0.00% |
0 / 1 |
|
0.00% |
0 / 1 |
12.41 | |
33.33% |
7 / 21 |
| getRequestCallback | |
0.00% |
0 / 1 |
12.41 | |
33.33% |
7 / 21 |
|||
| <?php | |
| namespace Luxian\Http; | |
| use Luxian\Container\ContainerInterface; | |
| use Luxian\Controller; | |
| class Router | |
| { | |
| public function getRequestCallback( | |
| Request $request, | |
| ContainerInterface $container | |
| ): callable | |
| { | |
| $request_uri_path = $request->getRequestUriPath(); | |
| if ($request_uri_path === '/login' || $request_uri_path === '/') { | |
| $controller = $container->getLoginController($request); | |
| return static function () use ($controller) { | |
| return $controller->getLoginPage(); | |
| }; | |
| } | |
| if ($request_uri_path === '/register') { | |
| $controller = $container->getRegisterController($request); | |
| return static function () use ($controller) { | |
| return $controller->getRegisterPage(); | |
| }; | |
| } | |
| if ($request_uri_path === '/info') { | |
| $controller = $container->getInfoController($request); | |
| return static function () use ($controller) { | |
| return $controller->phpinfo(); | |
| }; | |
| } | |
| // Default controller | |
| $controller = $container->getIndexController($request); | |
| $indexCallback = static function () use ($controller) { | |
| return $controller->getIndexPage(); | |
| }; | |
| return $indexCallback; | |
| } | |
| } |