public function __construct() { $app = App::getInstance(); // On initialise l'objet Request if ($_ENV['USE_ROUTES']) { require '../Config/routes.php'; $this->request = Router::run(new Request($app)); } else { $this->request = new Request($app); } // On parse l'url (définition du controller, action,...) Router::parse($this->request); // On affiche les erreurs ? Debug::set(); // On charge le bon controller try { $controller = $this->loadController(); } catch (SwithException $e) { (new SwithError(['message' => "Le controller {$this->request->controller} est introuvable", "title" => "Controlleur introuvable"]))->display(); } if (method_exists($controller, "beforeRender")) { $controller->beforeRender(); } // On appelle la fonction $action = $this->request->getAction(); $availablesActions = array_diff(get_class_methods($controller), get_class_methods(get_parent_class($controller))); if (in_array($action, $availablesActions)) { call_user_func_array([$controller, $action], $this->request->params); } else { (new SwithError(['message' => "Le controller {$this->request->controller} n'a pas de methode {$action}", "title" => "Methode introuvable"]))->display(); } $controller->render($controller->view); }
function __construct() { LoaderJavascript::add("debug", "controller.init", Conf::$debug); LoaderJavascript::add("test", "controller.init"); $this->debug = new Debug($this); $this->debug->handle_errors(); if (!Conf::$install) { $this->roleUser(); } $this->request = new Request(); Router::parse($this->request->url, $this->request); }
function __construct() { $this->request = new Request(); Router::parse($this->request->url, $this->request); $controller = $this->loadController(); $action = $this->request->action; foreach ($this->request->params as $param) { $this->parametre .= $param . ", "; } $this->parametre = rtrim($this->parametre, ", "); if (empty($this->parametre)) { $controller->{$action}(); } else { $controller->{$action}($this->parametre); } }