| @@ -166,8 +166,9 @@ | ||
| 166 | 166 | */ | 
| 167 | 167 | public function sendHeaders() | 
| 168 | 168 |      { | 
| 169 | - foreach($this->headers as $key => $content) | |
| 170 | - header($key.' : '.$content); | |
| 169 | +        foreach($this->headers as $key => $content) {
 | |
| 170 | + header($key.' : '.$content); | |
| 171 | + } | |
| 171 | 172 | http_response_code($this->getStatusCode()); | 
| 172 | 173 | return $this; | 
| 173 | 174 | } | 
| @@ -7,7 +7,7 @@ discard block | ||
| 7 | 7 | * Class Response | 
| 8 | 8 | * @package JetFire\Routing | 
| 9 | 9 | */ | 
| 10 | -class Response implements ResponseInterface{ | |
| 10 | +class Response implements ResponseInterface { | |
| 11 | 11 | |
| 12 | 12 | /** | 
| 13 | 13 | * @var array | 
| @@ -53,7 +53,7 @@ discard block | ||
| 53 | 53 | public static $statusTexts = array( | 
| 54 | 54 | 100 => 'Continue', | 
| 55 | 55 | 101 => 'Switching Protocols', | 
| 56 | - 102 => 'Processing', // RFC2518 | |
| 56 | + 102 => 'Processing', // RFC2518 | |
| 57 | 57 | 200 => 'OK', | 
| 58 | 58 | 201 => 'Created', | 
| 59 | 59 | 202 => 'Accepted', | 
| @@ -61,9 +61,9 @@ discard block | ||
| 61 | 61 | 204 => 'No Content', | 
| 62 | 62 | 205 => 'Reset Content', | 
| 63 | 63 | 206 => 'Partial Content', | 
| 64 | - 207 => 'Multi-Status', // RFC4918 | |
| 65 | - 208 => 'Already Reported', // RFC5842 | |
| 66 | - 226 => 'IM Used', // RFC3229 | |
| 64 | + 207 => 'Multi-Status', // RFC4918 | |
| 65 | + 208 => 'Already Reported', // RFC5842 | |
| 66 | + 226 => 'IM Used', // RFC3229 | |
| 67 | 67 | 300 => 'Multiple Choices', | 
| 68 | 68 | 301 => 'Moved Permanently', | 
| 69 | 69 | 302 => 'Found', | 
| @@ -71,7 +71,7 @@ discard block | ||
| 71 | 71 | 304 => 'Not Modified', | 
| 72 | 72 | 305 => 'Use Proxy', | 
| 73 | 73 | 307 => 'Temporary Redirect', | 
| 74 | - 308 => 'Permanent Redirect', // RFC7238 | |
| 74 | + 308 => 'Permanent Redirect', // RFC7238 | |
| 75 | 75 | 400 => 'Bad Request', | 
| 76 | 76 | 401 => 'Unauthorized', | 
| 77 | 77 | 402 => 'Payment Required', | 
| @@ -90,26 +90,26 @@ discard block | ||
| 90 | 90 | 415 => 'Unsupported Media Type', | 
| 91 | 91 | 416 => 'Range Not Satisfiable', | 
| 92 | 92 | 417 => 'Expectation Failed', | 
| 93 | - 418 => 'I\'m a teapot', // RFC2324 | |
| 94 | - 422 => 'Unprocessable Entity', // RFC4918 | |
| 95 | - 423 => 'Locked', // RFC4918 | |
| 96 | - 424 => 'Failed Dependency', // RFC4918 | |
| 97 | - 425 => 'Reserved for WebDAV advanced collections expired proposal', // RFC2817 | |
| 98 | - 426 => 'Upgrade Required', // RFC2817 | |
| 99 | - 428 => 'Precondition Required', // RFC6585 | |
| 100 | - 429 => 'Too Many Requests', // RFC6585 | |
| 101 | - 431 => 'Request Header Fields Too Large', // RFC6585 | |
| 93 | + 418 => 'I\'m a teapot', // RFC2324 | |
| 94 | + 422 => 'Unprocessable Entity', // RFC4918 | |
| 95 | + 423 => 'Locked', // RFC4918 | |
| 96 | + 424 => 'Failed Dependency', // RFC4918 | |
| 97 | + 425 => 'Reserved for WebDAV advanced collections expired proposal', // RFC2817 | |
| 98 | + 426 => 'Upgrade Required', // RFC2817 | |
| 99 | + 428 => 'Precondition Required', // RFC6585 | |
| 100 | + 429 => 'Too Many Requests', // RFC6585 | |
| 101 | + 431 => 'Request Header Fields Too Large', // RFC6585 | |
| 102 | 102 | 500 => 'Internal Server Error', | 
| 103 | 103 | 501 => 'Not Implemented', | 
| 104 | 104 | 502 => 'Bad Gateway', | 
| 105 | 105 | 503 => 'Service Unavailable', | 
| 106 | 106 | 504 => 'Gateway Timeout', | 
| 107 | 107 | 505 => 'HTTP Version Not Supported', | 
| 108 | - 506 => 'Variant Also Negotiates (Experimental)', // RFC2295 | |
| 109 | - 507 => 'Insufficient Storage', // RFC4918 | |
| 110 | - 508 => 'Loop Detected', // RFC5842 | |
| 111 | - 510 => 'Not Extended', // RFC2774 | |
| 112 | - 511 => 'Network Authentication Required', // RFC6585 | |
| 108 | + 506 => 'Variant Also Negotiates (Experimental)', // RFC2295 | |
| 109 | + 507 => 'Insufficient Storage', // RFC4918 | |
| 110 | + 508 => 'Loop Detected', // RFC5842 | |
| 111 | + 510 => 'Not Extended', // RFC2774 | |
| 112 | + 511 => 'Network Authentication Required', // RFC6585 | |
| 113 | 113 | ); | 
| 114 | 114 | |
| 115 | 115 | /** | 
| @@ -166,7 +166,7 @@ discard block | ||
| 166 | 166 | */ | 
| 167 | 167 | public function sendHeaders() | 
| 168 | 168 |      { | 
| 169 | - foreach($this->headers as $key => $content) | |
| 169 | + foreach ($this->headers as $key => $content) | |
| 170 | 170 | header($key.' : '.$content); | 
| 171 | 171 | http_response_code($this->getStatusCode()); | 
| 172 | 172 | return $this; | 
| @@ -15,7 +15,7 @@ | ||
| 15 | 15 | /** | 
| 16 | 16 | * @param Route $route | 
| 17 | 17 | */ | 
| 18 | - public function __construct(Route $route,ResponseInterface $response); | |
| 18 | + public function __construct(Route $route, ResponseInterface $response); | |
| 19 | 19 | |
| 20 | 20 | /** | 
| 21 | 21 | * @return mixed | 
| @@ -127,7 +127,7 @@ discard block | ||
| 127 | 127 | */ | 
| 128 | 128 | public function setDetail($detail) | 
| 129 | 129 |      { | 
| 130 | - $this->detail = array_merge($detail,$this->detail); | |
| 130 | + $this->detail = array_merge($detail, $this->detail); | |
| 131 | 131 | } | 
| 132 | 132 | |
| 133 | 133 | /** | 
| @@ -173,8 +173,8 @@ discard block | ||
| 173 | 173 | /** | 
| 174 | 174 | * @return array | 
| 175 | 175 | */ | 
| 176 | -    public function getData(){ | |
| 177 | - return (isset($this->getDetail()['data']) && is_array($this->getDetail()['data']))?$this->getDetail()['data']:[]; | |
| 176 | +    public function getData() { | |
| 177 | + return (isset($this->getDetail()['data']) && is_array($this->getDetail()['data'])) ? $this->getDetail()['data'] : []; | |
| 178 | 178 | } | 
| 179 | 179 | |
| 180 | 180 | /** | 
| @@ -52,10 +52,18 @@ discard block | ||
| 52 | 52 | */ | 
| 53 | 53 | public function set($args = []) | 
| 54 | 54 |      { | 
| 55 | - if (isset($args['name'])) $this->name = $args['name']; | |
| 56 | - if (isset($args['callback'])) $this->callback = $args['callback']; | |
| 57 | - if (isset($args['target'])) $this->target = $args['target']; | |
| 58 | - if (isset($args['detail'])) $this->detail = $args['detail']; | |
| 55 | +        if (isset($args['name'])) {
 | |
| 56 | + $this->name = $args['name']; | |
| 57 | + } | |
| 58 | +        if (isset($args['callback'])) {
 | |
| 59 | + $this->callback = $args['callback']; | |
| 60 | + } | |
| 61 | +        if (isset($args['target'])) {
 | |
| 62 | + $this->target = $args['target']; | |
| 63 | + } | |
| 64 | +        if (isset($args['detail'])) {
 | |
| 65 | + $this->detail = $args['detail']; | |
| 66 | + } | |
| 59 | 67 | } | 
| 60 | 68 | |
| 61 | 69 | /** | 
| @@ -145,8 +153,9 @@ discard block | ||
| 145 | 153 | */ | 
| 146 | 154 | public function getTarget($key = null) | 
| 147 | 155 |      { | 
| 148 | - if (!is_null($key)) | |
| 149 | - return isset($this->target[$key]) ? $this->target[$key] : ''; | |
| 156 | +        if (!is_null($key)) {
 | |
| 157 | + return isset($this->target[$key]) ? $this->target[$key] : ''; | |
| 158 | + } | |
| 150 | 159 | return empty($this->target) ? '' : $this->target; | 
| 151 | 160 | } | 
| 152 | 161 | |
| @@ -165,8 +174,9 @@ discard block | ||
| 165 | 174 | */ | 
| 166 | 175 | public function hasTarget($key = null) | 
| 167 | 176 |      { | 
| 168 | - if (!is_null($key)) | |
| 169 | - return isset($this->target[$key]) ? true : false; | |
| 177 | +        if (!is_null($key)) {
 | |
| 178 | + return isset($this->target[$key]) ? true : false; | |
| 179 | + } | |
| 170 | 180 | return empty($this->target) ? false : true; | 
| 171 | 181 | } | 
| 172 | 182 | |
| @@ -64,7 +64,7 @@ | ||
| 64 | 64 | } | 
| 65 | 65 | |
| 66 | 66 | /** | 
| 67 | - * @param $regex | |
| 67 | + * @param string $regex | |
| 68 | 68 | * @return bool | 
| 69 | 69 | */ | 
| 70 | 70 | private function routeMatch($regex) | 
| @@ -125,8 +125,9 @@ discard block | ||
| 125 | 125 |      { | 
| 126 | 126 |          if (substr($this->request['route'], -1) == '*') { | 
| 127 | 127 | $pos = strpos($this->request['route'], '*'); | 
| 128 | - if (substr($this->router->route->getUrl(), 0, $pos) == substr($this->request['route'], 0, $pos) && isset($this->request['params'])) | |
| 129 | - return true; | |
| 128 | +            if (substr($this->router->route->getUrl(), 0, $pos) == substr($this->request['route'], 0, $pos) && isset($this->request['params'])) {
 | |
| 129 | + return true; | |
| 130 | + } | |
| 130 | 131 | } | 
| 131 | 132 |          if (preg_match($regex, $this->router->route->getUrl(), $this->request['parameters'])) { | 
| 132 | 133 | array_shift($this->request['parameters']); | 
| @@ -140,10 +141,11 @@ discard block | ||
| 140 | 141 | */ | 
| 141 | 142 | private function generateTarget() | 
| 142 | 143 |      { | 
| 143 | - if($this->validMethod()) | |
| 144 | - foreach($this->resolver as $resolver) | |
| 144 | +        if($this->validMethod()) {
 | |
| 145 | + foreach($this->resolver as $resolver) | |
| 145 | 146 |                  if (is_array($target = call_user_func_array([$this,$resolver],[$this->router->route->getCallback()]))) { | 
| 146 | - $this->setTarget($target); | |
| 147 | + $this->setTarget($target); | |
| 148 | + } | |
| 147 | 149 | $this->router->response->setStatusCode(202); | 
| 148 | 150 | return true; | 
| 149 | 151 | } | 
| @@ -167,14 +169,18 @@ discard block | ||
| 167 | 169 | */ | 
| 168 | 170 |      private function setCallback(){ | 
| 169 | 171 |          if (isset($this->request['params'])) { | 
| 170 | - if(is_callable($this->request['params'])) | |
| 171 | - $this->router->route->setCallback($this->request['params']); | |
| 172 | -            else { | |
| 172 | +            if(is_callable($this->request['params'])) {
 | |
| 173 | + $this->router->route->setCallback($this->request['params']); | |
| 174 | +            } else { | |
| 173 | 175 | (is_array($this->request['params']) && isset($this->request['params']['use'])) | 
| 174 | 176 | ? $this->router->route->setCallback($this->request['params']['use']) | 
| 175 | 177 | : $this->router->route->setCallback($this->request['params']); | 
| 176 | - if (isset($this->request['params']['name'])) $this->router->route->setName($this->request['params']['name']); | |
| 177 | - if (isset($this->request['params']['method'])) $this->request['params']['method'] = is_array($this->request['params']['method']) ? $this->request['params']['method'] : [$this->request['params']['method']]; | |
| 178 | +                if (isset($this->request['params']['name'])) {
 | |
| 179 | + $this->router->route->setName($this->request['params']['name']); | |
| 180 | + } | |
| 181 | +                if (isset($this->request['params']['method'])) {
 | |
| 182 | + $this->request['params']['method'] = is_array($this->request['params']['method']) ? $this->request['params']['method'] : [$this->request['params']['method']]; | |
| 183 | + } | |
| 178 | 184 | } | 
| 179 | 185 | } | 
| 180 | 186 | } | 
| @@ -184,9 +190,12 @@ discard block | ||
| 184 | 190 | */ | 
| 185 | 191 | public function validMethod() | 
| 186 | 192 |      { | 
| 187 | - if(is_callable($this->request['params']))return true; | |
| 188 | - if (!empty($_SERVER['HTTP_X_REQUESTED_WITH']) && strtolower($_SERVER['HTTP_X_REQUESTED_WITH']) == 'xmlhttprequest') | |
| 189 | - return (isset($this->request['params']['ajax']) && $this->request['params']['ajax'] === true) ? true : false; | |
| 193 | +        if(is_callable($this->request['params'])) {
 | |
| 194 | + return true; | |
| 195 | + } | |
| 196 | +        if (!empty($_SERVER['HTTP_X_REQUESTED_WITH']) && strtolower($_SERVER['HTTP_X_REQUESTED_WITH']) == 'xmlhttprequest') {
 | |
| 197 | + return (isset($this->request['params']['ajax']) && $this->request['params']['ajax'] === true) ? true : false; | |
| 198 | + } | |
| 190 | 199 | $method = (isset($this->request['params']['method'])) ? $this->request['params']['method'] : ['GET']; | 
| 191 | 200 | return (in_array($this->router->route->getMethod(), $method)) ? true : false; | 
| 192 | 201 | } | 
| @@ -250,13 +259,16 @@ discard block | ||
| 250 | 259 |      { | 
| 251 | 260 |          if (is_string($callback) && strpos($callback, '@') !== false) { | 
| 252 | 261 |              $routes = explode('@', $callback); | 
| 253 | - if (!isset($routes[1])) $routes[1] = 'index'; | |
| 262 | +            if (!isset($routes[1])) {
 | |
| 263 | + $routes[1] = 'index'; | |
| 264 | + } | |
| 254 | 265 | $index = isset($this->request['collection_index']) ? $this->request['collection_index'] : 0; | 
| 255 | 266 | $class = (class_exists($routes[0])) | 
| 256 | 267 | ? $routes[0] | 
| 257 | 268 | : $this->router->collection->getRoutes()['ctrl_namespace_'.$index].$routes[0]; | 
| 258 | - if (!class_exists($class)) | |
| 259 | -                throw new \Exception('Class "' . $class . '." is not found'); | |
| 269 | +            if (!class_exists($class)) {
 | |
| 270 | +                            throw new \Exception('Class "' . $class . '." is not found');
 | |
| 271 | + } | |
| 260 | 272 |              if (method_exists($class, $routes[1])) { | 
| 261 | 273 | return [ | 
| 262 | 274 | 'dispatcher' => $this->dispatcher['matchController'], | 
| @@ -283,9 +295,9 @@ discard block | ||
| 283 | 295 | $index = isset($this->request['collection_index']) ? $this->request['collection_index'] : 0; | 
| 284 | 296 |              $viewDir = $this->router->collection->getRoutes('view_dir_' . $index); | 
| 285 | 297 | $target = null; | 
| 286 | -            if (in_array('.' . $extension, $this->router->getConfig()['templateExtension']) && (is_file($fullPath = $viewDir . $path) || is_file($fullPath = $path))) | |
| 287 | - $target = $fullPath; | |
| 288 | -            else { | |
| 298 | +            if (in_array('.' . $extension, $this->router->getConfig()['templateExtension']) && (is_file($fullPath = $viewDir . $path) || is_file($fullPath = $path))) {
 | |
| 299 | + $target = $fullPath; | |
| 300 | +            } else { | |
| 289 | 301 |                  foreach ($this->router->getConfig()['templateExtension'] as $ext) { | 
| 290 | 302 |                      if (is_file($fullPath = $viewDir . $path . $ext) || is_file($fullPath = $path . $ext)) { | 
| 291 | 303 | $target = $fullPath; | 
| @@ -294,8 +306,9 @@ discard block | ||
| 294 | 306 | } | 
| 295 | 307 | } | 
| 296 | 308 | } | 
| 297 | - if(is_null($target)) | |
| 298 | -                throw new \Exception('Template file "' . $path . '" is not found in "' . $viewDir . '"'); | |
| 309 | +            if(is_null($target)) {
 | |
| 310 | +                            throw new \Exception('Template file "' . $path . '" is not found in "' . $viewDir . '"');
 | |
| 311 | + } | |
| 299 | 312 | return [ | 
| 300 | 313 | 'dispatcher' => $this->dispatcher['matchTemplate'], | 
| 301 | 314 | 'template' => $target, | 
| @@ -25,7 +25,7 @@ discard block | ||
| 25 | 25 | /** | 
| 26 | 26 | * @var array | 
| 27 | 27 | */ | 
| 28 | - private $resolver = ['isClosureAndTemplate','isControllerAndTemplate','isTemplate']; | |
| 28 | + private $resolver = ['isClosureAndTemplate', 'isControllerAndTemplate', 'isTemplate']; | |
| 29 | 29 | |
| 30 | 30 | /** | 
| 31 | 31 | * @var array | 
| @@ -34,8 +34,8 @@ discard block | ||
| 34 | 34 | 'isClosure' => 'JetFire\Routing\Dispatcher\ClosureDispatcher', | 
| 35 | 35 | 'isController' => 'JetFire\Routing\Dispatcher\ControllerDispatcher', | 
| 36 | 36 | 'isTemplate' => 'JetFire\Routing\Dispatcher\TemplateDispatcher', | 
| 37 | - 'isControllerAndTemplate' => ['JetFire\Routing\Dispatcher\ControllerDispatcher','JetFire\Routing\Dispatcher\TemplateDispatcher'], | |
| 38 | - 'isClosureAndTemplate' => ['JetFire\Routing\Dispatcher\ClosureDispatcher','JetFire\Routing\Dispatcher\TemplateDispatcher'], | |
| 37 | + 'isControllerAndTemplate' => ['JetFire\Routing\Dispatcher\ControllerDispatcher', 'JetFire\Routing\Dispatcher\TemplateDispatcher'], | |
| 38 | + 'isClosureAndTemplate' => ['JetFire\Routing\Dispatcher\ClosureDispatcher', 'JetFire\Routing\Dispatcher\TemplateDispatcher'], | |
| 39 | 39 | ]; | 
| 40 | 40 | |
| 41 | 41 | /** | 
| @@ -49,14 +49,14 @@ discard block | ||
| 49 | 49 | /** | 
| 50 | 50 | * @param array $resolver | 
| 51 | 51 | */ | 
| 52 | -    public function setResolver($resolver = []){ | |
| 52 | +    public function setResolver($resolver = []) { | |
| 53 | 53 | $this->resolver = $resolver; | 
| 54 | 54 | } | 
| 55 | 55 | |
| 56 | 56 | /** | 
| 57 | 57 | * @param string $resolver | 
| 58 | 58 | */ | 
| 59 | -    public function addResolver($resolver){ | |
| 59 | +    public function addResolver($resolver) { | |
| 60 | 60 | $this->resolver[] = $resolver; | 
| 61 | 61 | } | 
| 62 | 62 | |
| @@ -71,7 +71,7 @@ discard block | ||
| 71 | 71 | /** | 
| 72 | 72 | * @param array $dispatcher | 
| 73 | 73 | */ | 
| 74 | -    public function setDispatcher($dispatcher = []){ | |
| 74 | +    public function setDispatcher($dispatcher = []) { | |
| 75 | 75 | $this->dispatcher = $dispatcher; | 
| 76 | 76 | } | 
| 77 | 77 | |
| @@ -81,7 +81,7 @@ discard block | ||
| 81 | 81 | * @return mixed|void | 
| 82 | 82 | * @internal param array $dispatcher | 
| 83 | 83 | */ | 
| 84 | -    public function addDispatcher($method,$class){ | |
| 84 | +    public function addDispatcher($method, $class) { | |
| 85 | 85 | $this->dispatcher[$method] = $class; | 
| 86 | 86 | } | 
| 87 | 87 | |
| @@ -92,12 +92,12 @@ discard block | ||
| 92 | 92 |      { | 
| 93 | 93 | $this->request = []; | 
| 94 | 94 |          for ($i = 0; $i < $this->router->collection->countRoutes; ++$i) { | 
| 95 | -            $this->request['prefix'] = ($this->router->collection->getRoutes('prefix_' . $i) != '') ? $this->router->collection->getRoutes('prefix_' . $i) : ''; | |
| 96 | -            foreach ($this->router->collection->getRoutes('routes_' . $i) as $route => $params) { | |
| 95 | +            $this->request['prefix'] = ($this->router->collection->getRoutes('prefix_'.$i) != '') ? $this->router->collection->getRoutes('prefix_'.$i) : ''; | |
| 96 | +            foreach ($this->router->collection->getRoutes('routes_'.$i) as $route => $params) { | |
| 97 | 97 | $this->request['params'] = $params; | 
| 98 | 98 | $this->request['collection_index'] = $i; | 
| 99 | -                $this->request['route'] = preg_replace_callback('#:([\w]+)#', [$this, 'paramMatch'], '/' . trim(trim($this->request['prefix'], '/') . '/' . trim($route, '/'), '/')); | |
| 100 | -                if ($this->routeMatch('#^' . $this->request['route'] . '$#')) { | |
| 99 | +                $this->request['route'] = preg_replace_callback('#:([\w]+)#', [$this, 'paramMatch'], '/'.trim(trim($this->request['prefix'], '/').'/'.trim($route, '/'), '/')); | |
| 100 | +                if ($this->routeMatch('#^'.$this->request['route'].'$#')) { | |
| 101 | 101 | $this->setCallback(); | 
| 102 | 102 | return $this->generateTarget(); | 
| 103 | 103 | } | 
| @@ -114,7 +114,7 @@ discard block | ||
| 114 | 114 |      { | 
| 115 | 115 |          if (is_array($this->request['params']) && isset($this->request['params']['arguments'][$match[1]])) { | 
| 116 | 116 |              $this->request['params']['arguments'][$match[1]] = str_replace('(', '(?:', $this->request['params']['arguments'][$match[1]]); | 
| 117 | -            return '(' . $this->request['params']['arguments'][$match[1]] . ')'; | |
| 117 | +            return '('.$this->request['params']['arguments'][$match[1]].')'; | |
| 118 | 118 | } | 
| 119 | 119 | return '([^/]+)'; | 
| 120 | 120 | } | 
| @@ -142,9 +142,9 @@ discard block | ||
| 142 | 142 | */ | 
| 143 | 143 | private function generateTarget() | 
| 144 | 144 |      { | 
| 145 | - if($this->validMethod()) | |
| 146 | - foreach($this->resolver as $resolver) | |
| 147 | -                if (is_array($target = call_user_func_array([$this,$resolver],[$this->router->route->getCallback()]))) { | |
| 145 | + if ($this->validMethod()) | |
| 146 | + foreach ($this->resolver as $resolver) | |
| 147 | +                if (is_array($target = call_user_func_array([$this, $resolver], [$this->router->route->getCallback()]))) { | |
| 148 | 148 | $this->setTarget($target); | 
| 149 | 149 | $this->router->response->setStatusCode(202); | 
| 150 | 150 | return true; | 
| @@ -156,7 +156,7 @@ discard block | ||
| 156 | 156 | /** | 
| 157 | 157 | * @param array $target | 
| 158 | 158 | */ | 
| 159 | -    public function setTarget($target = []){ | |
| 159 | +    public function setTarget($target = []) { | |
| 160 | 160 | $index = isset($this->request['collection_index']) ? $this->request['collection_index'] : 0; | 
| 161 | 161 | $this->router->route->setDetail($this->request); | 
| 162 | 162 | $this->router->route->setTarget($target); | 
| @@ -167,9 +167,9 @@ discard block | ||
| 167 | 167 | /** | 
| 168 | 168 | * | 
| 169 | 169 | */ | 
| 170 | -    private function setCallback(){ | |
| 170 | +    private function setCallback() { | |
| 171 | 171 |          if (isset($this->request['params'])) { | 
| 172 | - if(is_callable($this->request['params'])) | |
| 172 | + if (is_callable($this->request['params'])) | |
| 173 | 173 | $this->router->route->setCallback($this->request['params']); | 
| 174 | 174 |              else { | 
| 175 | 175 | (is_array($this->request['params']) && isset($this->request['params']['use'])) | 
| @@ -186,7 +186,7 @@ discard block | ||
| 186 | 186 | */ | 
| 187 | 187 | public function validMethod() | 
| 188 | 188 |      { | 
| 189 | - if(is_callable($this->request['params']))return true; | |
| 189 | + if (is_callable($this->request['params']))return true; | |
| 190 | 190 | if (!empty($_SERVER['HTTP_X_REQUESTED_WITH']) && strtolower($_SERVER['HTTP_X_REQUESTED_WITH']) == 'xmlhttprequest') | 
| 191 | 191 | return (isset($this->request['params']['ajax']) && $this->request['params']['ajax'] === true) ? true : false; | 
| 192 | 192 | $method = (isset($this->request['params']['method'])) ? $this->request['params']['method'] : ['GET']; | 
| @@ -198,10 +198,10 @@ discard block | ||
| 198 | 198 | * @return array|bool | 
| 199 | 199 | * @throws \Exception | 
| 200 | 200 | */ | 
| 201 | -    public function isClosureAndTemplate($callback){ | |
| 202 | -        if(is_array($cls = $this->isClosure($callback))) { | |
| 201 | +    public function isClosureAndTemplate($callback) { | |
| 202 | +        if (is_array($cls = $this->isClosure($callback))) { | |
| 203 | 203 |              if (is_array($this->request['params']) && isset($this->request['params']['template']) && is_array($tpl = $this->isTemplate($this->request['params']['template']))) { | 
| 204 | - return array_merge(array_merge($cls, $tpl),[ | |
| 204 | + return array_merge(array_merge($cls, $tpl), [ | |
| 205 | 205 | 'dispatcher' => $this->dispatcher['isClosureAndTemplate'] | 
| 206 | 206 | ]); | 
| 207 | 207 | } | 
| @@ -215,10 +215,10 @@ discard block | ||
| 215 | 215 | * @return array|bool | 
| 216 | 216 | * @throws \Exception | 
| 217 | 217 | */ | 
| 218 | -    public function isControllerAndTemplate($callback){ | |
| 219 | -        if(is_array($ctrl = $this->isController($callback))) { | |
| 218 | +    public function isControllerAndTemplate($callback) { | |
| 219 | +        if (is_array($ctrl = $this->isController($callback))) { | |
| 220 | 220 |              if (is_array($this->request['params']) && isset($this->request['params']['template']) && is_array($tpl = $this->isTemplate($this->request['params']['template']))) { | 
| 221 | - return array_merge(array_merge($ctrl, $tpl),[ | |
| 221 | + return array_merge(array_merge($ctrl, $tpl), [ | |
| 222 | 222 | 'dispatcher' => $this->dispatcher['isControllerAndTemplate'] | 
| 223 | 223 | ]); | 
| 224 | 224 | } | 
| @@ -258,7 +258,7 @@ discard block | ||
| 258 | 258 | ? $routes[0] | 
| 259 | 259 | : $this->router->collection->getRoutes()['ctrl_namespace_'.$index].$routes[0]; | 
| 260 | 260 | if (!class_exists($class)) | 
| 261 | -                throw new \Exception('Class "' . $class . '." is not found'); | |
| 261 | +                throw new \Exception('Class "'.$class.'." is not found'); | |
| 262 | 262 |              if (method_exists($class, $routes[1])) { | 
| 263 | 263 | return [ | 
| 264 | 264 | 'dispatcher' => $this->dispatcher['isController'], | 
| @@ -267,7 +267,7 @@ discard block | ||
| 267 | 267 | 'action' => $routes[1] | 
| 268 | 268 | ]; | 
| 269 | 269 | } | 
| 270 | -            throw new \Exception('The required method "' . $routes[1] . '" is not found in "' . $class . '"'); | |
| 270 | +            throw new \Exception('The required method "'.$routes[1].'" is not found in "'.$class.'"'); | |
| 271 | 271 | } | 
| 272 | 272 | return false; | 
| 273 | 273 | } | 
| @@ -279,25 +279,25 @@ discard block | ||
| 279 | 279 | */ | 
| 280 | 280 | public function isTemplate($callback) | 
| 281 | 281 |      { | 
| 282 | -        if(is_string($callback)) { | |
| 282 | +        if (is_string($callback)) { | |
| 283 | 283 | $path = trim($callback, '/'); | 
| 284 | 284 | $extension = substr(strrchr($path, "."), 1); | 
| 285 | 285 | $index = isset($this->request['collection_index']) ? $this->request['collection_index'] : 0; | 
| 286 | -            $viewDir = $this->router->collection->getRoutes('view_dir_' . $index); | |
| 286 | +            $viewDir = $this->router->collection->getRoutes('view_dir_'.$index); | |
| 287 | 287 | $target = null; | 
| 288 | -            if (in_array('.' . $extension, $this->router->getConfig()['templateExtension']) && (is_file($fullPath = $viewDir . $path) || is_file($fullPath = $path))) | |
| 288 | +            if (in_array('.'.$extension, $this->router->getConfig()['templateExtension']) && (is_file($fullPath = $viewDir.$path) || is_file($fullPath = $path))) | |
| 289 | 289 | $target = $fullPath; | 
| 290 | 290 |              else { | 
| 291 | 291 |                  foreach ($this->router->getConfig()['templateExtension'] as $ext) { | 
| 292 | -                    if (is_file($fullPath = $viewDir . $path . $ext) || is_file($fullPath = $path . $ext)) { | |
| 292 | +                    if (is_file($fullPath = $viewDir.$path.$ext) || is_file($fullPath = $path.$ext)) { | |
| 293 | 293 | $target = $fullPath; | 
| 294 | 294 | $extension = substr(strrchr($ext, "."), 1); | 
| 295 | 295 | break; | 
| 296 | 296 | } | 
| 297 | 297 | } | 
| 298 | 298 | } | 
| 299 | - if(is_null($target)) | |
| 300 | -                throw new \Exception('Template file "' . $path . '" is not found in "' . $viewDir . '"'); | |
| 299 | + if (is_null($target)) | |
| 300 | +                throw new \Exception('Template file "'.$path.'" is not found in "'.$viewDir.'"'); | |
| 301 | 301 | return [ | 
| 302 | 302 | 'dispatcher' => $this->dispatcher['isTemplate'], | 
| 303 | 303 | 'template' => $target, | 
| @@ -41,5 +41,5 @@ | ||
| 41 | 41 | * @param $class | 
| 42 | 42 | * @return mixed | 
| 43 | 43 | */ | 
| 44 | - public function addDispatcher($method,$class); | |
| 44 | + public function addDispatcher($method, $class); | |
| 45 | 45 | } | 
| @@ -33,7 +33,9 @@ discard block | ||
| 33 | 33 | */ | 
| 34 | 34 | public function __construct($routes = null, $options = []) | 
| 35 | 35 |      { | 
| 36 | - if (!is_null($routes) || !empty($options)) $this->addRoutes($routes, $options); | |
| 36 | +        if (!is_null($routes) || !empty($options)) {
 | |
| 37 | + $this->addRoutes($routes, $options); | |
| 38 | + } | |
| 37 | 39 | } | 
| 38 | 40 | |
| 39 | 41 | /** | 
| @@ -43,10 +45,16 @@ discard block | ||
| 43 | 45 | public function addRoutes($routes = null, $options = []) | 
| 44 | 46 |      { | 
| 45 | 47 |          if(!is_null($routes) && !is_array($routes)) { | 
| 46 | - if (strpos($routes, '.php') === false) $routes = trim($routes, '/') . '/'; | |
| 47 | - if (is_file($routes . '/routes.php') && is_array($routesFile = include $routes . '/routes.php')) $routes = $routesFile; | |
| 48 | - elseif (is_file($routes) && is_array($routesFile = include $routes)) $routes = $routesFile; | |
| 49 | -            else throw new \InvalidArgumentException('Argument for "' . get_called_class() . '" constructor is not recognized. Expected argument array or file containing array but "'.$routes.'" given'); | |
| 48 | +            if (strpos($routes, '.php') === false) {
 | |
| 49 | + $routes = trim($routes, '/') . '/'; | |
| 50 | + } | |
| 51 | +            if (is_file($routes . '/routes.php') && is_array($routesFile = include $routes . '/routes.php')) {
 | |
| 52 | + $routes = $routesFile; | |
| 53 | +            } elseif (is_file($routes) && is_array($routesFile = include $routes)) {
 | |
| 54 | + $routes = $routesFile; | |
| 55 | +            } else {
 | |
| 56 | +                throw new \InvalidArgumentException('Argument for "' . get_called_class() . '" constructor is not recognized. Expected argument array or file containing array but "'.$routes.'" given');
 | |
| 57 | + } | |
| 50 | 58 | } | 
| 51 | 59 | $this->routes['routes_' . $this->countRoutes] = is_array($routes) ? $routes : []; | 
| 52 | 60 | $this->routes['view_dir_' . $this->countRoutes] = (isset($options['view_dir']) && !empty($options['view_dir'])) ? rtrim($options['view_dir'], '/') . '/' : ''; | 
| @@ -62,8 +70,9 @@ discard block | ||
| 62 | 70 | */ | 
| 63 | 71 | public function getRoutes($key = null) | 
| 64 | 72 |      { | 
| 65 | - if(!is_null($key)) | |
| 66 | - return isset($this->routes[$key])?$this->routes[$key]:''; | |
| 73 | +        if(!is_null($key)) {
 | |
| 74 | + return isset($this->routes[$key])?$this->routes[$key]:''; | |
| 75 | + } | |
| 67 | 76 | return $this->routes; | 
| 68 | 77 | } | 
| 69 | 78 | |
| @@ -74,12 +83,18 @@ discard block | ||
| 74 | 83 |      { | 
| 75 | 84 |          if (is_array($args)) { | 
| 76 | 85 | $nbrArgs = count($args); | 
| 77 | - for ($i = 0; $i < $nbrArgs; ++$i) | |
| 78 | - $this->routes['prefix_' . $i] = '/' . trim($args[$i], '/'); | |
| 79 | - } elseif (is_string($args)) | |
| 80 | - for ($i = 0; $i < $this->countRoutes; ++$i) | |
| 81 | - $this->routes['prefix_' . $i] = '/' . trim($args, '/'); | |
| 82 | - if($this->countRoutes == 0)$this->countRoutes++; | |
| 86 | +            for ($i = 0; $i < $nbrArgs; ++$i) {
 | |
| 87 | + $this->routes['prefix_' . $i] = '/' . trim($args[$i], '/'); | |
| 88 | + } | |
| 89 | +        } elseif (is_string($args)) {
 | |
| 90 | + for ($i = 0; | |
| 91 | + } | |
| 92 | +        $i < $this->countRoutes; ++$i) {
 | |
| 93 | + $this->routes['prefix_' . $i] = '/' . trim($args, '/'); | |
| 94 | + } | |
| 95 | +        if($this->countRoutes == 0) {
 | |
| 96 | + $this->countRoutes++; | |
| 97 | + } | |
| 83 | 98 | } | 
| 84 | 99 | |
| 85 | 100 | /** | 
| @@ -94,10 +109,14 @@ discard block | ||
| 94 | 109 | $this->routes['view_dir_' . $i] = (isset($args[$i]['view_dir']) && !empty($args[$i]['view_dir'])) ? rtrim($args[$i]['view_dir'], '/') . '/' : ''; | 
| 95 | 110 | $this->routes['ctrl_namespace_' . $i] = (isset($args[$i]['ctrl_namespace']) && !empty($args[$i]['ctrl_namespace'])) ? trim($args[$i]['ctrl_namespace'], '\\') . '\\' : ''; | 
| 96 | 111 | $this->routes['prefix_' . $i] = (isset($args[$i]['prefix']) && !empty($args[$i]['prefix'])) ? '/'.trim($args[$i]['prefix'], '/') : ''; | 
| 97 | - if(!isset($this->routes['routes_' . $i]))$this->routes['routes_' . $i] = []; | |
| 112 | +                if(!isset($this->routes['routes_' . $i])) {
 | |
| 113 | + $this->routes['routes_' . $i] = []; | |
| 114 | + } | |
| 98 | 115 | } | 
| 99 | 116 | } | 
| 100 | - if($this->countRoutes == 0)$this->countRoutes++; | |
| 117 | +        if($this->countRoutes == 0) {
 | |
| 118 | + $this->countRoutes++; | |
| 119 | + } | |
| 101 | 120 | } | 
| 102 | 121 | |
| 103 | 122 | /** | 
| @@ -106,12 +125,16 @@ discard block | ||
| 106 | 125 | */ | 
| 107 | 126 | public function setMiddleware($middleware) | 
| 108 | 127 |      { | 
| 109 | - if (is_string($middleware)) $middleware = rtrim($middleware, '/'); | |
| 110 | - if (is_array($middleware)) | |
| 111 | - $this->middleware = $middleware; | |
| 112 | - elseif (is_file($middleware) && is_array($mid = include $middleware)) | |
| 113 | - $this->middleware = $mid; | |
| 114 | -        else throw new \InvalidArgumentException('Accepted argument for setMiddleware are array and array file'); | |
| 128 | +        if (is_string($middleware)) {
 | |
| 129 | + $middleware = rtrim($middleware, '/'); | |
| 130 | + } | |
| 131 | +        if (is_array($middleware)) {
 | |
| 132 | + $this->middleware = $middleware; | |
| 133 | +        } elseif (is_file($middleware) && is_array($mid = include $middleware)) {
 | |
| 134 | + $this->middleware = $mid; | |
| 135 | +        } else {
 | |
| 136 | +            throw new \InvalidArgumentException('Accepted argument for setMiddleware are array and array file');
 | |
| 137 | + } | |
| 115 | 138 | } | 
| 116 | 139 | |
| 117 | 140 | /** | 
| @@ -123,14 +146,15 @@ discard block | ||
| 123 | 146 | $count = 0; | 
| 124 | 147 |          for ($i = 0; $i < $this->countRoutes; ++$i) { | 
| 125 | 148 | $prefix = (isset($this->routes['prefix_' . $i])) ? $this->routes['prefix_' . $i] : ''; | 
| 126 | - if (isset($this->routes['routes_' . $i])) | |
| 127 | -                foreach ($this->routes['routes_' . $i] as $route => $dependencies) { | |
| 149 | +            if (isset($this->routes['routes_' . $i])) {
 | |
| 150 | +                            foreach ($this->routes['routes_' . $i] as $route => $dependencies) { | |
| 128 | 151 | if (is_array($dependencies) && isset($dependencies['use'])) | 
| 129 | - $use = (is_callable($dependencies['use'])) ? 'closure-' . $count : trim($dependencies['use'], '/'); | |
| 130 | - elseif(!is_array($dependencies)) | |
| 131 | - $use = (is_callable($dependencies)) ? 'closure-' . $count : trim($dependencies, '/'); | |
| 132 | - else | |
| 133 | - $use = $route; | |
| 152 | + $use = (is_callable($dependencies['use'])) ? 'closure-' . $count : trim($dependencies['use'], '/'); | |
| 153 | +            } elseif(!is_array($dependencies)) {
 | |
| 154 | + $use = (is_callable($dependencies)) ? 'closure-' . $count : trim($dependencies, '/'); | |
| 155 | +                    } else {
 | |
| 156 | + $use = $route; | |
| 157 | + } | |
| 134 | 158 | (!is_callable($dependencies) && isset($dependencies['name'])) ? $this->routesByName[$use . '#' . $dependencies['name']] = $root . $prefix . $route : $this->routesByName[$use] = $root . $prefix . $route; | 
| 135 | 159 | $count++; | 
| 136 | 160 | } | 
| @@ -147,9 +171,14 @@ discard block | ||
| 147 | 171 |      { | 
| 148 | 172 |          foreach ($this->routesByName as $key => $route) { | 
| 149 | 173 |              $param = explode('#', $key); | 
| 150 | -            foreach ($params as $key2 => $value) $route = str_replace(':' . $key2, $value, $route); | |
| 151 | - if ($param[0] == trim($name, '/')) return $route; | |
| 152 | - else if (isset($param[1]) && $param[1] == $name) return $route; | |
| 174 | +            foreach ($params as $key2 => $value) {
 | |
| 175 | +                $route = str_replace(':' . $key2, $value, $route);
 | |
| 176 | + } | |
| 177 | +            if ($param[0] == trim($name, '/')) {
 | |
| 178 | + return $route; | |
| 179 | +            } else if (isset($param[1]) && $param[1] == $name) {
 | |
| 180 | + return $route; | |
| 181 | + } | |
| 153 | 182 | } | 
| 154 | 183 | return null; | 
| 155 | 184 | } | 
| @@ -42,17 +42,17 @@ discard block | ||
| 42 | 42 | */ | 
| 43 | 43 | public function addRoutes($routes = null, $options = []) | 
| 44 | 44 |      { | 
| 45 | -        if(!is_null($routes) && !is_array($routes)) { | |
| 46 | - if (strpos($routes, '.php') === false) $routes = trim($routes, '/') . '/'; | |
| 47 | - if (is_file($routes . '/routes.php') && is_array($routesFile = include $routes . '/routes.php')) $routes = $routesFile; | |
| 45 | +        if (!is_null($routes) && !is_array($routes)) { | |
| 46 | + if (strpos($routes, '.php') === false) $routes = trim($routes, '/').'/'; | |
| 47 | + if (is_file($routes.'/routes.php') && is_array($routesFile = include $routes.'/routes.php')) $routes = $routesFile; | |
| 48 | 48 | elseif (is_file($routes) && is_array($routesFile = include $routes)) $routes = $routesFile; | 
| 49 | -            else throw new \InvalidArgumentException('Argument for "' . get_called_class() . '" constructor is not recognized. Expected argument array or file containing array but "'.$routes.'" given'); | |
| 49 | +            else throw new \InvalidArgumentException('Argument for "'.get_called_class().'" constructor is not recognized. Expected argument array or file containing array but "'.$routes.'" given'); | |
| 50 | 50 | } | 
| 51 | - $this->routes['routes_' . $this->countRoutes] = is_array($routes) ? $routes : []; | |
| 52 | - $this->routes['view_dir_' . $this->countRoutes] = (isset($options['view_dir']) && !empty($options['view_dir'])) ? rtrim($options['view_dir'], '/') . '/' : ''; | |
| 53 | - $this->routes['ctrl_namespace_' . $this->countRoutes] = (isset($options['ctrl_namespace']) && !empty($options['ctrl_namespace'])) ? trim($options['ctrl_namespace'], '\\') . '\\' : ''; | |
| 54 | - $this->routes['prefix_' . $this->countRoutes] = (isset($options['prefix']) && !empty($options['prefix'])) ? '/' . trim($options['prefix'], '/') : ''; | |
| 55 | - $this->routes['block_' . $this->countRoutes] = (isset($options['block']) && !empty($options['block'])) ? rtrim($options['block'], '/') . '/' : $this->routes['view_dir_' . $this->countRoutes]; | |
| 51 | + $this->routes['routes_'.$this->countRoutes] = is_array($routes) ? $routes : []; | |
| 52 | + $this->routes['view_dir_'.$this->countRoutes] = (isset($options['view_dir']) && !empty($options['view_dir'])) ? rtrim($options['view_dir'], '/').'/' : ''; | |
| 53 | + $this->routes['ctrl_namespace_'.$this->countRoutes] = (isset($options['ctrl_namespace']) && !empty($options['ctrl_namespace'])) ? trim($options['ctrl_namespace'], '\\').'\\' : ''; | |
| 54 | + $this->routes['prefix_'.$this->countRoutes] = (isset($options['prefix']) && !empty($options['prefix'])) ? '/'.trim($options['prefix'], '/') : ''; | |
| 55 | + $this->routes['block_'.$this->countRoutes] = (isset($options['block']) && !empty($options['block'])) ? rtrim($options['block'], '/').'/' : $this->routes['view_dir_'.$this->countRoutes]; | |
| 56 | 56 | $this->countRoutes++; | 
| 57 | 57 | } | 
| 58 | 58 | |
| @@ -62,8 +62,8 @@ discard block | ||
| 62 | 62 | */ | 
| 63 | 63 | public function getRoutes($key = null) | 
| 64 | 64 |      { | 
| 65 | - if(!is_null($key)) | |
| 66 | - return isset($this->routes[$key])?$this->routes[$key]:''; | |
| 65 | + if (!is_null($key)) | |
| 66 | + return isset($this->routes[$key]) ? $this->routes[$key] : ''; | |
| 67 | 67 | return $this->routes; | 
| 68 | 68 | } | 
| 69 | 69 | |
| @@ -75,11 +75,11 @@ discard block | ||
| 75 | 75 |          if (is_array($args)) { | 
| 76 | 76 | $nbrArgs = count($args); | 
| 77 | 77 | for ($i = 0; $i < $nbrArgs; ++$i) | 
| 78 | - $this->routes['prefix_' . $i] = '/' . trim($args[$i], '/'); | |
| 78 | + $this->routes['prefix_'.$i] = '/'.trim($args[$i], '/'); | |
| 79 | 79 | } elseif (is_string($args)) | 
| 80 | 80 | for ($i = 0; $i < $this->countRoutes; ++$i) | 
| 81 | - $this->routes['prefix_' . $i] = '/' . trim($args, '/'); | |
| 82 | - if($this->countRoutes == 0)$this->countRoutes++; | |
| 81 | + $this->routes['prefix_'.$i] = '/'.trim($args, '/'); | |
| 82 | + if ($this->countRoutes == 0)$this->countRoutes++; | |
| 83 | 83 | } | 
| 84 | 84 | |
| 85 | 85 | /** | 
| @@ -89,15 +89,15 @@ discard block | ||
| 89 | 89 |      { | 
| 90 | 90 | $nbrArgs = count($args); | 
| 91 | 91 |          for ($i = 0; $i < $nbrArgs; ++$i) { | 
| 92 | -            if(is_array($args[$i])){ | |
| 93 | - $this->routes['block_' . $i] = (isset($args[$i]['block']) && !empty($args[$i]['block'])) ? rtrim($args[$i]['block'], '/') . '/' : ''; | |
| 94 | - $this->routes['view_dir_' . $i] = (isset($args[$i]['view_dir']) && !empty($args[$i]['view_dir'])) ? rtrim($args[$i]['view_dir'], '/') . '/' : ''; | |
| 95 | - $this->routes['ctrl_namespace_' . $i] = (isset($args[$i]['ctrl_namespace']) && !empty($args[$i]['ctrl_namespace'])) ? trim($args[$i]['ctrl_namespace'], '\\') . '\\' : ''; | |
| 96 | - $this->routes['prefix_' . $i] = (isset($args[$i]['prefix']) && !empty($args[$i]['prefix'])) ? '/'.trim($args[$i]['prefix'], '/') : ''; | |
| 97 | - if(!isset($this->routes['routes_' . $i]))$this->routes['routes_' . $i] = []; | |
| 92 | +            if (is_array($args[$i])) { | |
| 93 | + $this->routes['block_'.$i] = (isset($args[$i]['block']) && !empty($args[$i]['block'])) ? rtrim($args[$i]['block'], '/').'/' : ''; | |
| 94 | + $this->routes['view_dir_'.$i] = (isset($args[$i]['view_dir']) && !empty($args[$i]['view_dir'])) ? rtrim($args[$i]['view_dir'], '/').'/' : ''; | |
| 95 | + $this->routes['ctrl_namespace_'.$i] = (isset($args[$i]['ctrl_namespace']) && !empty($args[$i]['ctrl_namespace'])) ? trim($args[$i]['ctrl_namespace'], '\\').'\\' : ''; | |
| 96 | + $this->routes['prefix_'.$i] = (isset($args[$i]['prefix']) && !empty($args[$i]['prefix'])) ? '/'.trim($args[$i]['prefix'], '/') : ''; | |
| 97 | + if (!isset($this->routes['routes_'.$i]))$this->routes['routes_'.$i] = []; | |
| 98 | 98 | } | 
| 99 | 99 | } | 
| 100 | - if($this->countRoutes == 0)$this->countRoutes++; | |
| 100 | + if ($this->countRoutes == 0)$this->countRoutes++; | |
| 101 | 101 | } | 
| 102 | 102 | |
| 103 | 103 | /** | 
| @@ -119,19 +119,19 @@ discard block | ||
| 119 | 119 | */ | 
| 120 | 120 | public function generateRoutesPath() | 
| 121 | 121 |      { | 
| 122 | -        $root = 'http://' . (isset($_SERVER['HTTP_HOST'])?$_SERVER['HTTP_HOST']:$_SERVER['SERVER_NAME']) . str_replace('/index.php', '', $_SERVER['SCRIPT_NAME']); | |
| 122 | +        $root = 'http://'.(isset($_SERVER['HTTP_HOST']) ? $_SERVER['HTTP_HOST'] : $_SERVER['SERVER_NAME']).str_replace('/index.php', '', $_SERVER['SCRIPT_NAME']); | |
| 123 | 123 | $count = 0; | 
| 124 | 124 |          for ($i = 0; $i < $this->countRoutes; ++$i) { | 
| 125 | - $prefix = (isset($this->routes['prefix_' . $i])) ? $this->routes['prefix_' . $i] : ''; | |
| 126 | - if (isset($this->routes['routes_' . $i])) | |
| 127 | -                foreach ($this->routes['routes_' . $i] as $route => $dependencies) { | |
| 125 | + $prefix = (isset($this->routes['prefix_'.$i])) ? $this->routes['prefix_'.$i] : ''; | |
| 126 | + if (isset($this->routes['routes_'.$i])) | |
| 127 | +                foreach ($this->routes['routes_'.$i] as $route => $dependencies) { | |
| 128 | 128 | if (is_array($dependencies) && isset($dependencies['use'])) | 
| 129 | - $use = (is_callable($dependencies['use'])) ? 'closure-' . $count : trim($dependencies['use'], '/'); | |
| 130 | - elseif(!is_array($dependencies)) | |
| 131 | - $use = (is_callable($dependencies)) ? 'closure-' . $count : trim($dependencies, '/'); | |
| 129 | + $use = (is_callable($dependencies['use'])) ? 'closure-'.$count : trim($dependencies['use'], '/'); | |
| 130 | + elseif (!is_array($dependencies)) | |
| 131 | + $use = (is_callable($dependencies)) ? 'closure-'.$count : trim($dependencies, '/'); | |
| 132 | 132 | else | 
| 133 | 133 | $use = $route; | 
| 134 | - (!is_callable($dependencies) && isset($dependencies['name'])) ? $this->routesByName[$use . '#' . $dependencies['name']] = $root . $prefix . $route : $this->routesByName[$use] = $root . $prefix . $route; | |
| 134 | + (!is_callable($dependencies) && isset($dependencies['name'])) ? $this->routesByName[$use.'#'.$dependencies['name']] = $root.$prefix.$route : $this->routesByName[$use] = $root.$prefix.$route; | |
| 135 | 135 | $count++; | 
| 136 | 136 | } | 
| 137 | 137 | } | 
| @@ -147,7 +147,7 @@ discard block | ||
| 147 | 147 |      { | 
| 148 | 148 |          foreach ($this->routesByName as $key => $route) { | 
| 149 | 149 |              $param = explode('#', $key); | 
| 150 | -            foreach ($params as $key2 => $value) $route = str_replace(':' . $key2, $value, $route); | |
| 150 | +            foreach ($params as $key2 => $value) $route = str_replace(':'.$key2, $value, $route); | |
| 151 | 151 | if ($param[0] == trim($name, '/')) return $route; | 
| 152 | 152 | else if (isset($param[1]) && $param[1] == $name) return $route; | 
| 153 | 153 | } | 
| @@ -76,8 +76,8 @@ discard block | ||
| 76 | 76 | * @param $class | 
| 77 | 77 | * @return mixed | 
| 78 | 78 | */ | 
| 79 | -    private function callHandler($class){ | |
| 80 | - $instance = call_user_func($this->router->getConfig()['di'],$class); | |
| 79 | +    private function callHandler($class) { | |
| 80 | + $instance = call_user_func($this->router->getConfig()['di'], $class); | |
| 81 | 81 |          if (method_exists($instance, 'handle')) { | 
| 82 | 82 | $reflectionMethod = new ReflectionMethod($instance, 'handle'); | 
| 83 | 83 | $dependencies = []; | 
| @@ -93,8 +93,8 @@ discard block | ||
| 93 | 93 | * @param $class | 
| 94 | 94 | * @return Route|RouteCollection|Router|mixed | 
| 95 | 95 | */ | 
| 96 | -    private function getClass($class){ | |
| 97 | -        switch($class){ | |
| 96 | +    private function getClass($class) { | |
| 97 | +        switch ($class) { | |
| 98 | 98 | case 'JetFire\Routing\Route': | 
| 99 | 99 | return $this->router->route; | 
| 100 | 100 | break; | 
| @@ -105,7 +105,7 @@ discard block | ||
| 105 | 105 | return $this->router->collection; | 
| 106 | 106 | break; | 
| 107 | 107 | default: | 
| 108 | - return call_user_func_array($this->router->getConfig()['di'],[$class]); | |
| 108 | + return call_user_func_array($this->router->getConfig()['di'], [$class]); | |
| 109 | 109 | break; | 
| 110 | 110 | } | 
| 111 | 111 | } | 
| @@ -29,9 +29,10 @@ discard block | ||
| 29 | 29 | */ | 
| 30 | 30 | public function globalMiddleware() | 
| 31 | 31 |      { | 
| 32 | - if (isset($this->router->collection->middleware['global_middleware'])) | |
| 33 | - foreach ($this->router->collection->middleware['global_middleware'] as $class) | |
| 34 | - if (class_exists($class)) $this->callHandler($class); | |
| 32 | +        if (isset($this->router->collection->middleware['global_middleware'])) {
 | |
| 33 | + foreach ($this->router->collection->middleware['global_middleware'] as $class) | |
| 34 | + if (class_exists($class)) $this->callHandler($class); | |
| 35 | + } | |
| 35 | 36 | } | 
| 36 | 37 | |
| 37 | 38 | /** | 
| @@ -39,9 +40,10 @@ discard block | ||
| 39 | 40 | */ | 
| 40 | 41 | public function blockMiddleware() | 
| 41 | 42 |      { | 
| 42 | - if (isset($this->router->collection->middleware['block_middleware'])) | |
| 43 | -            if (isset($this->router->collection->middleware['block_middleware'][$this->router->route->getTarget('block')]) && class_exists($this->router->collection->middleware['block_middleware'][$this->router->route->getTarget('block')])) { | |
| 44 | -                $class = $this->router->collection->middleware['block_middleware'][$this->router->route->getTarget('block')]; | |
| 43 | +        if (isset($this->router->collection->middleware['block_middleware'])) {
 | |
| 44 | +                    if (isset($this->router->collection->middleware['block_middleware'][$this->router->route->getTarget('block')]) && class_exists($this->router->collection->middleware['block_middleware'][$this->router->route->getTarget('block')])) { | |
| 45 | +                $class = $this->router->collection->middleware['block_middleware'][$this->router->route->getTarget('block')];
 | |
| 46 | + } | |
| 45 | 47 | $this->callHandler($class); | 
| 46 | 48 | } | 
| 47 | 49 | } | 
| @@ -65,9 +67,10 @@ discard block | ||
| 65 | 67 | */ | 
| 66 | 68 | public function routeMiddleware() | 
| 67 | 69 |      { | 
| 68 | - if (isset($this->router->collection->middleware['route_middleware'])) | |
| 69 | -            if (isset($this->router->route->getPath()['middleware']) && class_exists($this->router->collection->middleware['route_middleware'][$this->router->route->getPath()['middleware']])) { | |
| 70 | - $class = $this->router->collection->middleware['route_middleware'][$this->router->route->getPath()['middleware']]; | |
| 70 | +        if (isset($this->router->collection->middleware['route_middleware'])) {
 | |
| 71 | +                    if (isset($this->router->route->getPath()['middleware']) && class_exists($this->router->collection->middleware['route_middleware'][$this->router->route->getPath()['middleware']])) { | |
| 72 | + $class = $this->router->collection->middleware['route_middleware'][$this->router->route->getPath()['middleware']]; | |
| 73 | + } | |
| 71 | 74 | $this->callHandler($class); | 
| 72 | 75 | } | 
| 73 | 76 | } | 
| @@ -81,9 +84,10 @@ discard block | ||
| 81 | 84 |          if (method_exists($instance, 'handle')) { | 
| 82 | 85 | $reflectionMethod = new ReflectionMethod($instance, 'handle'); | 
| 83 | 86 | $dependencies = []; | 
| 84 | - foreach ($reflectionMethod->getParameters() as $arg) | |
| 85 | - if (!is_null($arg->getClass())) | |
| 86 | - $dependencies[] = $this->getClass($arg->getClass()->name); | |
| 87 | +            foreach ($reflectionMethod->getParameters() as $arg) {
 | |
| 88 | + if (!is_null($arg->getClass())) | |
| 89 | + $dependencies[] = $this->getClass($arg->getClass()->name); | |
| 90 | + } | |
| 87 | 91 | $dependencies = array_merge($dependencies, [$this->router->route]); | 
| 88 | 92 | $reflectionMethod->invokeArgs($instance, $dependencies); | 
| 89 | 93 | } | 
| @@ -42,14 +42,19 @@ discard block | ||
| 42 | 42 |      { | 
| 43 | 43 |          $reflectionMethod = new ReflectionMethod($this->route->getTarget('controller'), $this->route->getTarget('action')); | 
| 44 | 44 | $dependencies = []; | 
| 45 | - foreach ($reflectionMethod->getParameters() as $arg) | |
| 46 | - if (!is_null($arg->getClass())) | |
| 47 | -                $dependencies[] = call_user_func_array($this->route->getTarget('di'),[$arg->getClass()->name]); | |
| 45 | +        foreach ($reflectionMethod->getParameters() as $arg) {
 | |
| 46 | + if (!is_null($arg->getClass())) | |
| 47 | +                $dependencies[] = call_user_func_array($this->route->getTarget('di'),[$arg->getClass()->name]);
 | |
| 48 | + } | |
| 48 | 49 | $dependencies = array_merge($dependencies,($this->route->getParameters() == '') ? [] : $this->route->getParameters()); | 
| 49 | - if ($this->response->getStatusCode() == 202) | |
| 50 | - $this->response->setStatusCode(200); | |
| 51 | -        if(is_array($content = $reflectionMethod->invokeArgs($this->getController(), $dependencies))) $this->route->addTarget('data',$content); | |
| 52 | - elseif(!is_null($content))$this->response->setContent($content); | |
| 50 | +        if ($this->response->getStatusCode() == 202) {
 | |
| 51 | + $this->response->setStatusCode(200); | |
| 52 | + } | |
| 53 | +        if(is_array($content = $reflectionMethod->invokeArgs($this->getController(), $dependencies))) {
 | |
| 54 | +            $this->route->addTarget('data',$content);
 | |
| 55 | +        } elseif(!is_null($content)) {
 | |
| 56 | + $this->response->setContent($content); | |
| 57 | + } | |
| 53 | 58 | } | 
| 54 | 59 | |
| 55 | 60 | |
| @@ -60,8 +65,9 @@ discard block | ||
| 60 | 65 | private function getController() | 
| 61 | 66 |      { | 
| 62 | 67 |          $reflector = new ReflectionClass($this->route->getTarget('controller')); | 
| 63 | - if (!$reflector->isInstantiable()) | |
| 64 | -            throw new \Exception('Target [' . $this->route->getTarget('controller') . '] is not instantiable.'); | |
| 68 | +        if (!$reflector->isInstantiable()) {
 | |
| 69 | +                    throw new \Exception('Target [' . $this->route->getTarget('controller') . '] is not instantiable.');
 | |
| 70 | + } | |
| 65 | 71 | $constructor = $reflector->getConstructor(); | 
| 66 | 72 |          if (is_null($constructor)) { | 
| 67 | 73 |              $class = $this->route->getTarget('controller'); | 
| @@ -27,7 +27,7 @@ discard block | ||
| 27 | 27 | /** | 
| 28 | 28 | * @param Route $route | 
| 29 | 29 | */ | 
| 30 | - public function __construct(Route $route,ResponseInterface $response) | |
| 30 | + public function __construct(Route $route, ResponseInterface $response) | |
| 31 | 31 |      { | 
| 32 | 32 | $this->route = $route; | 
| 33 | 33 | $this->response = $response; | 
| @@ -44,12 +44,12 @@ discard block | ||
| 44 | 44 | $dependencies = []; | 
| 45 | 45 | foreach ($reflectionMethod->getParameters() as $arg) | 
| 46 | 46 | if (!is_null($arg->getClass())) | 
| 47 | -                $dependencies[] = call_user_func_array($this->route->getTarget('di'),[$arg->getClass()->name]); | |
| 48 | - $dependencies = array_merge($dependencies,($this->route->getParameters() == '') ? [] : $this->route->getParameters()); | |
| 47 | +                $dependencies[] = call_user_func_array($this->route->getTarget('di'), [$arg->getClass()->name]); | |
| 48 | + $dependencies = array_merge($dependencies, ($this->route->getParameters() == '') ? [] : $this->route->getParameters()); | |
| 49 | 49 | if ($this->response->getStatusCode() == 202) | 
| 50 | 50 | $this->response->setStatusCode(200); | 
| 51 | -        if(is_array($content = $reflectionMethod->invokeArgs($this->getController(), $dependencies))) $this->route->addTarget('data',$content); | |
| 52 | - elseif(!is_null($content))$this->response->setContent($content); | |
| 51 | +        if (is_array($content = $reflectionMethod->invokeArgs($this->getController(), $dependencies))) $this->route->addTarget('data', $content); | |
| 52 | + elseif (!is_null($content))$this->response->setContent($content); | |
| 53 | 53 | } | 
| 54 | 54 | |
| 55 | 55 | |
| @@ -61,17 +61,17 @@ discard block | ||
| 61 | 61 |      { | 
| 62 | 62 |          $reflector = new ReflectionClass($this->route->getTarget('controller')); | 
| 63 | 63 | if (!$reflector->isInstantiable()) | 
| 64 | -            throw new \Exception('Target [' . $this->route->getTarget('controller') . '] is not instantiable.'); | |
| 64 | +            throw new \Exception('Target ['.$this->route->getTarget('controller').'] is not instantiable.'); | |
| 65 | 65 | $constructor = $reflector->getConstructor(); | 
| 66 | 66 |          if (is_null($constructor)) { | 
| 67 | 67 |              $class = $this->route->getTarget('controller'); | 
| 68 | -            return call_user_func_array($this->route->getTarget('di'),[$class]); | |
| 68 | +            return call_user_func_array($this->route->getTarget('di'), [$class]); | |
| 69 | 69 | } | 
| 70 | 70 | $dependencies = $constructor->getParameters(); | 
| 71 | 71 | $arguments = []; | 
| 72 | 72 |          foreach ($dependencies as $dep) { | 
| 73 | 73 | $class = $dep->getClass()->name; | 
| 74 | -            array_push($arguments, call_user_func_array($this->route->getTarget('di'),[$class])); | |
| 74 | +            array_push($arguments, call_user_func_array($this->route->getTarget('di'), [$class])); | |
| 75 | 75 | } | 
| 76 | 76 | return $reflector->newInstanceArgs($arguments); | 
| 77 | 77 | } | 
| @@ -25,7 +25,7 @@ discard block | ||
| 25 | 25 | /** | 
| 26 | 26 | * @param Route $route | 
| 27 | 27 | */ | 
| 28 | - public function __construct(Route $route,ResponseInterface $response) | |
| 28 | + public function __construct(Route $route, ResponseInterface $response) | |
| 29 | 29 |      { | 
| 30 | 30 | $this->route = $route; | 
| 31 | 31 | $this->response = $response; | 
| @@ -42,8 +42,8 @@ discard block | ||
| 42 | 42 | $this->response->setHeaders(['Content-Type' => 'text/html']); | 
| 43 | 43 | } | 
| 44 | 44 | $params = ($this->route->getParameters() == '') ? [] : $this->route->getParameters(); | 
| 45 | -        if(is_array($content = call_user_func_array($this->route->getTarget('closure'), $params))) $this->route->addTarget('data',$content); | |
| 46 | - elseif(!is_null($content)) $this->response->setContent($content); | |
| 45 | +        if (is_array($content = call_user_func_array($this->route->getTarget('closure'), $params))) $this->route->addTarget('data', $content); | |
| 46 | + elseif (!is_null($content)) $this->response->setContent($content); | |
| 47 | 47 | } | 
| 48 | 48 | |
| 49 | 49 | } | 
| @@ -42,8 +42,11 @@ | ||
| 42 | 42 | $this->response->setHeaders(['Content-Type' => 'text/html']); | 
| 43 | 43 | } | 
| 44 | 44 | $params = ($this->route->getParameters() == '') ? [] : $this->route->getParameters(); | 
| 45 | -        if(is_array($content = call_user_func_array($this->route->getTarget('closure'), $params))) $this->route->addTarget('data',$content); | |
| 46 | - elseif(!is_null($content)) $this->response->setContent($content); | |
| 45 | +        if(is_array($content = call_user_func_array($this->route->getTarget('closure'), $params))) {
 | |
| 46 | +            $this->route->addTarget('data',$content);
 | |
| 47 | +        } elseif(!is_null($content)) {
 | |
| 48 | + $this->response->setContent($content); | |
| 49 | + } | |
| 47 | 50 | } | 
| 48 | 51 | |
| 49 | 52 | } |