Ejemplo n.º 1
0
 /**
  * @param Request       $request
  * @param Response      $response
  * @param callable|NULL $next
  *
  * @return Response
  */
 public function __invoke(Request $request, Response $response, callable $next = NULL)
 {
     $elapsed_time = elapsed_time_since_request();
     $response->getBody()->write("<div>Elapsed time : {$elapsed_time}</div>" . PHP_EOL);
     // delegate to parent
     return parent::__invoke($request, $response, $next);
 }
Ejemplo n.º 2
0
 /**
  * Launches the prerequisites to using the application
  */
 public function run()
 {
     require_once ROOT . '/core/autoloader/Autoloader.php';
     $paths = (require_once ROOT . '/app/config/paths.php');
     $autoloader = new Autoloader($paths);
     $autoloader->start();
     $config = (require ROOT . '/app/config/app.php');
     define('DEBUG', Config::get()->read('debug'));
     if (!DEBUG) {
         error_reporting(0);
     } else {
         ini_set('display_errors', 'on');
         error_reporting(E_ALL);
     }
     session_cache_expire(Config::get()->read('session'));
     session_start();
     require_once ROOT . '/core/helpers.php';
     $router = new Router(isset($_GET['url']) ? $_GET['url'] : null);
     require_once ROOT . '/app/routes.php';
     $this->router = $router;
     $middleware = new Middleware();
     $middleware->load();
     $router->run();
 }
Ejemplo n.º 3
0
 /**
  * Routing Middleware entry point.
  *
  * Route determination and execution is handled entirely by this object.
  *
  * @param Request       $request
  * @param Response      $response
  * @param callable|NULL $next
  *
  * @return Response
  */
 public function __invoke(Request $request, Response $response, callable $next = NULL)
 {
     // we need to get the routing object here due to the strict
     // middleware __invoke method signature.
     $this->routing = $this->forge->make(Routing::class);
     // evaluate the route and return state
     list($status, $action, $input) = $this->routing->evaluate_route($this->routing->match());
     // verify that the route is valid
     $error_response = $this->routing->getRouteError($response, $status);
     // has an error been detected?
     if (is_null($error_response)) {
         // No, so execute the route
         return $this->routing->executeRouteAction($input, $action) ? parent::__invoke($request, $response, $next) : $response;
     } else {
         // otherwise return the error response
         return $error_response;
     }
 }
Ejemplo n.º 4
0
 /**
  * @param Request  $request
  * @param Response $response
  * @param callable $next
  *
  * @return Response
  */
 public function __invoke(Request $request, Response $response, callable $next = NULL)
 {
     $response->getBody()->write('<div>End of Line.</div>' . PHP_EOL);
     // delegate to parent
     return parent::__invoke($request, $response, $next);
 }
Ejemplo n.º 5
0
 /**
  * @param Request       $request
  * @param Response      $response
  * @param callable|NULL $next
  *
  * @return Response
  */
 public function __invoke(Request $request, Response $response, callable $next = NULL)
 {
     $msg = $this->logged_in ? "<div>You are logged in!</div>" : "<div>You need to login.</div>";
     $response->getBody()->write($msg);
     return $this->logged_in ? parent::__invoke($request, $response, $next) : $response;
 }