Example #1
0
 public function run()
 {
     if (file_exists(CONTROLLERS . $this->_controller . 'Ctrl.php')) {
         require_once CONTROLLERS . $this->_controller . 'Ctrl.php';
         if (class_exists($this->_controller)) {
             $controller = new $this->_controller($this->cnx, $this->cnxComum);
             $action = $this->_action;
             if (method_exists($controller, $action)) {
                 $controller->{$action}($this->_parameters, $this->_data);
             } else {
                 //metodo nao existe
                 parent::route($this->_url, $this->_explode);
             }
         } else {
             //classe nao existe
             //parent::route($this->_url,$this->_explode);
             //http_response_code(404);
             header("HTTP/1.0 404 Not Found");
             echo "Classe não encontrada: " . $this->_controller;
         }
     } else {
         //arq controller nao encontrado
         //parent::route($this->_url,$this->_explode);
         //echo phpinfo();
         //http_response_code(404);
         header("HTTP/1.0 404 Not Found");
         echo "Controller n enc";
     }
 }
Example #2
0
 public static function createInstance()
 {
     if (self::$route === null) {
         self::$route = new Route();
     }
     return self::$route;
 }
Example #3
0
 public static function processView($params, &$view)
 {
     if (!isset($params['get'])) {
         return '';
     }
     $params['get'] = Route::route($params['get'], $params);
     if (!Request::isAvailable($params['get'], 'get')) {
         return;
     }
     $vars_backup = $view->_tpl_vars;
     if (is_array($params)) {
         foreach ($params as $name => $value) {
             $view->assign($name, $value);
         }
     }
     list($controller, $action, $data) = Url::route($params['get'], 'get');
     $handler = Url::handler($controller, $action);
     if (empty($handler)) {
         return '';
     }
     if (!empty($params['display'])) {
         $handler .= '.' . $params['display'];
     }
     $result = $view->fetch('Modules/' . $handler . '.tpl');
     $view->_tpl_vars = $vars_backup;
     if (!empty($params['wrapper']) && !empty($result)) {
         return '<div class="' . $params['wrapper'] . '">' . $result . '</div>';
     }
     return $result;
 }
Example #4
0
 private static function changeRouteToRegex()
 {
     self::getParametersName();
     self::$route = preg_replace('#{[\\w]+}#', '[\\w]+', self::$route);
     self::$route = preg_replace('#\\/#', '\\/', self::$route);
     self::$route = '^' . self::$route . '$';
 }
Example #5
0
 /**
  * Launches the calculation of the current Route.
  *
  * @return array The route
  */
 public static function getRoute()
 {
     $route = self::$route;
     if (!empty($route)) {
         return $route;
     }
     $route = self::parseURL(self::$query);
     $clean_query = rtrim(self::$query, '/');
     self::$route = $route;
     return $route;
 }
Example #6
0
 public static function run($resource, $method)
 {
     $top = count(self::$stack) - 1;
     if ($top < 0) {
         return;
     }
     $isExternal = $top == 0;
     $resource = Route::route($resource, self::$stack[$top]);
     if (!self::isAvailable($resource, $method)) {
         if ($isExternal) {
             $resource = 'errors/access-denied';
         } else {
             return '';
         }
     }
     list($controller, $action, $data) = Url::route($resource, $method);
     self::$stack[$top] = array_merge(self::$stack[$top], $data);
     $handler = Url::handler($controller, $action);
     if ($isExternal) {
         Middleware::processBefore($resource, $action, self::$stack[$top], $method);
         self::runHandler($handler);
         Middleware::processAfter($resource, $action, self::$stack[$top], $method);
     } else {
         if (!self::runInternalHandler($handler)) {
             return '';
         }
     }
     if (!empty(self::$stack[$top]['display'])) {
         $handler .= '.' . self::$stack[$top]['display'];
     }
     if ($isExternal && self::$response->code == '404 Not Found') {
         list($controller, $action, $data) = Url::route('errors/not-found', 'get');
         $handler = Url::handler($controller, $action);
         self::$response->result("error", self::$response->code);
     }
     if ($isExternal && self::$response->code == '403 Forbidden') {
         list($controller, $action, $data) = Url::route('errors/not-found', 'get');
         $handler = Url::handler($controller, $action);
         self::$response->result("error", self::$response->code);
     }
     $r = self::$response->fetch($handler, $isExternal);
     if ($isExternal) {
         Language::rewrite($r);
     }
     return $r;
 }
Example #7
0
 /**
  * Show the form for creating a new resource.
  *
  * @return \Illuminate\Http\Response
  */
 public function create(AddProduct $request)
 {
     Product::create($request->all());
     return Route::route('');
 }