Completed
Push — master ( d1c5d4...5d4ad8 )
by Sinnarasa
05:27
created
src/Routing/Matcher/ArrayMatcher.php 1 patch
Braces   +46 added lines, -26 removed lines patch added patch discarded remove patch
@@ -102,7 +102,9 @@  discard block
 block discarded – undo
102 102
                     $this->request['route'] = preg_replace_callback('#:([\w]+)#', [$this, 'paramMatch'], '/' . trim(trim($this->request['prefix'], '/') . '/' . trim($route, '/'), '/'));
103 103
                     if ($this->routeMatch('#^' . $this->request['route'] . '$#')) {
104 104
                         $this->setCallback();
105
-                        if(!is_null($response = $this->generateTarget())) return $response;
105
+                        if(!is_null($response = $this->generateTarget())) {
106
+                            return $response;
107
+                        }
106 108
                     }
107 109
                 }
108 110
             }
@@ -117,10 +119,12 @@  discard block
 block discarded – undo
117 119
     private function checkSubdomain($route){
118 120
         $url = (isset($_SERVER['REQUEST_SCHEME']) ? $_SERVER['REQUEST_SCHEME'] : 'http') . '://' . ($host = (isset($_SERVER['HTTP_HOST']) ? $_SERVER['HTTP_HOST'] : $_SERVER['SERVER_NAME']));
119 121
         $domain = $this->router->collection->getDomain($url);
120
-        if(!empty($this->request['subdomain']) && $route[0] == '/') $route = trim($this->request['subdomain'],'.').'.'.$domain.$route;
122
+        if(!empty($this->request['subdomain']) && $route[0] == '/') {
123
+            $route = trim($this->request['subdomain'],'.').'.'.$domain.$route;
124
+        }
121 125
         if($route[0] == '/'){
122 126
             return ($host != $domain) ? false : true;
123
-        }elseif($route[0] != '/' && $host != $domain){
127
+        } elseif($route[0] != '/' && $host != $domain){
124 128
             $route = substr($route, 0, strpos($route, "/"));
125 129
             $route = str_replace('{host}', $domain, $route);
126 130
             $route = preg_replace_callback('#{subdomain}#', [$this, 'subdomainMatch'], $route);
@@ -165,8 +169,9 @@  discard block
 block discarded – undo
165 169
     {
166 170
         if (substr($this->request['route'], -1) == '*') {
167 171
             $pos = strpos($this->request['route'], '*');
168
-            if (substr($this->router->route->getUrl(), 0, $pos) == substr($this->request['route'], 0, $pos) && isset($this->request['params']))
169
-                return true;
172
+            if (substr($this->router->route->getUrl(), 0, $pos) == substr($this->request['route'], 0, $pos) && isset($this->request['params'])) {
173
+                            return true;
174
+            }
170 175
         }
171 176
         if (preg_match($regex, $this->router->route->getUrl(), $this->request['parameters'])) {
172 177
             array_shift($this->request['parameters']);
@@ -184,8 +189,9 @@  discard block
 block discarded – undo
184 189
             foreach ($this->resolver as $resolver) {
185 190
                 if (is_array($target = call_user_func_array([$this, $resolver], [$this->router->route->getCallback()]))) {
186 191
                     $this->setTarget($target);
187
-                    if ($this->router->middleware->globalMiddleware() === false || $this->router->middleware->blockMiddleware() === false || $this->router->middleware->classMiddleware() === false || $this->router->middleware->routeMiddleware() === false)
188
-                        return null;
192
+                    if ($this->router->middleware->globalMiddleware() === false || $this->router->middleware->blockMiddleware() === false || $this->router->middleware->classMiddleware() === false || $this->router->middleware->routeMiddleware() === false) {
193
+                                            return null;
194
+                    }
189 195
                     $this->router->response->setStatusCode(202);
190 196
                     return true;
191 197
                 }
@@ -212,14 +218,18 @@  discard block
 block discarded – undo
212 218
      */
213 219
     private function setCallback(){
214 220
         if (isset($this->request['params'])) {
215
-            if(is_callable($this->request['params']))
216
-                $this->router->route->setCallback($this->request['params']);
217
-            else {
221
+            if(is_callable($this->request['params'])) {
222
+                            $this->router->route->setCallback($this->request['params']);
223
+            } else {
218 224
                 (is_array($this->request['params']) && isset($this->request['params']['use']))
219 225
                     ? $this->router->route->setCallback($this->request['params']['use'])
220 226
                     : $this->router->route->setCallback($this->request['params']);
221
-                if (isset($this->request['params']['name'])) $this->router->route->setName($this->request['params']['name']);
222
-                if (isset($this->request['params']['method'])) $this->request['params']['method'] = is_array($this->request['params']['method']) ? $this->request['params']['method'] : [$this->request['params']['method']];
227
+                if (isset($this->request['params']['name'])) {
228
+                    $this->router->route->setName($this->request['params']['name']);
229
+                }
230
+                if (isset($this->request['params']['method'])) {
231
+                    $this->request['params']['method'] = is_array($this->request['params']['method']) ? $this->request['params']['method'] : [$this->request['params']['method']];
232
+                }
223 233
             }
224 234
         }
225 235
     }
@@ -229,9 +239,12 @@  discard block
 block discarded – undo
229 239
      */
230 240
     public function validMethod()
231 241
     {
232
-        if(is_callable($this->request['params']))return true;
233
-        if (!empty($_SERVER['HTTP_X_REQUESTED_WITH']) && strtolower($_SERVER['HTTP_X_REQUESTED_WITH']) == 'xmlhttprequest')
234
-            return (isset($this->request['params']['ajax']) && $this->request['params']['ajax'] === true) ? true : false;
242
+        if(is_callable($this->request['params'])) {
243
+            return true;
244
+        }
245
+        if (!empty($_SERVER['HTTP_X_REQUESTED_WITH']) && strtolower($_SERVER['HTTP_X_REQUESTED_WITH']) == 'xmlhttprequest') {
246
+                    return (isset($this->request['params']['ajax']) && $this->request['params']['ajax'] === true) ? true : false;
247
+        }
235 248
         $method = (isset($this->request['params']['method'])) ? $this->request['params']['method'] : ['GET'];
236 249
         return (in_array($this->router->route->getMethod(), $method)) ? true : false;
237 250
     }
@@ -295,20 +308,25 @@  discard block
 block discarded – undo
295 308
     {
296 309
         if (is_string($callback) && strpos($callback, '@') !== false) {
297 310
             $routes = explode('@', $callback);
298
-            if (!isset($routes[1])) $routes[1] = 'index';
311
+            if (!isset($routes[1])) {
312
+                $routes[1] = 'index';
313
+            }
299 314
             if ($routes[1] == '{method}'){
300 315
                 $this->request['parameters'] = explode('/',str_replace(str_replace('*','',$this->request['route']),'',$this->router->route->getUrl()));
301 316
                 $routes[1] = $this->request['parameters'][0];
302 317
                 array_shift($this->request['parameters']);
303
-                if(preg_match('/[A-Z]/', $routes[1])) return false;
318
+                if(preg_match('/[A-Z]/', $routes[1])) {
319
+                    return false;
320
+                }
304 321
                 $routes[1] = lcfirst(str_replace('-','',ucwords($routes[1],'-')));
305 322
             }
306 323
             $index = isset($this->request['collection_index']) ? $this->request['collection_index'] : 0;
307 324
             $class = (class_exists($routes[0]))
308 325
                 ? $routes[0]
309 326
                 : $this->router->collection->getRoutes()['ctrl_namespace_' . $index] . $routes[0];
310
-            if (!class_exists($class))
311
-                throw new \Exception('Class "' . $class . '." is not found');
327
+            if (!class_exists($class)) {
328
+                            throw new \Exception('Class "' . $class . '." is not found');
329
+            }
312 330
             if (method_exists($class, $routes[1])) {
313 331
                 return [
314 332
                     'dispatcher' => $this->dispatcher['isController'],
@@ -317,8 +335,9 @@  discard block
 block discarded – undo
317 335
                     'action' => $routes[1]
318 336
                 ];
319 337
             }
320
-            if (!strpos($callback, '{method}') !== false)
321
-                throw new \Exception('The required method "' . $routes[1] . '" is not found in "' . $class . '"');
338
+            if (!strpos($callback, '{method}') !== false) {
339
+                            throw new \Exception('The required method "' . $routes[1] . '" is not found in "' . $class . '"');
340
+            }
322 341
         }
323 342
         return false;
324 343
     }
@@ -336,9 +355,9 @@  discard block
 block discarded – undo
336 355
             $index = isset($this->request['collection_index']) ? $this->request['collection_index'] : 0;
337 356
             $viewDir = $this->router->collection->getRoutes('view_dir_' . $index);
338 357
             $target = null;
339
-            if (in_array('.' . $extension, $this->router->getConfig()['templateExtension']) && (is_file($fullPath = $viewDir . $path) || is_file($fullPath = $path)))
340
-                $target = $fullPath;
341
-            else {
358
+            if (in_array('.' . $extension, $this->router->getConfig()['templateExtension']) && (is_file($fullPath = $viewDir . $path) || is_file($fullPath = $path))) {
359
+                            $target = $fullPath;
360
+            } else {
342 361
                 foreach ($this->router->getConfig()['templateExtension'] as $ext) {
343 362
                     if (is_file($fullPath = $viewDir . $path . $ext) || is_file($fullPath = $path . $ext)) {
344 363
                         $target = $fullPath;
@@ -347,8 +366,9 @@  discard block
 block discarded – undo
347 366
                     }
348 367
                 }
349 368
             }
350
-            if(is_null($target))
351
-                throw new \Exception('Template file "' . $path . '" is not found in "' . $viewDir . '"');
369
+            if(is_null($target)) {
370
+                            throw new \Exception('Template file "' . $path . '" is not found in "' . $viewDir . '"');
371
+            }
352 372
             return [
353 373
                 'dispatcher' => $this->dispatcher['isTemplate'],
354 374
                 'template'   => $target,
Please login to merge, or discard this patch.