Passed
Push — master ( 827696...d4e081 )
by Alexander
03:03
created
src/components/Core/Http/Lenevor.php 2 patches
Spacing   +1 added lines, -1 removed lines patch added patch discarded remove patch
@@ -181,7 +181,7 @@
 block discarded – undo
181 181
  	 */
182 182
 	protected function dispatchToRouter()
183 183
 	{
184
-		return function ($request) {
184
+		return function($request) {
185 185
 			$this->app->instance('request', $request);
186 186
 
187 187
 			return $this->router->dispatch($request);
Please login to merge, or discard this patch.
Indentation   +253 added lines, -253 removed lines patch added patch discarded remove patch
@@ -36,295 +36,295 @@
 block discarded – undo
36 36
  */
37 37
 class Lenevor implements LenevorContract
38 38
 {
39
-	/**
40
-	 * The application implementation.
41
-	 * 
42
-	 * @var \Syscodes\Components\Contracts\Core\Application $app
43
-	 */
44
-	protected $app;
39
+    /**
40
+     * The application implementation.
41
+     * 
42
+     * @var \Syscodes\Components\Contracts\Core\Application $app
43
+     */
44
+    protected $app;
45 45
 	
46
-	/**
47
-	 * The bootstrap classes for the application.
48
-	 * 
49
-	 * @var array $bootstrappers
50
-	 */
51
-	protected $bootstrappers = [
52
-		\Syscodes\Components\Core\Bootstrap\BootDetectEnvironment::class,
53
-		\Syscodes\Components\Core\Bootstrap\BootConfiguration::class,
54
-		\Syscodes\Components\Core\Bootstrap\BootHandleExceptions::class,
55
-		\Syscodes\Components\Core\Bootstrap\BootRegisterFacades::class,
56
-		\Syscodes\Components\Core\Bootstrap\BootRegisterProviders::class,
57
-		\Syscodes\Components\Core\Bootstrap\BootProviders::class,
58
-	];
46
+    /**
47
+     * The bootstrap classes for the application.
48
+     * 
49
+     * @var array $bootstrappers
50
+     */
51
+    protected $bootstrappers = [
52
+        \Syscodes\Components\Core\Bootstrap\BootDetectEnvironment::class,
53
+        \Syscodes\Components\Core\Bootstrap\BootConfiguration::class,
54
+        \Syscodes\Components\Core\Bootstrap\BootHandleExceptions::class,
55
+        \Syscodes\Components\Core\Bootstrap\BootRegisterFacades::class,
56
+        \Syscodes\Components\Core\Bootstrap\BootRegisterProviders::class,
57
+        \Syscodes\Components\Core\Bootstrap\BootProviders::class,
58
+    ];
59 59
 
60
-	/**
61
-	 * Get the application's middleware.
62
-	 * 
63
-	 * @var array $middleware
64
-	 */
65
-	protected $middleware = [];
60
+    /**
61
+     * Get the application's middleware.
62
+     * 
63
+     * @var array $middleware
64
+     */
65
+    protected $middleware = [];
66 66
 
67
-	/**
68
-	 * Get the application's middleware groups.
69
-	 * 
70
-	 * @var array $middlewareGroups
71
-	 */
72
-	protected $middlewareGroups = [];
67
+    /**
68
+     * Get the application's middleware groups.
69
+     * 
70
+     * @var array $middlewareGroups
71
+     */
72
+    protected $middlewareGroups = [];
73 73
 
74
-	/**
75
-	 * The priority list of middleware.
76
-	 * 
77
-	 * @var string[] $middlwarePriority
78
-	 */
79
-	protected $middlwarePriority = [
80
-		\Syscodes\Components\Cookie\Middleware\EncryptCookies::class,
81
-		\Syscodes\Components\Session\Middleware\StartSession::class,
82
-		\Syscodes\Components\Auth\Middleware\Authenticate::class,
83
-	];
74
+    /**
75
+     * The priority list of middleware.
76
+     * 
77
+     * @var string[] $middlwarePriority
78
+     */
79
+    protected $middlwarePriority = [
80
+        \Syscodes\Components\Cookie\Middleware\EncryptCookies::class,
81
+        \Syscodes\Components\Session\Middleware\StartSession::class,
82
+        \Syscodes\Components\Auth\Middleware\Authenticate::class,
83
+    ];
84 84
 
85
-	/**
86
-	 * The router instance.
87
-	 * 
88
-	 * @var \Syscodes\Components\Routing\Router $router
89
-	 */
90
-	protected $router;
85
+    /**
86
+     * The router instance.
87
+     * 
88
+     * @var \Syscodes\Components\Routing\Router $router
89
+     */
90
+    protected $router;
91 91
 
92
-	/**
93
-	 * Get the application's route middleware.
94
-	 * 
95
-	 * @var array $routeMiddleware
96
-	 */
97
-	protected $routeMiddleware = [];
92
+    /**
93
+     * Get the application's route middleware.
94
+     * 
95
+     * @var array $routeMiddleware
96
+     */
97
+    protected $routeMiddleware = [];
98 98
 
99
-	/**
100
-	 * Total app execution time.
101
-	 * 
102
-	 * @var float $totalTime
103
-	 */
104
-	protected $totalTime;
99
+    /**
100
+     * Total app execution time.
101
+     * 
102
+     * @var float $totalTime
103
+     */
104
+    protected $totalTime;
105 105
 
106
-	/**
107
-	 * Constructor. Lenevor class instance.
108
-	 * 
109
-	 * @param  \Syscodes\Components\Contracts\Core\Application  $app
110
-	 * @param  \Syscodes\Components\Routing\Router  $router
111
-	 * 
112
-	 * @return void
113
-	 */
114
-	public function __construct(Application $app, Router $router)
115
-	{
116
-		$this->app    = $app;
117
-		$this->router = $router;
106
+    /**
107
+     * Constructor. Lenevor class instance.
108
+     * 
109
+     * @param  \Syscodes\Components\Contracts\Core\Application  $app
110
+     * @param  \Syscodes\Components\Routing\Router  $router
111
+     * 
112
+     * @return void
113
+     */
114
+    public function __construct(Application $app, Router $router)
115
+    {
116
+        $this->app    = $app;
117
+        $this->router = $router;
118 118
 
119
-		$this->syncMiddlewareRoute();
120
-	}
119
+        $this->syncMiddlewareRoute();
120
+    }
121 121
 	 
122
-	/**
123
-	 * Initializes the framework, this can only be called once.
124
-	 * Launch the application.
125
-	 * 
126
-	 * @param  \Syscodes\Components\http\Request  $request
127
-	 *
128
-	 * @return void
129
-	 */
130
-	public function handle($request)
131
-	{
132
-		try {
133
-			$response = $this->sendRequestThroughRouter($request);
134
-		} catch (Throwable $e) {
135
-			$this->reportException($e);
122
+    /**
123
+     * Initializes the framework, this can only be called once.
124
+     * Launch the application.
125
+     * 
126
+     * @param  \Syscodes\Components\http\Request  $request
127
+     *
128
+     * @return void
129
+     */
130
+    public function handle($request)
131
+    {
132
+        try {
133
+            $response = $this->sendRequestThroughRouter($request);
134
+        } catch (Throwable $e) {
135
+            $this->reportException($e);
136 136
 
137
-			$response = $this->renderException($request, $e);
138
-		}		
137
+            $response = $this->renderException($request, $e);
138
+        }		
139 139
 
140
-		return $response;
141
-	}
140
+        return $response;
141
+    }
142 142
 
143
-	/**
144
-	 * Send the given request through the router.
145
-	 * 
146
-	 * @param  \Syscodes\Components\Http\Request  $request
147
-	 * 
148
-	 * @return \Syscodes\Components\Http\Response
149
-	 */
150
-	protected function sendRequestThroughRouter($request)
151
-	{
152
-		$this->app->instance('request', $request);  
143
+    /**
144
+     * Send the given request through the router.
145
+     * 
146
+     * @param  \Syscodes\Components\Http\Request  $request
147
+     * 
148
+     * @return \Syscodes\Components\Http\Response
149
+     */
150
+    protected function sendRequestThroughRouter($request)
151
+    {
152
+        $this->app->instance('request', $request);  
153 153
 
154
-		Facade::clearResolvedInstance('request');
154
+        Facade::clearResolvedInstance('request');
155 155
 		
156
-		// Load configuration system
157
-		$this->bootstrap();
156
+        // Load configuration system
157
+        $this->bootstrap();
158 158
 		
159
-		return (new Pipeline($this->app))
160
-				->send($request)
161
-				->through($this->app->skipGoingMiddleware() ? [] : $this->middleware)
162
-				->then($this->dispatchToRouter());
163
-	}
159
+        return (new Pipeline($this->app))
160
+                ->send($request)
161
+                ->through($this->app->skipGoingMiddleware() ? [] : $this->middleware)
162
+                ->then($this->dispatchToRouter());
163
+    }
164 164
 
165
-	/**
166
-	 * Bootstrap the application for HTTP requests.
167
-	 * 
168
-	 * @return void
169
-	 */
170
-	protected function bootstrap(): void
171
-	{		
172
-		if ( ! $this->app->hasBeenBootstrapped()) {
173
-			$this->app->bootstrapWith($this->bootstrappers());
174
-		}
175
-	}
165
+    /**
166
+     * Bootstrap the application for HTTP requests.
167
+     * 
168
+     * @return void
169
+     */
170
+    protected function bootstrap(): void
171
+    {		
172
+        if ( ! $this->app->hasBeenBootstrapped()) {
173
+            $this->app->bootstrapWith($this->bootstrappers());
174
+        }
175
+    }
176 176
 
177
-	/**
178
-	 * Get the bootstrap classes for the application.
179
-	 * 
180
-	 * @return array
181
-	 */
182
-	protected function bootstrappers(): array
183
-	{
184
-		return $this->bootstrappers;
185
-	}
177
+    /**
178
+     * Get the bootstrap classes for the application.
179
+     * 
180
+     * @return array
181
+     */
182
+    protected function bootstrappers(): array
183
+    {
184
+        return $this->bootstrappers;
185
+    }
186 186
 
187
-	/**
188
-	 * Sync the current state of the middleware to the router.
189
-	 * 
190
-	 * @return void
191
-	 */
192
-	protected function syncMiddlewareRoute(): void
193
-	{
194
-		$this->router->middlewarePriority = $this->middlwarePriority;
187
+    /**
188
+     * Sync the current state of the middleware to the router.
189
+     * 
190
+     * @return void
191
+     */
192
+    protected function syncMiddlewareRoute(): void
193
+    {
194
+        $this->router->middlewarePriority = $this->middlwarePriority;
195 195
 		
196
-		foreach ($this->middlewareGroups as $key => $middleware) {
197
-			$this->router->middlewareGroup($key, $middleware);
198
-		}
196
+        foreach ($this->middlewareGroups as $key => $middleware) {
197
+            $this->router->middlewareGroup($key, $middleware);
198
+        }
199 199
 
200
-		foreach ($this->routeMiddleware as $key => $middleware) {
201
-			$this->router->aliasMiddleware($key, $middleware);
202
-		}
203
-	}
200
+        foreach ($this->routeMiddleware as $key => $middleware) {
201
+            $this->router->aliasMiddleware($key, $middleware);
202
+        }
203
+    }
204 204
 
205
-	/**
206
-	 * Get the dispatcher of routes.
207
-	 * 	  
208
-	 * @return \Closure
209
- 	 */
210
-	protected function dispatchToRouter()
211
-	{
212
-		return function ($request) {
213
-			$this->app->instance('request', $request);
205
+    /**
206
+     * Get the dispatcher of routes.
207
+     * 	  
208
+     * @return \Closure
209
+     */
210
+    protected function dispatchToRouter()
211
+    {
212
+        return function ($request) {
213
+            $this->app->instance('request', $request);
214 214
 
215
-			return $this->router->dispatch($request);
216
-		};
217
-	}
215
+            return $this->router->dispatch($request);
216
+        };
217
+    }
218 218
 
219
-	/**
220
-	 * Call the finalize method on any terminable middleware.
221
-	 * 
222
-	 * @param  \Syscodes\Components\Http\Request  $request
223
-	 * @param  \Syscodes\Components\Http\Response  $response
224
-	 * 
225
-	 * @return void
226
-	 */
227
-	public function finalize($request, $response): void
228
-	{
229
-		$this->finalizeMiddleware($request, $response);
230
-	}
219
+    /**
220
+     * Call the finalize method on any terminable middleware.
221
+     * 
222
+     * @param  \Syscodes\Components\Http\Request  $request
223
+     * @param  \Syscodes\Components\Http\Response  $response
224
+     * 
225
+     * @return void
226
+     */
227
+    public function finalize($request, $response): void
228
+    {
229
+        $this->finalizeMiddleware($request, $response);
230
+    }
231 231
 
232
-	/**
233
-	 * Call the finalize method on any terminable middleware.
234
-	 * 
235
-	 * @param  \Syscodes\Components\Http\Request  $request
236
-	 * @param  \Syscodes\Components\Http\Response  $response
237
-	 * 
238
-	 * @return void
239
-	 */
240
-	protected function finalizeMiddleware($request, $response): void
241
-	{
242
-		$middlewares = $this->app->skipGoingMiddleware() ? [] : array_merge(
243
-			$this->gatherRouteMiddleware($request),
244
-			$this->middleware
245
-		);
232
+    /**
233
+     * Call the finalize method on any terminable middleware.
234
+     * 
235
+     * @param  \Syscodes\Components\Http\Request  $request
236
+     * @param  \Syscodes\Components\Http\Response  $response
237
+     * 
238
+     * @return void
239
+     */
240
+    protected function finalizeMiddleware($request, $response): void
241
+    {
242
+        $middlewares = $this->app->skipGoingMiddleware() ? [] : array_merge(
243
+            $this->gatherRouteMiddleware($request),
244
+            $this->middleware
245
+        );
246 246
 
247
-		foreach ($middlewares as $middleware) {
248
-			if ( ! is_string($middleware)) {
249
-				continue;
250
-			}
247
+        foreach ($middlewares as $middleware) {
248
+            if ( ! is_string($middleware)) {
249
+                continue;
250
+            }
251 251
 			
252
-			[$name] = $this->parseMiddleware($middleware);
252
+            [$name] = $this->parseMiddleware($middleware);
253 253
 			
254
-			$instance = $this->app->make($name);
254
+            $instance = $this->app->make($name);
255 255
 			
256
-			if (method_exists($instance, 'finalize')) {
257
-				$instance->finalize($request, $response);
258
-			}
259
-		}
260
-	}
256
+            if (method_exists($instance, 'finalize')) {
257
+                $instance->finalize($request, $response);
258
+            }
259
+        }
260
+    }
261 261
 
262
-	/**
263
-	 * Gather the route middleware for the given request.
264
-	 * 
265
-	 * @param  \Syscodes\Components\Http\Request  $request
266
-	 * 
267
-	 * @return array
268
-	 */
269
-	protected function gatherRouteMiddleware($request): array
270
-	{
271
-		if ($route = $request->route()) {
272
-			return $this->router->gatherRouteMiddleware($route);
273
-		}
262
+    /**
263
+     * Gather the route middleware for the given request.
264
+     * 
265
+     * @param  \Syscodes\Components\Http\Request  $request
266
+     * 
267
+     * @return array
268
+     */
269
+    protected function gatherRouteMiddleware($request): array
270
+    {
271
+        if ($route = $request->route()) {
272
+            return $this->router->gatherRouteMiddleware($route);
273
+        }
274 274
 
275
-		return [];
276
-	}
275
+        return [];
276
+    }
277 277
 	
278
-	/**
279
-	 * Parse a middleware string to get the name and parameters.
280
-	 * 
281
-	 * @param  string  $middleware
282
-	 * 
283
-	 * @return array
284
-	 */
285
-	protected function parseMiddleware($middleware): array
286
-	{
287
-		[$name, $parameters] = array_pad(explode(':', $middleware, 2), 2, []);
278
+    /**
279
+     * Parse a middleware string to get the name and parameters.
280
+     * 
281
+     * @param  string  $middleware
282
+     * 
283
+     * @return array
284
+     */
285
+    protected function parseMiddleware($middleware): array
286
+    {
287
+        [$name, $parameters] = array_pad(explode(':', $middleware, 2), 2, []);
288 288
 		
289
-		if (is_string($parameters)) {
290
-			$parameters = explode(',', $parameters);
291
-		}
289
+        if (is_string($parameters)) {
290
+            $parameters = explode(',', $parameters);
291
+        }
292 292
 		
293
-		return [$name, $parameters];
293
+        return [$name, $parameters];
294 294
     }
295 295
 
296
-	/**
297
-	 * Gets the Lenevor application instance.
298
-	 * 
299
-	 * @return void
300
-	 */
301
-	public function getApplication()
302
-	{
303
-		return $this->app;
304
-	}
296
+    /**
297
+     * Gets the Lenevor application instance.
298
+     * 
299
+     * @return void
300
+     */
301
+    public function getApplication()
302
+    {
303
+        return $this->app;
304
+    }
305 305
 
306
-	/**
307
-	 * Report the exception to the exception handler.
308
-	 * 
309
-	 * @param  \Throwable  $e
310
-	 * 
311
-	 * @return void
312
-	 */
313
-	protected function reportException(Throwable $e)
314
-	{
315
-		return $this->app[ExceptionHandler::class]->report($e);
316
-	}
306
+    /**
307
+     * Report the exception to the exception handler.
308
+     * 
309
+     * @param  \Throwable  $e
310
+     * 
311
+     * @return void
312
+     */
313
+    protected function reportException(Throwable $e)
314
+    {
315
+        return $this->app[ExceptionHandler::class]->report($e);
316
+    }
317 317
 	
318
-	/**
319
-	 * Render the exception to a response.
320
-	 * 
321
-	 * @param  \Syscodes\Components\Http\Request  $request
322
-	 * @param  \Throwable  $e
323
-	 * 
324
-	 * @return \Syscodes\Components\Http\Response
325
-	 */
326
-	protected function renderException($request, Throwable $e)
327
-	{
328
-		return $this->app[ExceptionHandler::class]->render($request, $e);
329
-	}
318
+    /**
319
+     * Render the exception to a response.
320
+     * 
321
+     * @param  \Syscodes\Components\Http\Request  $request
322
+     * @param  \Throwable  $e
323
+     * 
324
+     * @return \Syscodes\Components\Http\Response
325
+     */
326
+    protected function renderException($request, Throwable $e)
327
+    {
328
+        return $this->app[ExceptionHandler::class]->render($request, $e);
329
+    }
330 330
 }
331 331
\ No newline at end of file
Please login to merge, or discard this patch.
src/components/Core/Http/Exceptions/HttpException.php 1 patch
Indentation   +63 added lines, -63 removed lines patch added patch discarded remove patch
@@ -32,73 +32,73 @@
 block discarded – undo
32 32
  */
33 33
 class HttpException extends LenevorException
34 34
 {
35
-	/**
36
-	 * Loader the Status Code HTTP.
37
-	 * 
38
-	 * @var int $code
39
-	 */
40
-	protected $code;
35
+    /**
36
+     * Loader the Status Code HTTP.
37
+     * 
38
+     * @var int $code
39
+     */
40
+    protected $code;
41 41
 
42
-	/**
43
-	 * Loader the headers HTTP.
44
-	 * 
45
-	 * @var array $headers 
46
-	 */
47
-	protected $headers;
42
+    /**
43
+     * Loader the headers HTTP.
44
+     * 
45
+     * @var array $headers 
46
+     */
47
+    protected $headers;
48 48
 
49
-	/**
50
-	 * Initialize constructor. 
51
-	 * 
52
-	 * @param  int  $statusCode
53
-	 * @param  string  $message  
54
-	 * @param  \Throwable  $previous 
55
-	 * @param  array  $headers
56
-	 * @param  int  $code
57
-	 * 
58
-	 * @return void
59
-	 */
60
-	public function __construct(
61
-		int $statusCode, 
62
-		string $message = null, 
63
-		Throwable $previous = null, 
64
-		array $headers = [], 
65
-		?int $code = 0
66
-	) {
67
-		$this->headers = $headers;
68
-		$this->code    = $statusCode;
49
+    /**
50
+     * Initialize constructor. 
51
+     * 
52
+     * @param  int  $statusCode
53
+     * @param  string  $message  
54
+     * @param  \Throwable  $previous 
55
+     * @param  array  $headers
56
+     * @param  int  $code
57
+     * 
58
+     * @return void
59
+     */
60
+    public function __construct(
61
+        int $statusCode, 
62
+        string $message = null, 
63
+        Throwable $previous = null, 
64
+        array $headers = [], 
65
+        ?int $code = 0
66
+    ) {
67
+        $this->headers = $headers;
68
+        $this->code    = $statusCode;
69 69
 				
70
-		parent::__construct($message, $code, $previous);
71
-	}
70
+        parent::__construct($message, $code, $previous);
71
+    }
72 72
 
73
-	/**
74
-	 * Get Status Code headers.
75
-	 * 
76
-	 * @return int
77
-	 */
78
-	public function getStatusCode()
79
-	{
80
-		return $this->code;
81
-	}
73
+    /**
74
+     * Get Status Code headers.
75
+     * 
76
+     * @return int
77
+     */
78
+    public function getStatusCode()
79
+    {
80
+        return $this->code;
81
+    }
82 82
 	
83
-	/**
84
-	 * Get response headers.
85
-	 * 
86
-	 * @return array
87
-	 */
88
-	public function getHeaders()
89
-	{
90
-		return $this->headers;
91
-	}
83
+    /**
84
+     * Get response headers.
85
+     * 
86
+     * @return array
87
+     */
88
+    public function getHeaders()
89
+    {
90
+        return $this->headers;
91
+    }
92 92
 	
93
-	/**
94
-	 * Set response headers.
95
-	 * 
96
-	 * @param  array  $headers  Response headers
97
-	 * 
98
-	 * @return mixed
99
-	 */
100
-	public function setHeaders(array $headers)
101
-	{
102
-		$this->headers = $headers;
103
-	}
93
+    /**
94
+     * Set response headers.
95
+     * 
96
+     * @param  array  $headers  Response headers
97
+     * 
98
+     * @return mixed
99
+     */
100
+    public function setHeaders(array $headers)
101
+    {
102
+        $this->headers = $headers;
103
+    }
104 104
 }
105 105
\ No newline at end of file
Please login to merge, or discard this patch.
src/components/Translation/Translator.php 2 patches
Indentation   +5 added lines, -5 removed lines patch added patch discarded remove patch
@@ -62,11 +62,11 @@
 block discarded – undo
62 62
      */
63 63
     protected $locale;
64 64
 
65
-     /**
66
-     * Boolean value whether the intl libraries exist on the system.
67
-     * 
68
-     * @var bool $intlSupport
69
-     */
65
+        /**
66
+         * Boolean value whether the intl libraries exist on the system.
67
+         * 
68
+         * @var bool $intlSupport
69
+         */
70 70
     protected $intlSupport = false;
71 71
 
72 72
     /**
Please login to merge, or discard this patch.
Spacing   +1 added lines, -1 removed lines patch added patch discarded remove patch
@@ -254,7 +254,7 @@
 block discarded – undo
254 254
      * 
255 255
      * @return string|bool
256 256
      */
257
-    protected function formatMessage($line, array $replace = []): string|bool
257
+    protected function formatMessage($line, array $replace = []): string | bool
258 258
     {
259 259
         if ( ! $this->intlSupport || ! count($replace)) {
260 260
             return $line;
Please login to merge, or discard this patch.
src/components/View/FileViewFinder.php 1 patch
Indentation   +1 added lines, -1 removed lines patch added patch discarded remove patch
@@ -170,7 +170,7 @@
 block discarded – undo
170 170
             }
171 171
         }
172 172
         
173
-       throw new ViewException(__('view.notFound', ['file' => $name]));
173
+        throw new ViewException(__('view.notFound', ['file' => $name]));
174 174
     }
175 175
 
176 176
     /**
Please login to merge, or discard this patch.
src/components/Debug/Exceptions/Resources/views/details_content.php 1 patch
Braces   +5 added lines, -2 removed lines patch added patch discarded remove patch
@@ -21,10 +21,13 @@
 block discarded – undo
21 21
 				<?php endforeach; ?>	
22 22
 				</tbody>
23 23
 			</table>
24
-			<?php else : ?>
24
+			<?php else {
25
+    : ?>
25 26
 			<label class="empty"><?= e($label) ?></label>
26 27
 			<span class="empty"><?= e(__('exception.empty')) ?></span>
27
-			<?php endif; ?>
28
+			<?php endif;
29
+}
30
+?>
28 31
 		</div>
29 32
 	<?php endforeach; ?>
30 33
 	</div>
Please login to merge, or discard this patch.
src/components/Dotenv/Loader/Loader.php 2 patches
Indentation   +1 added lines, -1 removed lines patch added patch discarded remove patch
@@ -259,7 +259,7 @@
 block discarded – undo
259 259
             $quote = $value[0];
260 260
 
261 261
             $regexPattern = sprintf(
262
-					'/^
262
+                    '/^
263 263
 					%1$s          # match a quote at the start of the value
264 264
 					(             # capturing sub-pattern used
265 265
 								  (?:          # we do not need to capture this
Please login to merge, or discard this patch.
Spacing   +1 added lines, -1 removed lines patch added patch discarded remove patch
@@ -274,7 +274,7 @@
 block discarded – undo
274 274
         if (strpos($value, '$') !== false) {
275 275
             $repository = $this->repository;
276 276
 
277
-            $value = preg_replace_callback('~\${([a-zA-Z0-9_]+)}~', function ($pattern) use ($repository) {
277
+            $value = preg_replace_callback('~\${([a-zA-Z0-9_]+)}~', function($pattern) use ($repository) {
278 278
                 $nestedVariable = $repository->get($pattern[1]);
279 279
 
280 280
                 if (is_null($nestedVariable)) {
Please login to merge, or discard this patch.
src/components/Debug/ExceptionHandler.php 1 patch
Spacing   +3 added lines, -3 removed lines patch added patch discarded remove patch
@@ -159,7 +159,7 @@  discard block
 block discarded – undo
159 159
 
160 160
         $caughtLength = $this->caughtLength = 0;
161 161
 
162
-        ob_start(function ($buffer) {
162
+        ob_start(function($buffer) {
163 163
             $this->caughtBuffer = $buffer;
164 164
 
165 165
             return '';            
@@ -168,7 +168,7 @@  discard block
 block discarded – undo
168 168
         $this->sendPhpResponse($exception);
169 169
 
170 170
         if (isset($this->caughtBuffer[0])) {
171
-            ob_start(function ($buffer) {
171
+            ob_start(function($buffer) {
172 172
                 if ($this->caughtLength) {
173 173
                     $cleanBuffer = substr_replace($buffer, '', 0, $this->caughtLength);
174 174
 
@@ -458,7 +458,7 @@  discard block
 block discarded – undo
458 458
         }
459 459
 
460 460
         if (is_string($frmt)) {
461
-            $index  = strpos($f = $frmt, '&', max(strrpos($f, '%f'), strrpos($f, '%l')) ?: strlen($f));
461
+            $index = strpos($f = $frmt, '&', max(strrpos($f, '%f'), strrpos($f, '%l')) ?: strlen($f));
462 462
             $frmt = [substr($f, 0, $index)] + preg_split('/&([^>]++)>/', substr($f, $index), -1, PREG_SPLIT_DELIM_CAPTURE);
463 463
 
464 464
             for ($index = 1; isset($frmt[$index]); ++$index) {
Please login to merge, or discard this patch.
src/components/Debug/Exceptions/Handlers/PleasingPageHandler.php 3 patches
Spacing   +2 added lines, -2 removed lines patch added patch discarded remove patch
@@ -357,7 +357,7 @@  discard block
 block discarded – undo
357 357
 	public function setEditor($editor)
358 358
 	{
359 359
 		if ( ! is_callable($editor) && ! isset($this->editors[$editor])) {
360
-			throw new InvalidArgumentException("Unknown editor identifier: [{$editor}]. Known editors: " .
360
+			throw new InvalidArgumentException("Unknown editor identifier: [{$editor}]. Known editors: ".
361 361
 				implode(', ', array_keys($this->editors))
362 362
 			);
363 363
 		}
@@ -380,7 +380,7 @@  discard block
 block discarded – undo
380 380
 	{
381 381
 		$editor = $this->getEditor($file, $line);
382 382
 
383
-		if (empty($editor))	{
383
+		if (empty($editor)) {
384 384
 			return false;
385 385
 		}
386 386
 
Please login to merge, or discard this patch.
Braces   +3 added lines, -1 removed lines patch added patch discarded remove patch
@@ -333,7 +333,9 @@
 block discarded – undo
333 333
 
334 334
 		$vars = $this->collectionVars();
335 335
 		
336
-		if (empty($vars['message'])) $vars['message'] = __('exception.noMessage');
336
+		if (empty($vars['message'])) {
337
+		    $vars['message'] = __('exception.noMessage');
338
+		}
337 339
 		
338 340
 		$this->template->setVariables($vars);
339 341
 		$this->template->render($templatePath);
Please login to merge, or discard this patch.
Indentation   +403 added lines, -403 removed lines patch added patch discarded remove patch
@@ -39,425 +39,425 @@
 block discarded – undo
39 39
  */
40 40
 class PleasingPageHandler extends MainHandler
41 41
 {
42
-	/**
43
-	 * The brand main of handler.
44
-	 * 
45
-	 * @var string $brand
46
-	 */
47
-	protected $brand = 'Lenevor Debug';
48
-
49
-	/**
50
-	 * A string identifier for a known IDE/text editor, or a closure
51
-	 * that resolves a string that can be used to open a given file
52
-	 * in an editor.
53
-	 * 
54
-	 * @var mixed $editor
55
-	 */
56
-	protected $editor;
57
-
58
-	/**
59
-	 * A list of known editor strings.
60
-	 * 
61
-	 * @var array $editors
62
-	 */
63
-	protected $editors = [
64
-		"vscode"   => "vscode://file/%file:%line",
65
-		"sublime"  => "subl://open?url=file://%file&line=%line",
66
-		"phpstorm" => "phpstorm://open?file://%file&line=%line",
67
-		"textmate" => "txmt://open?url=file://%file&line=%line",
68
-		"atom"     => "atom://core/open/file?filename=%file&line=%line",
69
-	];
42
+    /**
43
+     * The brand main of handler.
44
+     * 
45
+     * @var string $brand
46
+     */
47
+    protected $brand = 'Lenevor Debug';
48
+
49
+    /**
50
+     * A string identifier for a known IDE/text editor, or a closure
51
+     * that resolves a string that can be used to open a given file
52
+     * in an editor.
53
+     * 
54
+     * @var mixed $editor
55
+     */
56
+    protected $editor;
57
+
58
+    /**
59
+     * A list of known editor strings.
60
+     * 
61
+     * @var array $editors
62
+     */
63
+    protected $editors = [
64
+        "vscode"   => "vscode://file/%file:%line",
65
+        "sublime"  => "subl://open?url=file://%file&line=%line",
66
+        "phpstorm" => "phpstorm://open?file://%file&line=%line",
67
+        "textmate" => "txmt://open?url=file://%file&line=%line",
68
+        "atom"     => "atom://core/open/file?filename=%file&line=%line",
69
+    ];
70 70
 	
71
-	/**
72
-	 * The page title main of handler.
73
-	 * 
74
-	 * @var string $pageTitle
75
-	 */
76
-	protected $pageTitle = 'Lenevor Debug! There was an error';
71
+    /**
72
+     * The page title main of handler.
73
+     * 
74
+     * @var string $pageTitle
75
+     */
76
+    protected $pageTitle = 'Lenevor Debug! There was an error';
77 77
 	
78
-	/**
79
-	 * Fast lookup cache for known resource locations.
80
-	 * 
81
-	 * @var array $resourceCache
82
-	 */
83
-	protected $resourceCache = [];
78
+    /**
79
+     * Fast lookup cache for known resource locations.
80
+     * 
81
+     * @var array $resourceCache
82
+     */
83
+    protected $resourceCache = [];
84 84
 	
85
-	/**
86
-	 * The path to the directory containing the html error template directories.
87
-	 * 
88
-	 * @var array $searchPaths
89
-	 */
90
-	protected $searchPaths = [];
91
-
92
-	/**
93
-	 * Gets the table of data.
94
-	 * 
95
-	 * @var array $tables
96
-	 */
97
-	protected $tables = [];
85
+    /**
86
+     * The path to the directory containing the html error template directories.
87
+     * 
88
+     * @var array $searchPaths
89
+     */
90
+    protected $searchPaths = [];
91
+
92
+    /**
93
+     * Gets the table of data.
94
+     * 
95
+     * @var array $tables
96
+     */
97
+    protected $tables = [];
98 98
 	
99
-	/**
100
-	 * The template handler system.
101
-	 * 
102
-	 * @var string|object $template
103
-	 */
104
-	protected $template;	
99
+    /**
100
+     * The template handler system.
101
+     * 
102
+     * @var string|object $template
103
+     */
104
+    protected $template;	
105 105
 	
106
-	/**
107
-	 * Constructor. The PleasingPageHandler class.
108
-	 * 
109
-	 * @return void
110
-	 */
111
-	public function __construct()
112
-	{
113
-		$this->template      = new TemplateHandler;
114
-		$this->searchPaths[] = dirname(__DIR__).DIRECTORY_SEPARATOR.'Resources';
115
-	}
116
-
117
-	/**
118
-	 * Adds an editor resolver, identified by a string name, and that may be a 
119
-	 * string path, or a callable resolver.
120
-	 * 
121
-	 * @param  string            $identifier
122
-	 * @param  string|\Callable  $resolver
123
-	 * 
124
-	 * @return void
125
-	 */
126
-	public function addEditor($identifier, $resolver): void
127
-	{
128
-		$this->editors[$identifier] = $resolver;
129
-	}
130
-
131
-	/**
132
-	 * Adds an entry to the list of tables displayed in the template.
133
-	 * The expected data is a simple associative array. Any nested arrays
134
-	 * will be flattened with print_r.
135
-	 * 
136
-	 * @param  \Syscodes\Components\Contracts\Debug\Table  $table
137
-	 * 
138
-	 * @return void
139
-	 */
140
-	public function addTables(Table $table): void
141
-	{
142
-		$this->tables[] = $table;
143
-	}
106
+    /**
107
+     * Constructor. The PleasingPageHandler class.
108
+     * 
109
+     * @return void
110
+     */
111
+    public function __construct()
112
+    {
113
+        $this->template      = new TemplateHandler;
114
+        $this->searchPaths[] = dirname(__DIR__).DIRECTORY_SEPARATOR.'Resources';
115
+    }
116
+
117
+    /**
118
+     * Adds an editor resolver, identified by a string name, and that may be a 
119
+     * string path, or a callable resolver.
120
+     * 
121
+     * @param  string            $identifier
122
+     * @param  string|\Callable  $resolver
123
+     * 
124
+     * @return void
125
+     */
126
+    public function addEditor($identifier, $resolver): void
127
+    {
128
+        $this->editors[$identifier] = $resolver;
129
+    }
130
+
131
+    /**
132
+     * Adds an entry to the list of tables displayed in the template.
133
+     * The expected data is a simple associative array. Any nested arrays
134
+     * will be flattened with print_r.
135
+     * 
136
+     * @param  \Syscodes\Components\Contracts\Debug\Table  $table
137
+     * 
138
+     * @return void
139
+     */
140
+    public function addTables(Table $table): void
141
+    {
142
+        $this->tables[] = $table;
143
+    }
144 144
 	
145
-	/**
146
-	 * Gathers the variables that will be made available to the view.
147
-	 * 
148
-	 * @return  array
149
-	 */
150
-	protected function collectionVars(): array
151
-	{
152
-		$supervisor = $this->getSupervisor();
153
-		$style      = file_get_contents($this->getResource('css/debug.base.css'));
154
-		$jscript    = file_get_contents($this->getResource('js/debug.base.js'));
155
-		$tables     = array_merge($this->getDefaultTables(), $this->tables);
145
+    /**
146
+     * Gathers the variables that will be made available to the view.
147
+     * 
148
+     * @return  array
149
+     */
150
+    protected function collectionVars(): array
151
+    {
152
+        $supervisor = $this->getSupervisor();
153
+        $style      = file_get_contents($this->getResource('css/debug.base.css'));
154
+        $jscript    = file_get_contents($this->getResource('js/debug.base.js'));
155
+        $tables     = array_merge($this->getDefaultTables(), $this->tables);
156 156
 		
157
-		return [ 
158
-			'class' => explode('\\', $supervisor->getExceptionName()),
159
-			'stylesheet' => preg_replace('#[\r\n\t ]+#', ' ', $style),
160
-			'javascript' => preg_replace('#[\r\n\t ]+#', ' ', $jscript),
161
-			'header' => $this->getResource('views/partials/updown/header.php'),
162
-			'footer' => $this->getResource('views/partials/updown/footer.php'),
163
-			'info_exception' => $this->getResource('views/partials/info/info_exception.php'),
164
-			'section_stack_exception' => $this->getResource('views/partials/section_stack_exception.php'),
165
-			'section_frame' => $this->getResource('views/partials/section_frame.php'),
166
-			'frame_description' => $this->getResource('views/partials/frames/frame_description.php'),
167
-			'frame_list' => $this->getResource('views/partials/frames//frame_list.php'),
168
-			'section_code' => $this->getResource('views/partials/section_code.php'),
169
-			'code_source' => $this->getResource('views/partials/codes/code_source.php'),
170
-			'request_info' => $this->getResource('views/partials/request_info.php'),
171
-			'navigation' => $this->getResource('views/partials/details/navigation.php'),
172
-			'section_detail_context' => $this->getResource('views/partials/details/section_detail_context.php'),
173
-			'plain_exception' => Formatter::formatExceptionAsPlainText($this->getSupervisor()),
174
-			'handler' => $this,
175
-			'handlers' => $this->getDebug()->getHandlers(),
176
-			'debug' => $this->getDebug(),
177
-			'code' => $this->getExceptionCode(),
178
-			'message' => $supervisor->getExceptionMessage(),
179
-			'frames' => $this->getExceptionFrames(),
180
-			'tables' => $this->getProcessTables($tables),
181
-		];
182
-	}
157
+        return [ 
158
+            'class' => explode('\\', $supervisor->getExceptionName()),
159
+            'stylesheet' => preg_replace('#[\r\n\t ]+#', ' ', $style),
160
+            'javascript' => preg_replace('#[\r\n\t ]+#', ' ', $jscript),
161
+            'header' => $this->getResource('views/partials/updown/header.php'),
162
+            'footer' => $this->getResource('views/partials/updown/footer.php'),
163
+            'info_exception' => $this->getResource('views/partials/info/info_exception.php'),
164
+            'section_stack_exception' => $this->getResource('views/partials/section_stack_exception.php'),
165
+            'section_frame' => $this->getResource('views/partials/section_frame.php'),
166
+            'frame_description' => $this->getResource('views/partials/frames/frame_description.php'),
167
+            'frame_list' => $this->getResource('views/partials/frames//frame_list.php'),
168
+            'section_code' => $this->getResource('views/partials/section_code.php'),
169
+            'code_source' => $this->getResource('views/partials/codes/code_source.php'),
170
+            'request_info' => $this->getResource('views/partials/request_info.php'),
171
+            'navigation' => $this->getResource('views/partials/details/navigation.php'),
172
+            'section_detail_context' => $this->getResource('views/partials/details/section_detail_context.php'),
173
+            'plain_exception' => Formatter::formatExceptionAsPlainText($this->getSupervisor()),
174
+            'handler' => $this,
175
+            'handlers' => $this->getDebug()->getHandlers(),
176
+            'debug' => $this->getDebug(),
177
+            'code' => $this->getExceptionCode(),
178
+            'message' => $supervisor->getExceptionMessage(),
179
+            'frames' => $this->getExceptionFrames(),
180
+            'tables' => $this->getProcessTables($tables),
181
+        ];
182
+    }
183 183
 	
184
-	/**
185
-	 * The way in which the data sender (usually the server) can tell the recipient
186
-	 * (the browser, in general) what type of data is being sent in this case, html format tagged.
187
-	 * 
188
-	 * @return string
189
-	 */
190
-	public function contentType(): string
191
-	{
192
-		return 'text/html;charset=UTF-8';
193
-	}
194
-
195
-	/**
196
-	 * Gets the brand of project.
197
-	 * 
198
-	 * @return string
199
-	 */
200
-	public function getBrand(): string
201
-	{
202
-		return $this->brand;
203
-	}
204
-
205
-	/**
206
-	 * Returns the default tables.
207
-	 * 
208
-	 * @return \Syscodes\Components\Contracts\Debug\Table[]
209
-	 */
210
-	protected function getDefaultTables()
211
-	{
212
-		return [new ArrayTable('', $_SERVER)];
213
-	}
214
-
215
-	/**
216
-	 * Get the code of the exception that is currently being handled.
217
-	 * 
218
-	 * @return string
219
-	 */
220
-	protected function getExceptionCode()
221
-	{
222
-		$exception = $this->getException();
223
-		$code      = $exception->getCode();
224
-
225
-		if ($exception instanceof ErrorException) {
226
-			$code = Misc::translateErrorCode($exception->getSeverity());
227
-		}
228
-
229
-		return (string) $code;
230
-	}
231
-
232
-	/**
233
-	 * Get the stack trace frames of the exception that is currently being handled.
234
-	 * 
235
-	 * @return \Syscodes\Components\Debug\Engine\Supervisor;
236
-	 */
237
-	protected function getExceptionFrames()
238
-	{
239
-		$frames = $this->getSupervisor()->getFrames();
184
+    /**
185
+     * The way in which the data sender (usually the server) can tell the recipient
186
+     * (the browser, in general) what type of data is being sent in this case, html format tagged.
187
+     * 
188
+     * @return string
189
+     */
190
+    public function contentType(): string
191
+    {
192
+        return 'text/html;charset=UTF-8';
193
+    }
194
+
195
+    /**
196
+     * Gets the brand of project.
197
+     * 
198
+     * @return string
199
+     */
200
+    public function getBrand(): string
201
+    {
202
+        return $this->brand;
203
+    }
204
+
205
+    /**
206
+     * Returns the default tables.
207
+     * 
208
+     * @return \Syscodes\Components\Contracts\Debug\Table[]
209
+     */
210
+    protected function getDefaultTables()
211
+    {
212
+        return [new ArrayTable('', $_SERVER)];
213
+    }
214
+
215
+    /**
216
+     * Get the code of the exception that is currently being handled.
217
+     * 
218
+     * @return string
219
+     */
220
+    protected function getExceptionCode()
221
+    {
222
+        $exception = $this->getException();
223
+        $code      = $exception->getCode();
224
+
225
+        if ($exception instanceof ErrorException) {
226
+            $code = Misc::translateErrorCode($exception->getSeverity());
227
+        }
228
+
229
+        return (string) $code;
230
+    }
231
+
232
+    /**
233
+     * Get the stack trace frames of the exception that is currently being handled.
234
+     * 
235
+     * @return \Syscodes\Components\Debug\Engine\Supervisor;
236
+     */
237
+    protected function getExceptionFrames()
238
+    {
239
+        $frames = $this->getSupervisor()->getFrames();
240 240
 		
241
-		return $frames;
242
-	}
241
+        return $frames;
242
+    }
243 243
 	
244
-	/**
245
-	 * Gets the page title web.
246
-	 * 
247
-	 * @return string
248
-	 */
249
-	public function getPageTitle(): string
250
-	{
251
-		return $this->pageTitle;
252
-	}
253
-
254
-	/**
255
-	 * Processes an array of tables making sure everything is allright.
256
-	 * 
257
-	 * @param  \Syscodes\Components\Contracts\Debug\Table[]  $tables
258
-	 * 
259
-	 * @return array
260
-	 */
261
-	protected function getProcessTables(array $tables): array
262
-	{
263
-		$processTables = [];
264
-
265
-		foreach ($tables as $table) {
266
-			if ( ! $table instanceof Table) {
267
-				continue;
268
-			}
269
-
270
-			$label = $table->getLabel();
271
-
272
-			try {
273
-				$data = $table->getData();
274
-
275
-				if ( ! (is_array($data) || $data instanceof Traversable)) {
276
-					$data = [];
277
-				}
278
-			} catch (Exception $e) {
279
-				$data = [];
280
-			}
281
-
282
-			$processTables[$label] = $data;
283
-		}
284
-
285
-		return $processTables;
286
-	}
287
-
288
-	/**
289
-	 * Finds a resource, by its relative path, in all available search paths.
290
-	 *
291
-	 * @param  string  $resource
292
-	 * 
293
-	 * @return string
294
-	 * 
295
-	 * @throws \RuntimeException
296
-	 */
297
-	protected function getResource($resource)
298
-	{
299
-		if (isset($this->resourceCache[$resource])) {
300
-			return $this->resourceCache[$resource];
301
-		}
302
-
303
-		foreach ($this->searchPaths as $path) {
304
-			$fullPath = $path.DIRECTORY_SEPARATOR.$resource;
305
-
306
-			if (is_file($fullPath)) {
307
-				// Cache:
308
-				$this->resourceCache[$resource] = $fullPath;
309
-
310
-				return $fullPath;
311
-			}
312
-		}
313
-
314
-		throw new RuntimeException( 
315
-				"Could not find resource '{$resource}' in any resource paths.". 
316
-				"(searched: ".join(", ", $this->searchPaths).")");
317
-	}
244
+    /**
245
+     * Gets the page title web.
246
+     * 
247
+     * @return string
248
+     */
249
+    public function getPageTitle(): string
250
+    {
251
+        return $this->pageTitle;
252
+    }
253
+
254
+    /**
255
+     * Processes an array of tables making sure everything is allright.
256
+     * 
257
+     * @param  \Syscodes\Components\Contracts\Debug\Table[]  $tables
258
+     * 
259
+     * @return array
260
+     */
261
+    protected function getProcessTables(array $tables): array
262
+    {
263
+        $processTables = [];
264
+
265
+        foreach ($tables as $table) {
266
+            if ( ! $table instanceof Table) {
267
+                continue;
268
+            }
269
+
270
+            $label = $table->getLabel();
271
+
272
+            try {
273
+                $data = $table->getData();
274
+
275
+                if ( ! (is_array($data) || $data instanceof Traversable)) {
276
+                    $data = [];
277
+                }
278
+            } catch (Exception $e) {
279
+                $data = [];
280
+            }
281
+
282
+            $processTables[$label] = $data;
283
+        }
284
+
285
+        return $processTables;
286
+    }
287
+
288
+    /**
289
+     * Finds a resource, by its relative path, in all available search paths.
290
+     *
291
+     * @param  string  $resource
292
+     * 
293
+     * @return string
294
+     * 
295
+     * @throws \RuntimeException
296
+     */
297
+    protected function getResource($resource)
298
+    {
299
+        if (isset($this->resourceCache[$resource])) {
300
+            return $this->resourceCache[$resource];
301
+        }
302
+
303
+        foreach ($this->searchPaths as $path) {
304
+            $fullPath = $path.DIRECTORY_SEPARATOR.$resource;
305
+
306
+            if (is_file($fullPath)) {
307
+                // Cache:
308
+                $this->resourceCache[$resource] = $fullPath;
309
+
310
+                return $fullPath;
311
+            }
312
+        }
313
+
314
+        throw new RuntimeException( 
315
+                "Could not find resource '{$resource}' in any resource paths.". 
316
+                "(searched: ".join(", ", $this->searchPaths).")");
317
+    }
318 318
 	
319
-	/**
320
-	 * Given an exception and status code will display the error to the client.
321
-	 * 
322
-	 * @return int|null
323
-	 */
324
-	public function handle()
325
-	{	
326
-		$templatePath = $this->getResource('views/debug.layout.php');
327
-
328
-		$vars = $this->collectionVars();
319
+    /**
320
+     * Given an exception and status code will display the error to the client.
321
+     * 
322
+     * @return int|null
323
+     */
324
+    public function handle()
325
+    {	
326
+        $templatePath = $this->getResource('views/debug.layout.php');
327
+
328
+        $vars = $this->collectionVars();
329 329
 		
330
-		if (empty($vars['message'])) $vars['message'] = __('exception.noMessage');
330
+        if (empty($vars['message'])) $vars['message'] = __('exception.noMessage');
331 331
 		
332
-		$this->template->setVariables($vars);
333
-		$this->template->render($templatePath);
332
+        $this->template->setVariables($vars);
333
+        $this->template->render($templatePath);
334 334
 		
335
-		return MainHandler::QUIT;
336
-	}
337
-
338
-	/**
339
-	 * Set the editor to use to open referenced files, by a string identifier or callable
340
-	 * that will be executed for every file reference. Should return a string.
341
-	 * 
342
-	 * @example  $debug->setEditor(function($file, $line) { return "file:///{$file}"; });
343
-	 * @example  $debug->setEditor('vscode');
344
-	 * 
345
-	 * @param  string  $editor
346
-	 * 
347
-	 * @return void
348
-	 * 
349
-	 * @throws \InvalidArgumentException
350
-	 */
351
-	public function setEditor($editor)
352
-	{
353
-		if ( ! is_callable($editor) && ! isset($this->editors[$editor])) {
354
-			throw new InvalidArgumentException("Unknown editor identifier: [{$editor}]. Known editors: " .
355
-				implode(', ', array_keys($this->editors))
356
-			);
357
-		}
358
-
359
-		$this->editor = $editor;
360
-	}
361
-
362
-	/**
363
-	 * Given a string file path, and an integer file line,
364
-	 * executes the editor resolver and returns.
365
-	 * 
366
-	 * @param  string  $file
367
-	 * @param  int	   $line
368
-	 * 
369
-	 * @return string|bool
370
-	 * 
371
-	 * @throws \UnexpectedValueException
372
-	 */
373
-	public function getEditorAtHref($file, $line)
374
-	{
375
-		$editor = $this->getEditor($file, $line);
376
-
377
-		if (empty($editor))	{
378
-			return false;
379
-		}
380
-
381
-		if ( ! isset($editor['url']) || ! is_string($editor['url'])) {
382
-			throw new UnexpectedValueException(__METHOD__.'should always resolve to a string or a valid editor array');
383
-		}
384
-
385
-		$editor['url'] = str_replace("%file", rawurldecode($file), $editor['url']);
386
-		$editor['url'] = str_replace("%line", rawurldecode($line), $editor['url']);
387
-
388
-		return $editor['url'];
389
-	}
390
-
391
-	/**
392
-	 * The editor must be a valid callable function/closure.
393
-	 * 
394
-	 * @param  string  $file
395
-	 * @param  int	   $line
396
-	 * 
397
-	 * @return array
398
-	 */
399
-	protected function getEditor($file, $line): array
400
-	{
401
-		if ( ! $this->editor || ( ! is_string($this->editor) && ! is_callable($this->editor))) {
402
-			return [];
403
-		}
404
-
405
-		if (is_string($this->editor) && isset($this->editors[$this->editor]) && ! is_callable($this->editors[$this->editor])) {
406
-			return ['url' => $this->editors[$this->editor]];
407
-		}
408
-
409
-		if (is_callable($this->editor) || (isset($this->editors[$this->editor]) && is_callable($this->editors[$this->editor]))) {
410
-			if (is_callable($this->editor)) {
411
-				$callback = call_user_func($this->editor, $file, $line);
412
-			} else {
413
-				$callback = call_user_func($this->editors[$this->editor], $file, $line);
414
-			}
415
-
416
-			if (empty($callback)) {
417
-				return [];
418
-			}
419
-
420
-			if (is_string($callback)) {
421
-				return ['url' => $callback];
422
-			}
335
+        return MainHandler::QUIT;
336
+    }
337
+
338
+    /**
339
+     * Set the editor to use to open referenced files, by a string identifier or callable
340
+     * that will be executed for every file reference. Should return a string.
341
+     * 
342
+     * @example  $debug->setEditor(function($file, $line) { return "file:///{$file}"; });
343
+     * @example  $debug->setEditor('vscode');
344
+     * 
345
+     * @param  string  $editor
346
+     * 
347
+     * @return void
348
+     * 
349
+     * @throws \InvalidArgumentException
350
+     */
351
+    public function setEditor($editor)
352
+    {
353
+        if ( ! is_callable($editor) && ! isset($this->editors[$editor])) {
354
+            throw new InvalidArgumentException("Unknown editor identifier: [{$editor}]. Known editors: " .
355
+                implode(', ', array_keys($this->editors))
356
+            );
357
+        }
358
+
359
+        $this->editor = $editor;
360
+    }
361
+
362
+    /**
363
+     * Given a string file path, and an integer file line,
364
+     * executes the editor resolver and returns.
365
+     * 
366
+     * @param  string  $file
367
+     * @param  int	   $line
368
+     * 
369
+     * @return string|bool
370
+     * 
371
+     * @throws \UnexpectedValueException
372
+     */
373
+    public function getEditorAtHref($file, $line)
374
+    {
375
+        $editor = $this->getEditor($file, $line);
376
+
377
+        if (empty($editor))	{
378
+            return false;
379
+        }
380
+
381
+        if ( ! isset($editor['url']) || ! is_string($editor['url'])) {
382
+            throw new UnexpectedValueException(__METHOD__.'should always resolve to a string or a valid editor array');
383
+        }
384
+
385
+        $editor['url'] = str_replace("%file", rawurldecode($file), $editor['url']);
386
+        $editor['url'] = str_replace("%line", rawurldecode($line), $editor['url']);
387
+
388
+        return $editor['url'];
389
+    }
390
+
391
+    /**
392
+     * The editor must be a valid callable function/closure.
393
+     * 
394
+     * @param  string  $file
395
+     * @param  int	   $line
396
+     * 
397
+     * @return array
398
+     */
399
+    protected function getEditor($file, $line): array
400
+    {
401
+        if ( ! $this->editor || ( ! is_string($this->editor) && ! is_callable($this->editor))) {
402
+            return [];
403
+        }
404
+
405
+        if (is_string($this->editor) && isset($this->editors[$this->editor]) && ! is_callable($this->editors[$this->editor])) {
406
+            return ['url' => $this->editors[$this->editor]];
407
+        }
408
+
409
+        if (is_callable($this->editor) || (isset($this->editors[$this->editor]) && is_callable($this->editors[$this->editor]))) {
410
+            if (is_callable($this->editor)) {
411
+                $callback = call_user_func($this->editor, $file, $line);
412
+            } else {
413
+                $callback = call_user_func($this->editors[$this->editor], $file, $line);
414
+            }
415
+
416
+            if (empty($callback)) {
417
+                return [];
418
+            }
419
+
420
+            if (is_string($callback)) {
421
+                return ['url' => $callback];
422
+            }
423 423
 			
424
-			return ['url' => isset($callback['url']) ? $callback['url'] : $callback];
425
-		}
424
+            return ['url' => isset($callback['url']) ? $callback['url'] : $callback];
425
+        }
426 426
 		
427
-		return [];
428
-	}
429
-
430
-	/**
431
-	 * Registered the editor.
432
-	 * 
433
-	 * @return string
434
-	 */
435
-	public function getEditorcode(): string
436
-	{
437
-		return $this->editor;
438
-	}
427
+        return [];
428
+    }
429
+
430
+    /**
431
+     * Registered the editor.
432
+     * 
433
+     * @return string
434
+     */
435
+    public function getEditorcode(): string
436
+    {
437
+        return $this->editor;
438
+    }
439 439
 	
440
-	/**
441
-	 * Sets the brand of project.
442
-	 * 
443
-	 * @param  string  $brand
444
-	 * 
445
-	 * @return void
446
-	 */
447
-	public function setBrand($brand): void
448
-	{
449
-		$this->brand = (string) $brand;
450
-	}
440
+    /**
441
+     * Sets the brand of project.
442
+     * 
443
+     * @param  string  $brand
444
+     * 
445
+     * @return void
446
+     */
447
+    public function setBrand($brand): void
448
+    {
449
+        $this->brand = (string) $brand;
450
+    }
451 451
 	
452
-	/**
453
-	 * Sets the page title web.
454
-	 * 
455
-	 * @param  string  $title
456
-	 * 
457
-	 * @return void
458
-	 */
459
-	public function setPageTitle($title): void
460
-	{
461
-		$this->pageTitle = (string) $title;
462
-	}
452
+    /**
453
+     * Sets the page title web.
454
+     * 
455
+     * @param  string  $title
456
+     * 
457
+     * @return void
458
+     */
459
+    public function setPageTitle($title): void
460
+    {
461
+        $this->pageTitle = (string) $title;
462
+    }
463 463
 }
464 464
\ No newline at end of file
Please login to merge, or discard this patch.
src/components/Filesystem/FileMimeType.php 1 patch
Indentation   +50 added lines, -50 removed lines patch added patch discarded remove patch
@@ -30,61 +30,61 @@
 block discarded – undo
30 30
  */
31 31
 class FileMimeType
32 32
 {
33
-	/**
34
-	 * Map of extensions to mime types.
35
-	 *
36
-	 * @var array $mimes
37
-	 */
38
-	public static $mimes = [];
33
+    /**
34
+     * Map of extensions to mime types.
35
+     *
36
+     * @var array $mimes
37
+     */
38
+    public static $mimes = [];
39 39
 
40
-	/**
41
-	 * Constructor with an optional verification that the path is 
42
-	 * really a mimes.
43
-	 *
44
-	 * @return mixed
45
-	 */
46
-	public function __construct()
47
-	{
48
-		static::$mimes = (array) require CON_PATH.'mimes.php';
49
-	}
40
+    /**
41
+     * Constructor with an optional verification that the path is 
42
+     * really a mimes.
43
+     *
44
+     * @return mixed
45
+     */
46
+    public function __construct()
47
+    {
48
+        static::$mimes = (array) require CON_PATH.'mimes.php';
49
+    }
50 50
 
51
-	/**
52
-	 * Attempts to determine the best mime type for the given file extension.
53
-	 *
54
-	 * @param  string  $extension
55
-	 *
56
-	 * @return string|null  The mime type found, or none if unable to determine
57
-	 */
58
-	public static function guessTypeFromExtension($extension)
59
-	{
60
-		$extension = trim(strtolower($extension), '. ');
51
+    /**
52
+     * Attempts to determine the best mime type for the given file extension.
53
+     *
54
+     * @param  string  $extension
55
+     *
56
+     * @return string|null  The mime type found, or none if unable to determine
57
+     */
58
+    public static function guessTypeFromExtension($extension)
59
+    {
60
+        $extension = trim(strtolower($extension), '. ');
61 61
 
62
-		if ( ! array_key_exists($extension, static::$mimes)) {
63
-			return null;
64
-		}
62
+        if ( ! array_key_exists($extension, static::$mimes)) {
63
+            return null;
64
+        }
65 65
 		
66
-		return is_array(static::$mimes[$extension]) ? static::$mimes[$extension][0] : static::$mimes[$extension];
67
-	}
66
+        return is_array(static::$mimes[$extension]) ? static::$mimes[$extension][0] : static::$mimes[$extension];
67
+    }
68 68
 
69
-	/**
70
-	 * Attempts to determine the best file extension for a given mime type.
71
-	 *
72
-	 * @param  string  $type
73
-	 *
74
-	 * @return string|null The extension determined, or null if unable to match
75
-	 */
76
-	public static function guessExtensionFromType($type)
77
-	{
78
-		$type = trim(strtolower($type), '. ');
69
+    /**
70
+     * Attempts to determine the best file extension for a given mime type.
71
+     *
72
+     * @param  string  $type
73
+     *
74
+     * @return string|null The extension determined, or null if unable to match
75
+     */
76
+    public static function guessExtensionFromType($type)
77
+    {
78
+        $type = trim(strtolower($type), '. ');
79 79
 
80
-		foreach (static::$mimes as $ext => $types) {
81
-			if (is_string($types) && $types == $type) {
82
-				return $ext;
83
-			} elseif (is_array($types) && in_array($type, $types)) {
84
-				return $ext;
85
-			}
86
-		}
80
+        foreach (static::$mimes as $ext => $types) {
81
+            if (is_string($types) && $types == $type) {
82
+                return $ext;
83
+            } elseif (is_array($types) && in_array($type, $types)) {
84
+                return $ext;
85
+            }
86
+        }
87 87
 
88
-		return null;
89
-	}
88
+        return null;
89
+    }
90 90
 }
91 91
\ No newline at end of file
Please login to merge, or discard this patch.