Completed
Push — master ( b0d6bc...c2c9db )
by Sinnarasa
05:21
created
src/Routing/Matcher/MatcherInterface.php 1 patch
Spacing   +1 added lines, -1 removed lines patch added patch discarded remove patch
@@ -41,7 +41,7 @@
 block discarded – undo
41 41
      * @param $method
42 42
      * @param $class
43 43
      */
44
-    public function addDispatcher($method,$class);
44
+    public function addDispatcher($method, $class);
45 45
 
46 46
     /**
47 47
      * @return mixed
Please login to merge, or discard this patch.
src/Routing/Matcher/ArrayMatcher.php 1 patch
Spacing   +48 added lines, -48 removed lines patch added patch discarded remove patch
@@ -25,7 +25,7 @@  discard block
 block discarded – undo
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
 block discarded – undo
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
 block discarded – undo
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
 block discarded – undo
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
 
@@ -80,7 +80,7 @@  discard block
 block discarded – undo
80 80
      * @param $class
81 81
      * @internal param array $dispatcher
82 82
      */
83
-    public function addDispatcher($method,$class){
83
+    public function addDispatcher($method, $class) {
84 84
         $this->dispatcher[$method] = $class;
85 85
     }
86 86
 
@@ -91,17 +91,17 @@  discard block
 block discarded – undo
91 91
     {
92 92
         $this->request = [];
93 93
         for ($i = 0; $i < $this->router->collection->countRoutes; ++$i) {
94
-            $this->request['prefix'] = ($this->router->collection->getRoutes('prefix_' . $i) != '') ? $this->router->collection->getRoutes('prefix_' . $i) : '';
95
-            $this->request['subdomain'] = ($this->router->collection->getRoutes('subdomain_' . $i) != '') ? $this->router->collection->getRoutes('subdomain_' . $i) : '';
96
-            foreach ($this->router->collection->getRoutes('routes_' . $i) as $route => $params) {
94
+            $this->request['prefix'] = ($this->router->collection->getRoutes('prefix_'.$i) != '') ? $this->router->collection->getRoutes('prefix_'.$i) : '';
95
+            $this->request['subdomain'] = ($this->router->collection->getRoutes('subdomain_'.$i) != '') ? $this->router->collection->getRoutes('subdomain_'.$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
-                if($this->checkSubdomain($route)) {
99
+                if ($this->checkSubdomain($route)) {
100 100
                     $route = strstr($route, '/');
101
-                    $this->request['route'] = preg_replace_callback('#:([\w]+)#', [$this, 'paramMatch'], '/' . trim(trim($this->request['prefix'], '/') . '/' . trim($route, '/'), '/'));
102
-                    if ($this->routeMatch('#^' . $this->request['route'] . '$#')) {
101
+                    $this->request['route'] = preg_replace_callback('#:([\w]+)#', [$this, 'paramMatch'], '/'.trim(trim($this->request['prefix'], '/').'/'.trim($route, '/'), '/'));
102
+                    if ($this->routeMatch('#^'.$this->request['route'].'$#')) {
103 103
                         $this->setCallback();
104
-                        if(!is_null($response = $this->generateTarget())) return $response;
104
+                        if (!is_null($response = $this->generateTarget())) return $response;
105 105
                     }
106 106
                 }
107 107
             }
@@ -113,20 +113,20 @@  discard block
 block discarded – undo
113 113
      * @param $route
114 114
      * @return bool
115 115
      */
116
-    private function checkSubdomain($route){
117
-        $url = (isset($_SERVER['REQUEST_SCHEME']) ? $_SERVER['REQUEST_SCHEME'] : 'http') . '://' . ($host = (isset($_SERVER['SERVER_NAME']) ? $_SERVER['SERVER_NAME'] : $_SERVER['HTTP_HOST']));
118
-        $host = explode(':',$host)[0];
116
+    private function checkSubdomain($route) {
117
+        $url = (isset($_SERVER['REQUEST_SCHEME']) ? $_SERVER['REQUEST_SCHEME'] : 'http').'://'.($host = (isset($_SERVER['SERVER_NAME']) ? $_SERVER['SERVER_NAME'] : $_SERVER['HTTP_HOST']));
118
+        $host = explode(':', $host)[0];
119 119
         $domain = $this->router->collection->getDomain($url);
120
-        if(!empty($this->request['subdomain']) && $route[0] == '/') $route = trim($this->request['subdomain'],'.').'.'.$domain.$route;
121
-        if($route[0] == '/'){
120
+        if (!empty($this->request['subdomain']) && $route[0] == '/') $route = trim($this->request['subdomain'], '.').'.'.$domain.$route;
121
+        if ($route[0] == '/') {
122 122
             return ($host != $domain) ? false : true;
123
-        }elseif($route[0] != '/' && $host != $domain){
123
+        }elseif ($route[0] != '/' && $host != $domain) {
124 124
             $route = substr($route, 0, strpos($route, "/"));
125 125
             $route = str_replace('{host}', $domain, $route);
126 126
             $route = preg_replace_callback('#{subdomain}#', [$this, 'subdomainMatch'], $route);
127
-            if (preg_match('#^' . $route . '$#', $host, $this->request['called_subdomain'])) {
127
+            if (preg_match('#^'.$route.'$#', $host, $this->request['called_subdomain'])) {
128 128
                 $this->request['called_subdomain'] = array_shift($this->request['called_subdomain']);
129
-                $this->request['subdomain'] = str_replace('.'.$domain,'',$host);
129
+                $this->request['subdomain'] = str_replace('.'.$domain, '', $host);
130 130
                 return true;
131 131
             }
132 132
         }
@@ -139,7 +139,7 @@  discard block
 block discarded – undo
139 139
     private function subdomainMatch()
140 140
     {
141 141
         if (is_array($this->request['params']) && isset($this->request['params']['subdomain'])) {
142
-            return '(' . $this->request['params']['subdomain'] . ')';
142
+            return '('.$this->request['params']['subdomain'].')';
143 143
         }
144 144
         return '([^/]+)';
145 145
     }
@@ -152,7 +152,7 @@  discard block
 block discarded – undo
152 152
     {
153 153
         if (is_array($this->request['params']) && isset($this->request['params']['arguments'][$match[1]])) {
154 154
             $this->request['params']['arguments'][$match[1]] = str_replace('(', '(?:', $this->request['params']['arguments'][$match[1]]);
155
-            return '(' . $this->request['params']['arguments'][$match[1]] . ')';
155
+            return '('.$this->request['params']['arguments'][$match[1]].')';
156 156
         }
157 157
         return '([^/]+)';
158 158
     }
@@ -180,7 +180,7 @@  discard block
 block discarded – undo
180 180
      */
181 181
     private function generateTarget()
182 182
     {
183
-        if($this->validMethod()) {
183
+        if ($this->validMethod()) {
184 184
             foreach ($this->resolver as $resolver) {
185 185
                 if (is_array($target = call_user_func_array([$this, $resolver], [$this->router->route->getCallback()]))) {
186 186
                     $this->setTarget($target);
@@ -199,7 +199,7 @@  discard block
 block discarded – undo
199 199
     /**
200 200
      * @param array $target
201 201
      */
202
-    public function setTarget($target = []){
202
+    public function setTarget($target = []) {
203 203
         $index = isset($this->request['collection_index']) ? $this->request['collection_index'] : 0;
204 204
         $this->router->route->setDetail($this->request);
205 205
         $this->router->route->setTarget($target);
@@ -210,9 +210,9 @@  discard block
 block discarded – undo
210 210
     /**
211 211
      *
212 212
      */
213
-    private function setCallback(){
213
+    private function setCallback() {
214 214
         if (isset($this->request['params'])) {
215
-            if(is_callable($this->request['params']))
215
+            if (is_callable($this->request['params']))
216 216
                 $this->router->route->setCallback($this->request['params']);
217 217
             else {
218 218
                 (is_array($this->request['params']) && isset($this->request['params']['use']))
@@ -229,7 +229,7 @@  discard block
 block discarded – undo
229 229
      */
230 230
     public function validMethod()
231 231
     {
232
-        if(is_callable($this->request['params']))return true;
232
+        if (is_callable($this->request['params']))return true;
233 233
         if (!empty($_SERVER['HTTP_X_REQUESTED_WITH']) && strtolower($_SERVER['HTTP_X_REQUESTED_WITH']) == 'xmlhttprequest')
234 234
             return (isset($this->request['params']['ajax']) && $this->request['params']['ajax'] === true) ? true : false;
235 235
         $method = (isset($this->request['params']['method'])) ? $this->request['params']['method'] : ['GET'];
@@ -241,10 +241,10 @@  discard block
 block discarded – undo
241 241
      * @return array|bool
242 242
      * @throws \Exception
243 243
      */
244
-    public function isClosureAndTemplate($callback){
245
-        if(is_array($cls = $this->isClosure($callback))) {
244
+    public function isClosureAndTemplate($callback) {
245
+        if (is_array($cls = $this->isClosure($callback))) {
246 246
             if (is_array($this->request['params']) && isset($this->request['params']['template']) && is_array($tpl = $this->isTemplate($this->request['params']['template']))) {
247
-                return array_merge(array_merge($cls, $tpl),[
247
+                return array_merge(array_merge($cls, $tpl), [
248 248
                     'dispatcher' => $this->dispatcher['isClosureAndTemplate']
249 249
                 ]);
250 250
             }
@@ -258,10 +258,10 @@  discard block
 block discarded – undo
258 258
      * @return array|bool
259 259
      * @throws \Exception
260 260
      */
261
-    public function isControllerAndTemplate($callback){
262
-        if(is_array($ctrl = $this->isController($callback))) {
261
+    public function isControllerAndTemplate($callback) {
262
+        if (is_array($ctrl = $this->isController($callback))) {
263 263
             if (is_array($this->request['params']) && isset($this->request['params']['template']) && is_array($tpl = $this->isTemplate($this->request['params']['template']))) {
264
-                return array_merge(array_merge($ctrl, $tpl),[
264
+                return array_merge(array_merge($ctrl, $tpl), [
265 265
                     'dispatcher' => $this->dispatcher['isControllerAndTemplate']
266 266
                 ]);
267 267
             }
@@ -296,19 +296,19 @@  discard block
 block discarded – undo
296 296
         if (is_string($callback) && strpos($callback, '@') !== false) {
297 297
             $routes = explode('@', $callback);
298 298
             if (!isset($routes[1])) $routes[1] = 'index';
299
-            if ($routes[1] == '{method}'){
300
-                $this->request['parameters'] = explode('/',str_replace(str_replace('*','',$this->request['route']),'',$this->router->route->getUrl()));
299
+            if ($routes[1] == '{method}') {
300
+                $this->request['parameters'] = explode('/', str_replace(str_replace('*', '', $this->request['route']), '', $this->router->route->getUrl()));
301 301
                 $routes[1] = $this->request['parameters'][0];
302 302
                 array_shift($this->request['parameters']);
303
-                if(preg_match('/[A-Z]/', $routes[1])) return false;
304
-                $routes[1] = lcfirst(str_replace(' ','',ucwords(str_replace('-',' ',$routes[1]))));
303
+                if (preg_match('/[A-Z]/', $routes[1])) return false;
304
+                $routes[1] = lcfirst(str_replace(' ', '', ucwords(str_replace('-', ' ', $routes[1]))));
305 305
             }
306 306
             $index = isset($this->request['collection_index']) ? $this->request['collection_index'] : 0;
307 307
             $class = (class_exists($routes[0]))
308 308
                 ? $routes[0]
309
-                : $this->router->collection->getRoutes()['ctrl_namespace_' . $index] . $routes[0];
309
+                : $this->router->collection->getRoutes()['ctrl_namespace_'.$index].$routes[0];
310 310
             if (!class_exists($class))
311
-                throw new \Exception('Class "' . $class . '." is not found');
311
+                throw new \Exception('Class "'.$class.'." is not found');
312 312
             if (method_exists($class, $routes[1])) {
313 313
                 return [
314 314
                     'dispatcher' => $this->dispatcher['isController'],
@@ -318,7 +318,7 @@  discard block
 block discarded – undo
318 318
                 ];
319 319
             }
320 320
             if (!strpos($callback, '{method}') !== false)
321
-                throw new \Exception('The required method "' . $routes[1] . '" is not found in "' . $class . '"');
321
+                throw new \Exception('The required method "'.$routes[1].'" is not found in "'.$class.'"');
322 322
         }
323 323
         return false;
324 324
     }
@@ -330,25 +330,25 @@  discard block
 block discarded – undo
330 330
      */
331 331
     public function isTemplate($callback)
332 332
     {
333
-        if(is_string($callback) && strpos($callback, '@') === false) {
333
+        if (is_string($callback) && strpos($callback, '@') === false) {
334 334
             $path = trim($callback, '/');
335 335
             $extension = substr(strrchr($path, "."), 1);
336 336
             $index = isset($this->request['collection_index']) ? $this->request['collection_index'] : 0;
337
-            $viewDir = $this->router->collection->getRoutes('view_dir_' . $index);
337
+            $viewDir = $this->router->collection->getRoutes('view_dir_'.$index);
338 338
             $target = null;
339
-            if (in_array('.' . $extension, $this->router->getConfig()['templateExtension']) && (is_file($fullPath = $viewDir . $path) || is_file($fullPath = $path)))
339
+            if (in_array('.'.$extension, $this->router->getConfig()['templateExtension']) && (is_file($fullPath = $viewDir.$path) || is_file($fullPath = $path)))
340 340
                 $target = $fullPath;
341 341
             else {
342 342
                 foreach ($this->router->getConfig()['templateExtension'] as $ext) {
343
-                    if (is_file($fullPath = $viewDir . $path . $ext) || is_file($fullPath = $path . $ext)) {
343
+                    if (is_file($fullPath = $viewDir.$path.$ext) || is_file($fullPath = $path.$ext)) {
344 344
                         $target = $fullPath;
345 345
                         $extension = substr(strrchr($ext, "."), 1);
346 346
                         break;
347 347
                     }
348 348
                 }
349 349
             }
350
-            if(is_null($target))
351
-                throw new \Exception('Template file "' . $path . '" is not found in "' . $viewDir . '"');
350
+            if (is_null($target))
351
+                throw new \Exception('Template file "'.$path.'" is not found in "'.$viewDir.'"');
352 352
             return [
353 353
                 'dispatcher' => $this->dispatcher['isTemplate'],
354 354
                 'template'   => $target,
Please login to merge, or discard this patch.
src/Routing/Matcher/UriMatcher.php 1 patch
Spacing   +20 added lines, -20 removed lines patch added patch discarded remove patch
@@ -32,7 +32,7 @@  discard block
 block discarded – undo
32 32
     private $dispatcher = [
33 33
         'isTemplate' => 'JetFire\Routing\Dispatcher\TemplateDispatcher',
34 34
         'isController' => 'JetFire\Routing\Dispatcher\ControllerDispatcher',
35
-        'isControllerAndTemplate' => ['JetFire\Routing\Dispatcher\ControllerDispatcher','JetFire\Routing\Dispatcher\TemplateDispatcher'],
35
+        'isControllerAndTemplate' => ['JetFire\Routing\Dispatcher\ControllerDispatcher', 'JetFire\Routing\Dispatcher\TemplateDispatcher'],
36 36
     ];
37 37
 
38 38
     /**
@@ -46,14 +46,14 @@  discard block
 block discarded – undo
46 46
     /**
47 47
      * @param array $resolver
48 48
      */
49
-    public function setResolver($resolver = []){
49
+    public function setResolver($resolver = []) {
50 50
         $this->resolver = $resolver;
51 51
     }
52 52
 
53 53
     /**
54 54
      * @param string $resolver
55 55
      */
56
-    public function addResolver($resolver){
56
+    public function addResolver($resolver) {
57 57
         $this->resolver[] = $resolver;
58 58
     }
59 59
 
@@ -77,7 +77,7 @@  discard block
 block discarded – undo
77 77
      * @param $method
78 78
      * @param $class
79 79
      */
80
-    public function addDispatcher($method,$class){
80
+    public function addDispatcher($method, $class) {
81 81
         $this->dispatcher[$method] = $class;
82 82
     }
83 83
 
@@ -86,10 +86,10 @@  discard block
 block discarded – undo
86 86
      */
87 87
     public function match()
88 88
     {
89
-        foreach($this->resolver as $resolver){
90
-            if(is_array($target = call_user_func([$this,$resolver]))) {
89
+        foreach ($this->resolver as $resolver) {
90
+            if (is_array($target = call_user_func([$this, $resolver]))) {
91 91
                 $this->setTarget($target);
92
-                if($this->router->middleware->globalMiddleware() === false || $this->router->middleware->blockMiddleware() === false || $this->router->middleware->classMiddleware() === false || $this->router->middleware->routeMiddleware() === false)
92
+                if ($this->router->middleware->globalMiddleware() === false || $this->router->middleware->blockMiddleware() === false || $this->router->middleware->classMiddleware() === false || $this->router->middleware->routeMiddleware() === false)
93 93
                     return null;
94 94
                 $this->router->response->setStatusCode(202);
95 95
                 return true;
@@ -101,7 +101,7 @@  discard block
 block discarded – undo
101 101
     /**
102 102
      * @param array $target
103 103
      */
104
-    public function setTarget($target = []){
104
+    public function setTarget($target = []) {
105 105
         $index = isset($this->request['collection_index']) ? $this->request['collection_index'] : 0;
106 106
         $this->router->route->setDetail($this->request);
107 107
         $this->router->route->setTarget($target);
@@ -112,10 +112,10 @@  discard block
 block discarded – undo
112 112
     /**
113 113
      * @return array|bool
114 114
      */
115
-    public function isControllerAndTemplate(){
116
-        if(is_array($ctrl = $this->isController())) {
115
+    public function isControllerAndTemplate() {
116
+        if (is_array($ctrl = $this->isController())) {
117 117
             if (is_array($tpl = $this->isTemplate())) {
118
-                return array_merge(array_merge($ctrl, $tpl),[
118
+                return array_merge(array_merge($ctrl, $tpl), [
119 119
                     'dispatcher' => $this->dispatcher['isControllerAndTemplate']
120 120
                 ]);
121 121
             }
@@ -131,10 +131,10 @@  discard block
 block discarded – undo
131 131
     {
132 132
         foreach ($this->router->getConfig()['templateExtension'] as $extension) {
133 133
             for ($i = 0; $i < $this->router->collection->countRoutes; ++$i) {
134
-                $url = explode('/', str_replace($this->router->collection->getRoutes('prefix_' . $i), '',$this->router->route->getUrl()));
134
+                $url = explode('/', str_replace($this->router->collection->getRoutes('prefix_'.$i), '', $this->router->route->getUrl()));
135 135
                 $end = array_pop($url);
136 136
                 $url = implode('/', array_map('ucwords', $url)).'/'.$end;
137
-                if (is_file(($template = rtrim($this->router->collection->getRoutes('view_dir_' . $i), '/') . $url . $extension))) {
137
+                if (is_file(($template = rtrim($this->router->collection->getRoutes('view_dir_'.$i), '/').$url.$extension))) {
138 138
                     $this->request['collection_index'] = $i;
139 139
                     return [
140 140
                         'dispatcher' => $this->dispatcher['isTemplate'],
@@ -155,13 +155,13 @@  discard block
 block discarded – undo
155 155
     {
156 156
         $routes = array_slice(explode('/', $this->router->route->getUrl()), 1);
157 157
         $i = 0;
158
-        do{
159
-            $route =  ('/' . $routes[0] == $this->router->collection->getRoutes('prefix_' . $i)) ? array_slice($routes, 1) : $routes;
158
+        do {
159
+            $route = ('/'.$routes[0] == $this->router->collection->getRoutes('prefix_'.$i)) ? array_slice($routes, 1) : $routes;
160 160
             if (isset($route[0])) {
161
-                $class =  (class_exists($this->router->collection->getRoutes('ctrl_namespace_' . $i). ucfirst($route[0]) . 'Controller'))
162
-                    ? $this->router->collection->getRoutes('ctrl_namespace_' . $i). ucfirst($route[0]) . 'Controller'
163
-                    : ucfirst($route[0]) . 'Controller';
164
-                $route[1] = isset($route[1])?$route[1]:'index';
161
+                $class = (class_exists($this->router->collection->getRoutes('ctrl_namespace_'.$i).ucfirst($route[0]).'Controller'))
162
+                    ? $this->router->collection->getRoutes('ctrl_namespace_'.$i).ucfirst($route[0]).'Controller'
163
+                    : ucfirst($route[0]).'Controller';
164
+                $route[1] = isset($route[1]) ? $route[1] : 'index';
165 165
                 if (method_exists($class, $route[1])) {
166 166
                     $this->request['parameters'] = array_slice($route, 2);
167 167
                     $this->request['collection_index'] = $i;
@@ -174,7 +174,7 @@  discard block
 block discarded – undo
174 174
                 }
175 175
             }
176 176
             ++$i;
177
-        }while($i < $this->router->collection->countRoutes);
177
+        }while ($i < $this->router->collection->countRoutes);
178 178
         return false;
179 179
     }
180 180
 
Please login to merge, or discard this patch.