/**
  * @param Request $request
  * @return BaseController
  */
 public function create(Request $request)
 {
     $route = Route::findRoute($request->getRoutePart(), $request->getRequestType() == 'GET' ? Route::METHOD_GET : Route::METHOD_POST);
     if ($route == null) {
         $route = Route::getDefault();
     }
     $controllerName = "\\App\\Controllers\\" . $route->getControllerName();
     $obj = new $controllerName();
     $obj->setRequest($request);
     $obj->setRoute($route);
     return $obj;
 }
Exemplo n.º 2
0
 public function executeAction()
 {
     if ($this->route->isAuthRequired() && !Authentication::isAuthenticated()) {
         $loginRoute = Route::findRoute(\Config\App\LOGIN_PAGE_ROUTE, Route::METHOD_GET);
         $obj = ControllerHandler::instance()->redirectToRoute($loginRoute, $this->request);
         $action = $loginRoute->getAction();
         $parameters = Route::getRouteParameters($this->route, $this->request);
         return call_user_method_array($action, $obj, $parameters);
     }
     $action = $this->route->getAction();
     $parameters = Route::getRouteParameters($this->route, $this->request);
     return call_user_method_array($action, $this, $parameters);
 }