Passed
Push — main ( 4ddaea...7c5fe7 )
by Thierry
04:58
created
jaxon-core/src/Di/Traits/MetadataTrait.php 1 patch
Switch Indentation   +28 added lines, -28 removed lines patch added patch discarded remove patch
@@ -9,50 +9,50 @@
 block discarded – undo
9 9
 
10 10
 trait MetadataTrait
11 11
 {
12
-    /**
12
+/**
13 13
      * Register the values into the container
14 14
      *
15 15
      * @return void
16 16
      */
17
-    private function registerMetadataReader(): void
18
-    {
19
-        // Metadata cache
20
-        $this->set(MetadataCache::class, fn($di) =>
21
-            new MetadataCache($di->g('jaxon_metadata_cache_dir')));
17
+private function registerMetadataReader(): void
18
+{
19
+// Metadata cache
20
+$this->set(MetadataCache::class, fn($di) =>
21
+new MetadataCache($di->g('jaxon_metadata_cache_dir')));
22 22
 
23
-        // By default, register a fake metadata reader.
24
-        $this->set('metadata_reader_null', function() {
25
-            return new class implements MetadataReaderInterface
26
-            {
27
-                public function getAttributes(InputData $xInputData): Metadata
28
-                {
29
-                    return new Metadata();
30
-                }
31
-            };
32
-        });
23
+// By default, register a fake metadata reader.
24
+$this->set('metadata_reader_null', function() {
25
+return new class implements MetadataReaderInterface
26
+{
27
+    public function getAttributes(InputData $xInputData): Metadata
28
+    {
29
+        return new Metadata();
33 30
     }
31
+};
32
+});
33
+}
34 34
 
35
-    /**
35
+/**
36 36
      * Get the metadata cache
37 37
      *
38 38
      * @return MetadataCache
39 39
      */
40
-    public function getMetadataCache(): MetadataCache
41
-    {
42
-        return $this->g(MetadataCache::class);
43
-    }
40
+public function getMetadataCache(): MetadataCache
41
+{
42
+return $this->g(MetadataCache::class);
43
+}
44 44
 
45
-    /**
45
+/**
46 46
      * Get the metadata reader with the given id
47 47
      *
48 48
      * @param string $sReaderId
49 49
      *
50 50
      * @return MetadataReaderInterface
51 51
      */
52
-    public function getMetadataReader(string $sReaderId): MetadataReaderInterface
53
-    {
54
-        return $this->h("metadata_reader_$sReaderId") ?
55
-            $this->g("metadata_reader_$sReaderId") :
56
-            $this->g('metadata_reader_null');
57
-    }
52
+public function getMetadataReader(string $sReaderId): MetadataReaderInterface
53
+{
54
+return $this->h("metadata_reader_$sReaderId") ?
55
+$this->g("metadata_reader_$sReaderId") :
56
+$this->g('metadata_reader_null');
57
+}
58 58
 }
Please login to merge, or discard this patch.
jaxon-core/src/Di/Traits/PsrTrait.php 1 patch
Switch Indentation   +96 added lines, -96 removed lines patch added patch discarded remove patch
@@ -20,152 +20,152 @@
 block discarded – undo
20 20
 
21 21
 trait PsrTrait
22 22
 {
23
-    /**
23
+/**
24 24
      * @var string
25 25
      */
26
-    private $sPsrConfig = 'jaxon.psr.config.file';
26
+private $sPsrConfig = 'jaxon.psr.config.file';
27 27
 
28
-    /**
28
+/**
29 29
      * @var string
30 30
      */
31
-    private $sPsrServerRequest = 'jaxon.psr.server.request';
31
+private $sPsrServerRequest = 'jaxon.psr.server.request';
32 32
 
33
-    /**
33
+/**
34 34
      * Register the values into the container
35 35
      *
36 36
      * @return void
37 37
      */
38
-    private function registerPsr(): void
39
-    {
40
-        // The server request
41
-        $this->set(Psr17Factory::class, function() {
42
-            return new Psr17Factory();
43
-        });
44
-        $this->set(ServerRequestCreator::class, function($di) {
45
-            $xPsr17Factory = $di->g(Psr17Factory::class);
46
-            return new ServerRequestCreator(
47
-                $xPsr17Factory, // ServerRequestFactory
48
-                $xPsr17Factory, // UriFactory
49
-                $xPsr17Factory, // UploadedFileFactory
50
-                $xPsr17Factory, // StreamFactory
51
-            );
52
-        });
53
-        $this->set(ServerRequestInterface::class, function($di) {
54
-            return $di->g(ServerRequestCreator::class)->fromGlobals();
55
-        });
56
-        // Server request with the Jaxon request parameter as attribute
57
-        $this->set($this->sPsrServerRequest, function($di) {
58
-            $xParameterReader = $di->g(ParameterReader::class);
59
-            $xRequest = $di->g(ServerRequestInterface::class);
60
-            $aRequestParameter = $xParameterReader->getRequestParameter($xRequest);
61
-            return !is_array($aRequestParameter) ? $xRequest :
62
-                $xRequest->withAttribute('jxncall', $aRequestParameter);
63
-        });
64
-        // PSR factory
65
-        $this->set(PsrFactory::class, function($di) {
66
-            return new PsrFactory($di->g(Container::class));
67
-        });
68
-        // PSR request handler
69
-        $this->set(PsrRequestHandler::class, function($di) {
70
-            return new PsrRequestHandler($di->g(Container::class), $di->g(RequestHandler::class),
71
-                $di->g(ResponseManager::class), $di->g(Translator::class));
72
-        });
73
-        // PSR config middleware
74
-        $this->set(PsrConfigMiddleware::class, function($di) {
75
-            return new PsrConfigMiddleware($di->g(Container::class), $di->g($this->sPsrConfig));
76
-        });
77
-        // PSR ajax middleware
78
-        $this->set(PsrAjaxMiddleware::class, function($di) {
79
-            return new PsrAjaxMiddleware($di->g(Container::class), $di->g(RequestHandler::class),
80
-                $di->g(ResponseManager::class));
81
-        });
82
-        // The PSR response plugin
83
-        $this->set(PsrPlugin::class, function($di) {
84
-            return new PsrPlugin($di->g(Psr17Factory::class), $di->g(ServerRequestInterface::class));
85
-        });
86
-    }
38
+private function registerPsr(): void
39
+{
40
+// The server request
41
+$this->set(Psr17Factory::class, function() {
42
+return new Psr17Factory();
43
+});
44
+$this->set(ServerRequestCreator::class, function($di) {
45
+$xPsr17Factory = $di->g(Psr17Factory::class);
46
+return new ServerRequestCreator(
47
+    $xPsr17Factory, // ServerRequestFactory
48
+    $xPsr17Factory, // UriFactory
49
+    $xPsr17Factory, // UploadedFileFactory
50
+    $xPsr17Factory, // StreamFactory
51
+);
52
+});
53
+$this->set(ServerRequestInterface::class, function($di) {
54
+return $di->g(ServerRequestCreator::class)->fromGlobals();
55
+});
56
+// Server request with the Jaxon request parameter as attribute
57
+$this->set($this->sPsrServerRequest, function($di) {
58
+$xParameterReader = $di->g(ParameterReader::class);
59
+$xRequest = $di->g(ServerRequestInterface::class);
60
+$aRequestParameter = $xParameterReader->getRequestParameter($xRequest);
61
+return !is_array($aRequestParameter) ? $xRequest :
62
+    $xRequest->withAttribute('jxncall', $aRequestParameter);
63
+});
64
+// PSR factory
65
+$this->set(PsrFactory::class, function($di) {
66
+return new PsrFactory($di->g(Container::class));
67
+});
68
+// PSR request handler
69
+$this->set(PsrRequestHandler::class, function($di) {
70
+return new PsrRequestHandler($di->g(Container::class), $di->g(RequestHandler::class),
71
+    $di->g(ResponseManager::class), $di->g(Translator::class));
72
+});
73
+// PSR config middleware
74
+$this->set(PsrConfigMiddleware::class, function($di) {
75
+return new PsrConfigMiddleware($di->g(Container::class), $di->g($this->sPsrConfig));
76
+});
77
+// PSR ajax middleware
78
+$this->set(PsrAjaxMiddleware::class, function($di) {
79
+return new PsrAjaxMiddleware($di->g(Container::class), $di->g(RequestHandler::class),
80
+    $di->g(ResponseManager::class));
81
+});
82
+// The PSR response plugin
83
+$this->set(PsrPlugin::class, function($di) {
84
+return new PsrPlugin($di->g(Psr17Factory::class), $di->g(ServerRequestInterface::class));
85
+});
86
+}
87 87
 
88
-    /**
88
+/**
89 89
      * Get the request
90 90
      *
91 91
      * @return array
92 92
      */
93
-    public function getServerParams(): array
94
-    {
95
-        $xRequest = $this->g(ServerRequestInterface::class);
96
-        return $xRequest->getServerParams();
97
-    }
93
+public function getServerParams(): array
94
+{
95
+$xRequest = $this->g(ServerRequestInterface::class);
96
+return $xRequest->getServerParams();
97
+}
98 98
 
99
-    /**
99
+/**
100 100
      * Get the request with Jaxon parameter as attribute
101 101
      *
102 102
      * @return ServerRequestInterface
103 103
      */
104
-    public function getRequest(): ServerRequestInterface
105
-    {
106
-        return $this->g($this->sPsrServerRequest);
107
-    }
104
+public function getRequest(): ServerRequestInterface
105
+{
106
+return $this->g($this->sPsrServerRequest);
107
+}
108 108
 
109
-    /**
109
+/**
110 110
      * Return the array of arguments from the GET or POST data
111 111
      *
112 112
      * @return array
113 113
      */
114
-    public function getRequestArguments(): array
115
-    {
116
-        return $this->getRequest()->getAttribute('jxncall')['args'] ?? [];
117
-    }
114
+public function getRequestArguments(): array
115
+{
116
+return $this->getRequest()->getAttribute('jxncall')['args'] ?? [];
117
+}
118 118
 
119
-    /**
119
+/**
120 120
      * Get the PSR factory
121 121
      *
122 122
      * @return PsrFactory
123 123
      */
124
-    public function getPsrFactory(): PsrFactory
125
-    {
126
-        return $this->g(PsrFactory::class);
127
-    }
124
+public function getPsrFactory(): PsrFactory
125
+{
126
+return $this->g(PsrFactory::class);
127
+}
128 128
 
129
-    /**
129
+/**
130 130
      * Get the Psr17 factory
131 131
      *
132 132
      * @return Psr17Factory
133 133
      */
134
-    public function getPsr17Factory(): Psr17Factory
135
-    {
136
-        return $this->g(Psr17Factory::class);
137
-    }
134
+public function getPsr17Factory(): Psr17Factory
135
+{
136
+return $this->g(Psr17Factory::class);
137
+}
138 138
 
139
-    /**
139
+/**
140 140
      * Get the PSR request handler
141 141
      *
142 142
      * @return PsrRequestHandler
143 143
      */
144
-    public function getPsrRequestHandler(): PsrRequestHandler
145
-    {
146
-        return $this->g(PsrRequestHandler::class);
147
-    }
144
+public function getPsrRequestHandler(): PsrRequestHandler
145
+{
146
+return $this->g(PsrRequestHandler::class);
147
+}
148 148
 
149
-    /**
149
+/**
150 150
      * Get the PSR config middleware
151 151
      *
152 152
      * @param string $sConfigFile
153 153
      *
154 154
      * @return PsrConfigMiddleware
155 155
      */
156
-    public function getPsrConfigMiddleware(string $sConfigFile): PsrConfigMiddleware
157
-    {
158
-        !$this->h($this->sPsrConfig) && $this->val($this->sPsrConfig, $sConfigFile);
159
-        return $this->g(PsrConfigMiddleware::class);
160
-    }
156
+public function getPsrConfigMiddleware(string $sConfigFile): PsrConfigMiddleware
157
+{
158
+!$this->h($this->sPsrConfig) && $this->val($this->sPsrConfig, $sConfigFile);
159
+return $this->g(PsrConfigMiddleware::class);
160
+}
161 161
 
162
-    /**
162
+/**
163 163
      * Get the PSR ajax request middleware
164 164
      *
165 165
      * @return PsrAjaxMiddleware
166 166
      */
167
-    public function getPsrAjaxMiddleware(): PsrAjaxMiddleware
168
-    {
169
-        return $this->g(PsrAjaxMiddleware::class);
170
-    }
167
+public function getPsrAjaxMiddleware(): PsrAjaxMiddleware
168
+{
169
+return $this->g(PsrAjaxMiddleware::class);
170
+}
171 171
 }
Please login to merge, or discard this patch.
jaxon-core/src/Di/Traits/AppTrait.php 1 patch
Switch Indentation   +62 added lines, -62 removed lines patch added patch discarded remove patch
@@ -16,104 +16,104 @@
 block discarded – undo
16 16
 
17 17
 trait AppTrait
18 18
 {
19
-    /**
19
+/**
20 20
      * @var string
21 21
      */
22
-    private $sJsLibVersion = 'jaxon_javascript_library_version';
22
+private $sJsLibVersion = 'jaxon_javascript_library_version';
23 23
 
24
-    /**
24
+/**
25 25
      * Register the values into the container
26 26
      *
27 27
      * @return void
28 28
      */
29
-    private function registerApp(): void
30
-    {
31
-        // Config Manager
32
-        $this->set(ConfigEventManager::class, function($di) {
33
-            return new ConfigEventManager($di->g(Container::class));
34
-        });
35
-        $this->set(ConfigManager::class, function($di) {
36
-            $aDefaultOptions = require(__DIR__ . '/../../../config/lib.php');
37
-            return new ConfigManager($aDefaultOptions, $di->g(Translator::class),
38
-                $di->g(ConfigReader::class), $di->g(ConfigSetter::class),
39
-                $di->g(ConfigEventManager::class));
40
-        });
29
+private function registerApp(): void
30
+{
31
+// Config Manager
32
+$this->set(ConfigEventManager::class, function($di) {
33
+return new ConfigEventManager($di->g(Container::class));
34
+});
35
+$this->set(ConfigManager::class, function($di) {
36
+$aDefaultOptions = require(__DIR__ . '/../../../config/lib.php');
37
+return new ConfigManager($aDefaultOptions, $di->g(Translator::class),
38
+    $di->g(ConfigReader::class), $di->g(ConfigSetter::class),
39
+    $di->g(ConfigEventManager::class));
40
+});
41 41
 
42
-        // Jaxon App
43
-        $this->set(AppInterface::class, fn() => new App());
44
-        // Jaxon App bootstrap
45
-        $this->set(Bootstrap::class, function($di) {
46
-            return new Bootstrap($di->g(ConfigManager::class),
47
-                $di->g(PackageManager::class), $di->g(CallbackManager::class));
48
-        });
49
-        // The javascript library version
50
-        $this->set($this->sJsLibVersion, function($di) {
51
-            $xRequest = $di->getRequest();
52
-            $aParams = $xRequest->getMethod() === 'POST' ?
53
-                $xRequest->getParsedBody() : $xRequest->getQueryParams();
54
-            return $aParams['jxnv'] ?? '3.3.0';
55
-        });
56
-    }
42
+// Jaxon App
43
+$this->set(AppInterface::class, fn() => new App());
44
+// Jaxon App bootstrap
45
+$this->set(Bootstrap::class, function($di) {
46
+return new Bootstrap($di->g(ConfigManager::class),
47
+    $di->g(PackageManager::class), $di->g(CallbackManager::class));
48
+});
49
+// The javascript library version
50
+$this->set($this->sJsLibVersion, function($di) {
51
+$xRequest = $di->getRequest();
52
+$aParams = $xRequest->getMethod() === 'POST' ?
53
+    $xRequest->getParsedBody() : $xRequest->getQueryParams();
54
+return $aParams['jxnv'] ?? '3.3.0';
55
+});
56
+}
57 57
 
58
-    /**
58
+/**
59 59
      * Register the event handlers
60 60
      *
61 61
      * @return void
62 62
      */
63
-    private function setEventHandlers(): void
64
-    {
65
-        $xEventManager = $this->g(ConfigEventManager::class);
66
-        $xEventManager->addLibConfigListener(Translator::class);
67
-    }
63
+private function setEventHandlers(): void
64
+{
65
+$xEventManager = $this->g(ConfigEventManager::class);
66
+$xEventManager->addLibConfigListener(Translator::class);
67
+}
68 68
 
69
-    /**
69
+/**
70 70
      * Get the App instance
71 71
      *
72 72
      * @return AppInterface
73 73
      */
74
-    public function getApp(): AppInterface
75
-    {
76
-        return $this->g(AppInterface::class);
77
-    }
74
+public function getApp(): AppInterface
75
+{
76
+return $this->g(AppInterface::class);
77
+}
78 78
 
79
-    /**
79
+/**
80 80
      * Get the App bootstrap
81 81
      *
82 82
      * @return Bootstrap
83 83
      */
84
-    public function getBootstrap(): Bootstrap
85
-    {
86
-        return $this->g(Bootstrap::class);
87
-    }
84
+public function getBootstrap(): Bootstrap
85
+{
86
+return $this->g(Bootstrap::class);
87
+}
88 88
 
89
-    /**
89
+/**
90 90
      * Get the config manager
91 91
      *
92 92
      * @return ConfigManager
93 93
      */
94
-    public function config(): ConfigManager
95
-    {
96
-        return $this->g(ConfigManager::class);
97
-    }
94
+public function config(): ConfigManager
95
+{
96
+return $this->g(ConfigManager::class);
97
+}
98 98
 
99
-    /**
99
+/**
100 100
      * Get the javascript library version
101 101
      *
102 102
      * @return string
103 103
      */
104
-    public function getJsLibVersion(): string
105
-    {
106
-        return $this->g($this->sJsLibVersion);
107
-    }
104
+public function getJsLibVersion(): string
105
+{
106
+return $this->g($this->sJsLibVersion);
107
+}
108 108
 
109
-    /**
109
+/**
110 110
      * Get the default request URI
111 111
      *
112 112
      * @return string
113 113
      */
114
-    public function getRequestUri(): string
115
-    {
116
-        return $this->config()->getOption('core.request.uri',
117
-            $this->getParameterReader()->uri());
118
-    }
114
+public function getRequestUri(): string
115
+{
116
+return $this->config()->getOption('core.request.uri',
117
+$this->getParameterReader()->uri());
118
+}
119 119
 }
Please login to merge, or discard this patch.
jaxon-core/src/Di/Traits/ResponseTrait.php 1 patch
Switch Indentation   +34 added lines, -34 removed lines patch added patch discarded remove patch
@@ -15,64 +15,64 @@
 block discarded – undo
15 15
 
16 16
 trait ResponseTrait
17 17
 {
18
-    /**
18
+/**
19 19
      * Register the values into the container
20 20
      *
21 21
      * @return void
22 22
      */
23
-    private function registerResponses(): void
24
-    {
25
-        // Global Response
26
-        $this->set(Response::class, function($di) {
27
-            return new Response($di->g(ResponseManager::class), $di->g(PluginManager::class));
28
-        });
29
-        // Response Manager
30
-        $this->set(ResponseManager::class, function($di) {
31
-            $sEncoding = trim($di->g(ConfigManager::class)->getOption('core.encoding', ''));
32
-            return new ResponseManager($di->g(Container::class), $di->g(Translator::class), $sEncoding);
33
-        });
34
-    }
23
+private function registerResponses(): void
24
+{
25
+// Global Response
26
+$this->set(Response::class, function($di) {
27
+return new Response($di->g(ResponseManager::class), $di->g(PluginManager::class));
28
+});
29
+// Response Manager
30
+$this->set(ResponseManager::class, function($di) {
31
+$sEncoding = trim($di->g(ConfigManager::class)->getOption('core.encoding', ''));
32
+return new ResponseManager($di->g(Container::class), $di->g(Translator::class), $sEncoding);
33
+});
34
+}
35 35
 
36
-    /**
36
+/**
37 37
      * Get the response manager
38 38
      *
39 39
      * @return ResponseManager
40 40
      */
41
-    public function getResponseManager(): ResponseManager
42
-    {
43
-        return $this->g(ResponseManager::class);
44
-    }
41
+public function getResponseManager(): ResponseManager
42
+{
43
+return $this->g(ResponseManager::class);
44
+}
45 45
 
46
-    /**
46
+/**
47 47
      * Get the global Response object
48 48
      *
49 49
      * @return Response
50 50
      */
51
-    public function getResponse(): Response
52
-    {
53
-        return $this->g(Response::class);
54
-    }
51
+public function getResponse(): Response
52
+{
53
+return $this->g(Response::class);
54
+}
55 55
 
56
-    /**
56
+/**
57 57
      * Create a new Jaxon response
58 58
      *
59 59
      * @return Response
60 60
      */
61
-    public function newResponse(): Response
62
-    {
63
-        return new Response($this->g(ResponseManager::class), $this->g(PluginManager::class));
64
-    }
61
+public function newResponse(): Response
62
+{
63
+return new Response($this->g(ResponseManager::class), $this->g(PluginManager::class));
64
+}
65 65
 
66
-    /**
66
+/**
67 67
      * Create a new reponse for a Jaxon component
68 68
      *
69 69
      * @param JxnCall $xJxnCall
70 70
      *
71 71
      * @return NodeResponse
72 72
      */
73
-    public function newNodeResponse(JxnCall $xJxnCall): NodeResponse
74
-    {
75
-        return new NodeResponse($this->g(ResponseManager::class),
76
-            $this->g(PluginManager::class), $xJxnCall);
77
-    }
73
+public function newNodeResponse(JxnCall $xJxnCall): NodeResponse
74
+{
75
+return new NodeResponse($this->g(ResponseManager::class),
76
+$this->g(PluginManager::class), $xJxnCall);
77
+}
78 78
 }
Please login to merge, or discard this patch.
jaxon-core/src/Di/Traits/ViewTrait.php 1 patch
Switch Indentation   +53 added lines, -53 removed lines patch added patch discarded remove patch
@@ -18,78 +18,78 @@
 block discarded – undo
18 18
 
19 19
 trait ViewTrait
20 20
 {
21
-    /**
21
+/**
22 22
      * Register the values into the container
23 23
      *
24 24
      * @return void
25 25
      */
26
-    private function registerViews(): void
27
-    {
28
-        // Jaxon template view
29
-        $this->set(TemplateView::class, function($di) {
30
-            return new TemplateView($di->g(TemplateEngine::class));
31
-        });
32
-        // View Renderer
33
-        $this->set(ViewRenderer::class, function($di) {
34
-            $xViewRenderer = new ViewRenderer($di->g(Container::class));
35
-            // Add the default view renderer
36
-            $xViewRenderer->addRenderer('jaxon', function($di) {
37
-                return $di->g(TemplateView::class);
38
-            });
39
-            $sTemplateDir = rtrim(trim($di->g('jaxon.core.dir.template')), '/\\');
40
-            $sPaginationDir = $sTemplateDir . DIRECTORY_SEPARATOR . 'pagination';
41
-            // By default, render pagination templates with Jaxon.
42
-            $xViewRenderer->addNamespace('jaxon', $sTemplateDir, '.php', 'jaxon');
43
-            $xViewRenderer->addNamespace('pagination', $sPaginationDir, '.php', 'jaxon');
44
-            return $xViewRenderer;
45
-        });
26
+private function registerViews(): void
27
+{
28
+// Jaxon template view
29
+$this->set(TemplateView::class, function($di) {
30
+return new TemplateView($di->g(TemplateEngine::class));
31
+});
32
+// View Renderer
33
+$this->set(ViewRenderer::class, function($di) {
34
+$xViewRenderer = new ViewRenderer($di->g(Container::class));
35
+// Add the default view renderer
36
+$xViewRenderer->addRenderer('jaxon', function($di) {
37
+    return $di->g(TemplateView::class);
38
+});
39
+$sTemplateDir = rtrim(trim($di->g('jaxon.core.dir.template')), '/\\');
40
+$sPaginationDir = $sTemplateDir . DIRECTORY_SEPARATOR . 'pagination';
41
+// By default, render pagination templates with Jaxon.
42
+$xViewRenderer->addNamespace('jaxon', $sTemplateDir, '.php', 'jaxon');
43
+$xViewRenderer->addNamespace('pagination', $sPaginationDir, '.php', 'jaxon');
44
+return $xViewRenderer;
45
+});
46 46
 
47
-        // By default there is no dialog library registry.
48
-        $this->set(LibraryRegistryInterface::class, function($di) {
49
-            return null;
50
-        });
51
-        // Dialog command
52
-        $this->set(DialogCommand::class, function($di) {
53
-            return new DialogCommand($di->g(LibraryRegistryInterface::class));
54
-        });
55
-        // Pagination renderer
56
-        $this->set(RendererInterface::class, function($di) {
57
-            return new Renderer($di->g(ViewRenderer::class));
58
-        });
47
+// By default there is no dialog library registry.
48
+$this->set(LibraryRegistryInterface::class, function($di) {
49
+return null;
50
+});
51
+// Dialog command
52
+$this->set(DialogCommand::class, function($di) {
53
+return new DialogCommand($di->g(LibraryRegistryInterface::class));
54
+});
55
+// Pagination renderer
56
+$this->set(RendererInterface::class, function($di) {
57
+return new Renderer($di->g(ViewRenderer::class));
58
+});
59 59
 
60
-        // Helpers for HTML custom attributes formatting
61
-        $this->set(HtmlAttrHelper::class, function($di) {
62
-            return new HtmlAttrHelper($di->g(ComponentContainer::class));
63
-        });
64
-    }
60
+// Helpers for HTML custom attributes formatting
61
+$this->set(HtmlAttrHelper::class, function($di) {
62
+return new HtmlAttrHelper($di->g(ComponentContainer::class));
63
+});
64
+}
65 65
 
66
-    /**
66
+/**
67 67
      * Get the view renderer
68 68
      *
69 69
      * @return ViewRenderer
70 70
      */
71
-    public function getViewRenderer(): ViewRenderer
72
-    {
73
-        return $this->g(ViewRenderer::class);
74
-    }
71
+public function getViewRenderer(): ViewRenderer
72
+{
73
+return $this->g(ViewRenderer::class);
74
+}
75 75
 
76
-    /**
76
+/**
77 77
      * Get the custom attributes helper
78 78
      *
79 79
      * @return HtmlAttrHelper
80 80
      */
81
-    public function getHtmlAttrHelper(): HtmlAttrHelper
82
-    {
83
-        return $this->g(HtmlAttrHelper::class);
84
-    }
81
+public function getHtmlAttrHelper(): HtmlAttrHelper
82
+{
83
+return $this->g(HtmlAttrHelper::class);
84
+}
85 85
 
86
-    /**
86
+/**
87 87
      * Get the dialog command
88 88
      *
89 89
      * @return DialogCommand
90 90
      */
91
-    public function getDialogCommand(): DialogCommand
92
-    {
93
-        return $this->g(DialogCommand::class);
94
-    }
91
+public function getDialogCommand(): DialogCommand
92
+{
93
+return $this->g(DialogCommand::class);
94
+}
95 95
 }
Please login to merge, or discard this patch.
jaxon-core/src/Di/Traits/UtilTrait.php 1 patch
Switch Indentation   +58 added lines, -58 removed lines patch added patch discarded remove patch
@@ -14,78 +14,78 @@
 block discarded – undo
14 14
 
15 15
 trait UtilTrait
16 16
 {
17
-    /**
17
+/**
18 18
      * Register the values into the container
19 19
      *
20 20
      * @return void
21 21
      */
22
-    private function registerUtils(): void
23
-    {
24
-        // Translator
25
-        $this->set(Translator::class, function($di) {
26
-            $xTranslator = new Translator();
27
-            $sResourceDir = rtrim(trim($di->g('jaxon.core.dir.translation')), '/\\');
28
-            // Load the debug translations
29
-            $xTranslator->loadTranslations($sResourceDir . '/en/errors.php', 'en');
30
-            $xTranslator->loadTranslations($sResourceDir . '/fr/errors.php', 'fr');
31
-            $xTranslator->loadTranslations($sResourceDir . '/es/errors.php', 'es');
32
-            // Load the config translations
33
-            $xTranslator->loadTranslations($sResourceDir . '/en/config.php', 'en');
34
-            $xTranslator->loadTranslations($sResourceDir . '/fr/config.php', 'fr');
35
-            $xTranslator->loadTranslations($sResourceDir . '/es/config.php', 'es');
36
-            // Load the labels translations
37
-            $xTranslator->loadTranslations($sResourceDir . '/en/labels.php', 'en');
38
-            $xTranslator->loadTranslations($sResourceDir . '/fr/labels.php', 'fr');
39
-            $xTranslator->loadTranslations($sResourceDir . '/es/labels.php', 'es');
40
-            return $xTranslator;
41
-        });
22
+private function registerUtils(): void
23
+{
24
+// Translator
25
+$this->set(Translator::class, function($di) {
26
+$xTranslator = new Translator();
27
+$sResourceDir = rtrim(trim($di->g('jaxon.core.dir.translation')), '/\\');
28
+// Load the debug translations
29
+$xTranslator->loadTranslations($sResourceDir . '/en/errors.php', 'en');
30
+$xTranslator->loadTranslations($sResourceDir . '/fr/errors.php', 'fr');
31
+$xTranslator->loadTranslations($sResourceDir . '/es/errors.php', 'es');
32
+// Load the config translations
33
+$xTranslator->loadTranslations($sResourceDir . '/en/config.php', 'en');
34
+$xTranslator->loadTranslations($sResourceDir . '/fr/config.php', 'fr');
35
+$xTranslator->loadTranslations($sResourceDir . '/es/config.php', 'es');
36
+// Load the labels translations
37
+$xTranslator->loadTranslations($sResourceDir . '/en/labels.php', 'en');
38
+$xTranslator->loadTranslations($sResourceDir . '/fr/labels.php', 'fr');
39
+$xTranslator->loadTranslations($sResourceDir . '/es/labels.php', 'es');
40
+return $xTranslator;
41
+});
42 42
 
43
-        // Config reader
44
-        $this->set(ConfigReader::class, function($di) {
45
-            return new ConfigReader($di->g(ConfigSetter::class));
46
-        });
47
-        // Config setter
48
-        $this->set(ConfigSetter::class, function() {
49
-            return new ConfigSetter();
50
-        });
51
-        // Template engine
52
-        $this->set(TemplateEngine::class, function($di) {
53
-            $xTemplateEngine = new TemplateEngine();
54
-            $sTemplateDir = rtrim(trim($di->g('jaxon.core.dir.template')), '/\\');
55
-            $sPaginationDir = $sTemplateDir . DIRECTORY_SEPARATOR . 'pagination';
56
-            $xTemplateEngine->addNamespace('jaxon', $sTemplateDir, '.php');
57
-            $xTemplateEngine->addNamespace('pagination', $sPaginationDir, '.php');
58
-            $xTemplateEngine->setDefaultNamespace('jaxon');
59
-            return $xTemplateEngine;
60
-        });
61
-        // URI detector
62
-        $this->set(UriDetector::class, function() {
63
-            return new UriDetector();
64
-        });
43
+// Config reader
44
+$this->set(ConfigReader::class, function($di) {
45
+return new ConfigReader($di->g(ConfigSetter::class));
46
+});
47
+// Config setter
48
+$this->set(ConfigSetter::class, function() {
49
+return new ConfigSetter();
50
+});
51
+// Template engine
52
+$this->set(TemplateEngine::class, function($di) {
53
+$xTemplateEngine = new TemplateEngine();
54
+$sTemplateDir = rtrim(trim($di->g('jaxon.core.dir.template')), '/\\');
55
+$sPaginationDir = $sTemplateDir . DIRECTORY_SEPARATOR . 'pagination';
56
+$xTemplateEngine->addNamespace('jaxon', $sTemplateDir, '.php');
57
+$xTemplateEngine->addNamespace('pagination', $sPaginationDir, '.php');
58
+$xTemplateEngine->setDefaultNamespace('jaxon');
59
+return $xTemplateEngine;
60
+});
61
+// URI detector
62
+$this->set(UriDetector::class, function() {
63
+return new UriDetector();
64
+});
65 65
 
66
-        // Temp cache for Jaxon components
67
-        $this->set(Stash::class, function() {
68
-            return new Stash();
69
-        });
70
-    }
66
+// Temp cache for Jaxon components
67
+$this->set(Stash::class, function() {
68
+return new Stash();
69
+});
70
+}
71 71
 
72
-    /**
72
+/**
73 73
      * Get the template engine
74 74
      *
75 75
      * @return TemplateEngine
76 76
      */
77
-    public function getTemplateEngine(): TemplateEngine
78
-    {
79
-        return $this->g(TemplateEngine::class);
80
-    }
77
+public function getTemplateEngine(): TemplateEngine
78
+{
79
+return $this->g(TemplateEngine::class);
80
+}
81 81
 
82
-    /**
82
+/**
83 83
      * Get the temp cache for Jaxon components
84 84
      *
85 85
      * @return Stash
86 86
      */
87
-    public function getStash(): Stash
88
-    {
89
-        return $this->g(Stash::class);
90
-    }
87
+public function getStash(): Stash
88
+{
89
+return $this->g(Stash::class);
90
+}
91 91
 }
Please login to merge, or discard this patch.
jaxon-core/src/Di/Traits/RequestTrait.php 1 patch
Switch Indentation   +61 added lines, -61 removed lines patch added patch discarded remove patch
@@ -20,99 +20,99 @@
 block discarded – undo
20 20
 
21 21
 trait RequestTrait
22 22
 {
23
-    /**
23
+/**
24 24
      * Register the values into the container
25 25
      *
26 26
      * @return void
27 27
      */
28
-    private function registerRequests(): void
29
-    {
30
-        // The parameter reader
31
-        $this->set(ParameterReader::class, function($di) {
32
-            return new ParameterReader($di->g(Container::class), $di->g(Translator::class),
33
-                $di->g(ConfigManager::class), $di->g(UriDetector::class));
34
-        });
35
-        // Callback Manager
36
-        $this->set(CallbackManager::class, function($di) {
37
-            return new CallbackManager($di->g(ResponseManager::class));
38
-        });
39
-        // By default, register a null upload handler
40
-        $this->set(UploadHandlerInterface::class, function() {
41
-            return null;
42
-        });
43
-        // Request Handler
44
-        $this->set(RequestHandler::class, function($di) {
45
-            return new RequestHandler($di->g(Container::class), $di->g(PluginManager::class),
46
-                $di->g(ResponseManager::class), $di->g(CallbackManager::class),
47
-                $di->g(DatabagPlugin::class));
48
-        });
49
-        // Requests and calls Factory
50
-        $this->set(CallFactory::class, function($di) {
51
-            return new CallFactory($di->g(ComponentContainer::class), $di->g(DialogCommand::class));
52
-        });
53
-        // Factory for function parameters
54
-        $this->set(ParameterFactory::class, function() {
55
-            return new ParameterFactory();
56
-        });
57
-    }
28
+private function registerRequests(): void
29
+{
30
+// The parameter reader
31
+$this->set(ParameterReader::class, function($di) {
32
+return new ParameterReader($di->g(Container::class), $di->g(Translator::class),
33
+    $di->g(ConfigManager::class), $di->g(UriDetector::class));
34
+});
35
+// Callback Manager
36
+$this->set(CallbackManager::class, function($di) {
37
+return new CallbackManager($di->g(ResponseManager::class));
38
+});
39
+// By default, register a null upload handler
40
+$this->set(UploadHandlerInterface::class, function() {
41
+return null;
42
+});
43
+// Request Handler
44
+$this->set(RequestHandler::class, function($di) {
45
+return new RequestHandler($di->g(Container::class), $di->g(PluginManager::class),
46
+    $di->g(ResponseManager::class), $di->g(CallbackManager::class),
47
+    $di->g(DatabagPlugin::class));
48
+});
49
+// Requests and calls Factory
50
+$this->set(CallFactory::class, function($di) {
51
+return new CallFactory($di->g(ComponentContainer::class), $di->g(DialogCommand::class));
52
+});
53
+// Factory for function parameters
54
+$this->set(ParameterFactory::class, function() {
55
+return new ParameterFactory();
56
+});
57
+}
58 58
 
59
-    /**
59
+/**
60 60
      * Get the js call factory
61 61
      *
62 62
      * @return CallFactory
63 63
      */
64
-    public function getCallFactory(): CallFactory
65
-    {
66
-        return $this->g(CallFactory::class);
67
-    }
64
+public function getCallFactory(): CallFactory
65
+{
66
+return $this->g(CallFactory::class);
67
+}
68 68
 
69
-    /**
69
+/**
70 70
      * Get the js call parameter factory
71 71
      *
72 72
      * @return ParameterFactory
73 73
      */
74
-    public function getParameterFactory(): ParameterFactory
75
-    {
76
-        return $this->g(ParameterFactory::class);
77
-    }
74
+public function getParameterFactory(): ParameterFactory
75
+{
76
+return $this->g(ParameterFactory::class);
77
+}
78 78
 
79
-    /**
79
+/**
80 80
      * Get the request handler
81 81
      *
82 82
      * @return RequestHandler
83 83
      */
84
-    public function getRequestHandler(): RequestHandler
85
-    {
86
-        return $this->g(RequestHandler::class);
87
-    }
84
+public function getRequestHandler(): RequestHandler
85
+{
86
+return $this->g(RequestHandler::class);
87
+}
88 88
 
89
-    /**
89
+/**
90 90
      * Get the upload handler
91 91
      *
92 92
      * @return UploadHandlerInterface|null
93 93
      */
94
-    public function getUploadHandler(): ?UploadHandlerInterface
95
-    {
96
-        return $this->g(UploadHandlerInterface::class);
97
-    }
94
+public function getUploadHandler(): ?UploadHandlerInterface
95
+{
96
+return $this->g(UploadHandlerInterface::class);
97
+}
98 98
 
99
-    /**
99
+/**
100 100
      * Get the callback manager
101 101
      *
102 102
      * @return CallbackManager
103 103
      */
104
-    public function getCallbackManager(): CallbackManager
105
-    {
106
-        return $this->g(CallbackManager::class);
107
-    }
104
+public function getCallbackManager(): CallbackManager
105
+{
106
+return $this->g(CallbackManager::class);
107
+}
108 108
 
109
-    /**
109
+/**
110 110
      * Get the parameter reader
111 111
      *
112 112
      * @return ParameterReader
113 113
      */
114
-    public function getParameterReader(): ParameterReader
115
-    {
116
-        return $this->g(ParameterReader::class);
117
-    }
114
+public function getParameterReader(): ParameterReader
115
+{
116
+return $this->g(ParameterReader::class);
117
+}
118 118
 }
Please login to merge, or discard this patch.
jaxon-core/src/Di/Traits/DiAutoTrait.php 1 patch
Switch Indentation   +27 added lines, -27 removed lines patch added patch discarded remove patch
@@ -24,14 +24,14 @@  discard block
 block discarded – undo
24 24
 
25 25
 trait DiAutoTrait
26 26
 {
27
-    /**
27
+/**
28 28
      * The container for parameters
29 29
      *
30 30
      * @return Container
31 31
      */
32
-    abstract protected function cn(): Container;
32
+abstract protected function cn(): Container;
33 33
 
34
-    /**
34
+/**
35 35
      * Create an instance of a class, getting the constructor parameters from the DI container
36 36
      *
37 37
      * @param class-string|ReflectionClass $xClass The class name or the reflection class
@@ -40,36 +40,36 @@  discard block
 block discarded – undo
40 40
      * @throws ReflectionException
41 41
      * @throws SetupException
42 42
      */
43
-    public function make(string|ReflectionClass $xClass): mixed
44
-    {
45
-        if(is_string($xClass))
46
-        {
47
-            // Create the reflection class instance
48
-            $xClass = new ReflectionClass($xClass);
49
-        }
50
-        // Use the Reflection class to get the parameters of the constructor
51
-        if(($constructor = $xClass->getConstructor()) === null)
52
-        {
53
-            return $xClass->newInstance();
54
-        }
43
+public function make(string|ReflectionClass $xClass): mixed
44
+{
45
+if(is_string($xClass))
46
+{
47
+// Create the reflection class instance
48
+$xClass = new ReflectionClass($xClass);
49
+}
50
+// Use the Reflection class to get the parameters of the constructor
51
+if(($constructor = $xClass->getConstructor()) === null)
52
+{
53
+return $xClass->newInstance();
54
+}
55 55
 
56
-        $aParameters = array_map(function($xParameter) use($xClass) {
57
-            return $this->cn()->getParameter($xClass, $xParameter);
58
-        }, $constructor->getParameters());
59
-        return $xClass->newInstanceArgs($aParameters);
60
-    }
56
+$aParameters = array_map(function($xParameter) use($xClass) {
57
+return $this->cn()->getParameter($xClass, $xParameter);
58
+}, $constructor->getParameters());
59
+return $xClass->newInstanceArgs($aParameters);
60
+}
61 61
 
62
-    /**
62
+/**
63 63
      * Create an instance of a class by automatically fetching the dependencies in the constructor.
64 64
      *
65 65
      * @param class-string $sClass    The class name
66 66
      *
67 67
      * @return void
68 68
      */
69
-    public function auto(string $sClass): void
70
-    {
71
-        $this->set($sClass, function() use ($sClass) {
72
-            return $this->make($sClass);
73
-        });
74
-    }
69
+public function auto(string $sClass): void
70
+{
71
+$this->set($sClass, function() use ($sClass) {
72
+return $this->make($sClass);
73
+});
74
+}
75 75
 }
Please login to merge, or discard this patch.
jaxon-core/src/App/Pagination/Paginator.php 1 patch
Switch Indentation   +223 added lines, -223 removed lines patch added patch discarded remove patch
@@ -59,52 +59,52 @@  discard block
 block discarded – undo
59 59
 
60 60
 class Paginator
61 61
 {
62
-    /**
62
+/**
63 63
      * @var integer
64 64
      */
65
-    protected $nItemsCount = 0;
65
+protected $nItemsCount = 0;
66 66
 
67
-    /**
67
+/**
68 68
      * @var integer
69 69
      */
70
-    protected $nPagesCount = 0;
70
+protected $nPagesCount = 0;
71 71
 
72
-    /**
72
+/**
73 73
      * @var integer
74 74
      */
75
-    protected $nItemsPerPage = 0;
75
+protected $nItemsPerPage = 0;
76 76
 
77
-    /**
77
+/**
78 78
      * @var integer
79 79
      */
80
-    protected $nPageNumber = 0;
80
+protected $nPageNumber = 0;
81 81
 
82
-    /**
82
+/**
83 83
      * @var integer
84 84
      */
85
-    protected $nMaxPages = 10;
85
+protected $nMaxPages = 10;
86 86
 
87
-    /**
87
+/**
88 88
      * @var string
89 89
      */
90
-    protected $sPreviousText = '«';
90
+protected $sPreviousText = '«';
91 91
 
92
-    /**
92
+/**
93 93
      * @var string
94 94
      */
95
-    protected $sNextText = '»';
95
+protected $sNextText = '»';
96 96
 
97
-    /**
97
+/**
98 98
      * @var string
99 99
      */
100
-    protected $sEllipsysText = '...';
100
+protected $sEllipsysText = '...';
101 101
 
102
-    /**
102
+/**
103 103
      * @var PaginatorPlugin
104 104
      */
105
-    private $xPlugin;
105
+private $xPlugin;
106 106
 
107
-    /**
107
+/**
108 108
      * The constructor.
109 109
      *
110 110
      * @param PaginatorPlugin $xPlugin
@@ -112,293 +112,293 @@  discard block
 block discarded – undo
112 112
      * @param int $nItemsPerPage    The number of items per page
113 113
      * @param int $nItemsCount      The total number of items
114 114
      */
115
-    public function __construct(PaginatorPlugin $xPlugin, int $nPageNumber, int $nItemsPerPage, int $nItemsCount)
116
-    {
117
-        $this->xPlugin = $xPlugin;
118
-        $this->nItemsPerPage = $nItemsPerPage > 0 ? $nItemsPerPage : 0;
119
-        $this->nItemsCount = $nItemsCount > 0 ? $nItemsCount : 0;
120
-        $this->nPageNumber = $nPageNumber < 1 ? 1 : $nPageNumber;
121
-        $this->updatePagesCount();
122
-    }
123
-
124
-    /**
115
+public function __construct(PaginatorPlugin $xPlugin, int $nPageNumber, int $nItemsPerPage, int $nItemsCount)
116
+{
117
+$this->xPlugin = $xPlugin;
118
+$this->nItemsPerPage = $nItemsPerPage > 0 ? $nItemsPerPage : 0;
119
+$this->nItemsCount = $nItemsCount > 0 ? $nItemsCount : 0;
120
+$this->nPageNumber = $nPageNumber < 1 ? 1 : $nPageNumber;
121
+$this->updatePagesCount();
122
+}
123
+
124
+/**
125 125
      * Update the number of pages
126 126
      *
127 127
      * @return Paginator
128 128
      */
129
-    private function updatePagesCount(): Paginator
130
-    {
131
-        $this->nPagesCount = ($this->nItemsPerPage === 0 ? 0 :
132
-            (int)ceil($this->nItemsCount / $this->nItemsPerPage));
133
-        if($this->nPageNumber > $this->nPagesCount)
134
-        {
135
-            $this->nPageNumber = $this->nPagesCount;
136
-        }
137
-        return $this;
138
-    }
139
-
140
-    /**
129
+private function updatePagesCount(): Paginator
130
+{
131
+$this->nPagesCount = ($this->nItemsPerPage === 0 ? 0 :
132
+(int)ceil($this->nItemsCount / $this->nItemsPerPage));
133
+if($this->nPageNumber > $this->nPagesCount)
134
+{
135
+$this->nPageNumber = $this->nPagesCount;
136
+}
137
+return $this;
138
+}
139
+
140
+/**
141 141
      * Set the text for the previous page link
142 142
      *
143 143
      * @param string $sText    The text for the previous page link
144 144
      *
145 145
      * @return Paginator
146 146
      */
147
-    public function setPreviousText(string $sText): Paginator
148
-    {
149
-        $this->sPreviousText = $sText;
150
-        return $this;
151
-    }
147
+public function setPreviousText(string $sText): Paginator
148
+{
149
+$this->sPreviousText = $sText;
150
+return $this;
151
+}
152 152
 
153
-    /**
153
+/**
154 154
      * Set the text for the next page link
155 155
      *
156 156
      * @param string $sText    The text for the previous page link
157 157
      *
158 158
      * @return Paginator
159 159
      */
160
-    public function setNextText(string $sText): Paginator
161
-    {
162
-        $this->sNextText = $sText;
163
-        return $this;
164
-    }
160
+public function setNextText(string $sText): Paginator
161
+{
162
+$this->sNextText = $sText;
163
+return $this;
164
+}
165 165
 
166
-    /**
166
+/**
167 167
      * Set the max number of pages to show
168 168
      *
169 169
      * @param int $nMaxPages    The max number of pages to show
170 170
      *
171 171
      * @return Paginator
172 172
      */
173
-    public function setMaxPages(int $nMaxPages): Paginator
174
-    {
175
-        $this->nMaxPages = max($nMaxPages, 4);
176
-        return $this;
177
-    }
173
+public function setMaxPages(int $nMaxPages): Paginator
174
+{
175
+$this->nMaxPages = max($nMaxPages, 4);
176
+return $this;
177
+}
178 178
 
179
-    /**
179
+/**
180 180
      * Get the previous page data.
181 181
      *
182 182
      * @return Page
183 183
      */
184
-    protected function getPrevPage(): Page
185
-    {
186
-        return $this->nPageNumber <= 1 ?
187
-            new Page('disabled', $this->sPreviousText, 0) :
188
-            new Page('enabled', $this->sPreviousText, $this->nPageNumber - 1);
189
-    }
190
-
191
-    /**
184
+protected function getPrevPage(): Page
185
+{
186
+return $this->nPageNumber <= 1 ?
187
+new Page('disabled', $this->sPreviousText, 0) :
188
+new Page('enabled', $this->sPreviousText, $this->nPageNumber - 1);
189
+}
190
+
191
+/**
192 192
      * Get the next page data.
193 193
      *
194 194
      * @return Page
195 195
      */
196
-    protected function getNextPage(): Page
197
-    {
198
-        return $this->nPageNumber >= $this->nPagesCount ?
199
-            new Page('disabled', $this->sNextText, 0) :
200
-            new Page('enabled', $this->sNextText, $this->nPageNumber + 1);
201
-    }
202
-
203
-    /**
196
+protected function getNextPage(): Page
197
+{
198
+return $this->nPageNumber >= $this->nPagesCount ?
199
+new Page('disabled', $this->sNextText, 0) :
200
+new Page('enabled', $this->sNextText, $this->nPageNumber + 1);
201
+}
202
+
203
+/**
204 204
      * Get a page data.
205 205
      *
206 206
      * @param integer $nNumber    The page number
207 207
      *
208 208
      * @return Page
209 209
      */
210
-    protected function getPage(int $nNumber): Page
211
-    {
212
-        if($nNumber < 1)
213
-        {
214
-            return new Page('disabled', $this->sEllipsysText, 0);
215
-        }
216
-        $sType = ($nNumber === $this->nPageNumber ? 'current' : 'enabled');
217
-        return new Page($sType, "$nNumber", $nNumber);
218
-    }
219
-
220
-    /**
210
+protected function getPage(int $nNumber): Page
211
+{
212
+if($nNumber < 1)
213
+{
214
+return new Page('disabled', $this->sEllipsysText, 0);
215
+}
216
+$sType = ($nNumber === $this->nPageNumber ? 'current' : 'enabled');
217
+return new Page($sType, "$nNumber", $nNumber);
218
+}
219
+
220
+/**
221 221
      * Get the array of page numbers to be printed.
222 222
      *
223 223
      * Example: [1, 0, 4, 5, 6, 0, 10]
224 224
      *
225 225
      * @return array
226 226
      */
227
-    protected function getPageNumbers(): array
228
-    {
229
-        $aPageNumbers = [];
230
-
231
-        if($this->nPagesCount <= $this->nMaxPages)
232
-        {
233
-            for($i = 0; $i < $this->nPagesCount; $i++)
234
-            {
235
-                $aPageNumbers[] = $i + 1;
236
-            }
237
-
238
-            return $aPageNumbers;
239
-        }
240
-
241
-        // Determine the sliding range, centered around the current page.
242
-        $nNumAdjacents = (int)floor(($this->nMaxPages - 4) / 2);
243
-
244
-        $nSlidingStart = 1;
245
-        $nSlidingEndOffset = $nNumAdjacents + 3 - $this->nPageNumber;
246
-        if($nSlidingEndOffset < 0)
247
-        {
248
-            $nSlidingStart = $this->nPageNumber - $nNumAdjacents;
249
-            $nSlidingEndOffset = 0;
250
-        }
251
-
252
-        $nSlidingEnd = $this->nPagesCount;
253
-        $nSlidingStartOffset = $this->nPageNumber + $nNumAdjacents + 2 - $this->nPagesCount;
254
-        if($nSlidingStartOffset < 0)
255
-        {
256
-            $nSlidingEnd = $this->nPageNumber + $nNumAdjacents;
257
-            $nSlidingStartOffset = 0;
258
-        }
259
-
260
-        // Build the list of page numbers.
261
-        if($nSlidingStart > 1)
262
-        {
263
-            $aPageNumbers[] = 1;
264
-            $aPageNumbers[] = 0; // Ellipsys;
265
-        }
266
-        for($i = $nSlidingStart - $nSlidingStartOffset; $i <= $nSlidingEnd + $nSlidingEndOffset; $i++)
267
-        {
268
-            $aPageNumbers[] = $i;
269
-        }
270
-        if($nSlidingEnd < $this->nPagesCount)
271
-        {
272
-            $aPageNumbers[] = 0; // Ellipsys;
273
-            $aPageNumbers[] = $this->nPagesCount;
274
-        }
275
-
276
-        return $aPageNumbers;
277
-    }
278
-
279
-    /**
227
+protected function getPageNumbers(): array
228
+{
229
+$aPageNumbers = [];
230
+
231
+if($this->nPagesCount <= $this->nMaxPages)
232
+{
233
+for($i = 0; $i < $this->nPagesCount; $i++)
234
+{
235
+    $aPageNumbers[] = $i + 1;
236
+}
237
+
238
+return $aPageNumbers;
239
+}
240
+
241
+// Determine the sliding range, centered around the current page.
242
+$nNumAdjacents = (int)floor(($this->nMaxPages - 4) / 2);
243
+
244
+$nSlidingStart = 1;
245
+$nSlidingEndOffset = $nNumAdjacents + 3 - $this->nPageNumber;
246
+if($nSlidingEndOffset < 0)
247
+{
248
+$nSlidingStart = $this->nPageNumber - $nNumAdjacents;
249
+$nSlidingEndOffset = 0;
250
+}
251
+
252
+$nSlidingEnd = $this->nPagesCount;
253
+$nSlidingStartOffset = $this->nPageNumber + $nNumAdjacents + 2 - $this->nPagesCount;
254
+if($nSlidingStartOffset < 0)
255
+{
256
+$nSlidingEnd = $this->nPageNumber + $nNumAdjacents;
257
+$nSlidingStartOffset = 0;
258
+}
259
+
260
+// Build the list of page numbers.
261
+if($nSlidingStart > 1)
262
+{
263
+$aPageNumbers[] = 1;
264
+$aPageNumbers[] = 0; // Ellipsys;
265
+}
266
+for($i = $nSlidingStart - $nSlidingStartOffset; $i <= $nSlidingEnd + $nSlidingEndOffset; $i++)
267
+{
268
+$aPageNumbers[] = $i;
269
+}
270
+if($nSlidingEnd < $this->nPagesCount)
271
+{
272
+$aPageNumbers[] = 0; // Ellipsys;
273
+$aPageNumbers[] = $this->nPagesCount;
274
+}
275
+
276
+return $aPageNumbers;
277
+}
278
+
279
+/**
280 280
      * Get the current page number.
281 281
      *
282 282
      * @return int
283 283
      */
284
-    public function currentPage(): int
285
-    {
286
-        return $this->nPageNumber;
287
-    }
284
+public function currentPage(): int
285
+{
286
+return $this->nPageNumber;
287
+}
288 288
 
289
-    /**
289
+/**
290 290
      * Get the links (pages raw data).
291 291
      *
292 292
      * @return array<Page>
293 293
      */
294
-    public function pages(): array
295
-    {
296
-        if($this->nPagesCount < 2)
297
-        {
298
-            return [];
299
-        }
300
-
301
-        $aPageNumbers = $this->getPageNumbers();
302
-        $aPages = [$this->getPrevPage()];
303
-        array_walk($aPageNumbers, function($nNumber) use(&$aPages) {
304
-            $aPages[] = $this->getPage($nNumber);
305
-        });
306
-        $aPages[] = $this->getNextPage();
307
-
308
-        return $aPages;
309
-    }
310
-
311
-    /**
294
+public function pages(): array
295
+{
296
+if($this->nPagesCount < 2)
297
+{
298
+return [];
299
+}
300
+
301
+$aPageNumbers = $this->getPageNumbers();
302
+$aPages = [$this->getPrevPage()];
303
+array_walk($aPageNumbers, function($nNumber) use(&$aPages) {
304
+$aPages[] = $this->getPage($nNumber);
305
+});
306
+$aPages[] = $this->getNextPage();
307
+
308
+return $aPages;
309
+}
310
+
311
+/**
312 312
      * Call a closure that will receive the page number as parameter.
313 313
      *
314 314
      * @param Closure $fPageCallback
315 315
      *
316 316
      * @return Paginator
317 317
      */
318
-    public function page(Closure $fPageCallback): Paginator
319
-    {
320
-        $fPageCallback($this->nPageNumber);
318
+public function page(Closure $fPageCallback): Paginator
319
+{
320
+$fPageCallback($this->nPageNumber);
321 321
 
322
-        return $this;
323
-    }
322
+return $this;
323
+}
324 324
 
325
-    /**
325
+/**
326 326
      * Call a closure that will receive the pagination offset as parameter.
327 327
      *
328 328
      * @param Closure $fOffsetCallback
329 329
      *
330 330
      * @return Paginator
331 331
      */
332
-    public function offset(Closure $fOffsetCallback): Paginator
333
-    {
334
-        $fOffsetCallback(($this->nPageNumber - 1) * $this->nItemsPerPage);
332
+public function offset(Closure $fOffsetCallback): Paginator
333
+{
334
+$fOffsetCallback(($this->nPageNumber - 1) * $this->nItemsPerPage);
335 335
 
336
-        return $this;
337
-    }
336
+return $this;
337
+}
338 338
 
339
-    /**
339
+/**
340 340
      * Show the pagination links
341 341
      *
342 342
      * @return string
343 343
      */
344
-    private function renderLinks(): string
345
-    {
346
-        $aPages = $this->pages();
347
-        if(count($aPages) === 0)
348
-        {
349
-            return '';
350
-        }
351
-
352
-        $xPrevPage = array_shift($aPages); // The first entry in the array
353
-        $xNextPage = array_pop($aPages); // The last entry in the array
354
-        return $this->xPlugin->renderer()->render($aPages, $xPrevPage, $xNextPage);
355
-    }
356
-
357
-    /**
344
+private function renderLinks(): string
345
+{
346
+$aPages = $this->pages();
347
+if(count($aPages) === 0)
348
+{
349
+return '';
350
+}
351
+
352
+$xPrevPage = array_shift($aPages); // The first entry in the array
353
+$xNextPage = array_pop($aPages); // The last entry in the array
354
+return $this->xPlugin->renderer()->render($aPages, $xPrevPage, $xNextPage);
355
+}
356
+
357
+/**
358 358
      * Show the pagination links
359 359
      *
360 360
      * @param string $sWrapperId
361 361
      *
362 362
      * @return array|null
363 363
      */
364
-    private function showLinks(string $sWrapperId): ?array
365
-    {
366
-        $sHtml = $this->renderLinks();
367
-        // The HTML code must always be displayed, even if it is empty.
368
-        if(is_a($this->xPlugin->response(), Response::class))
369
-        {
370
-            /** @var Response */
371
-            $xResponse = $this->xPlugin->response();
372
-            $xResponse->html($sWrapperId, $sHtml);
373
-            return !$sHtml ? null : ['id' => $sWrapperId];
374
-        }
375
-
376
-        // The wrapper id is not needed for the NodeResponse
377
-        /** @var NodeResponse */
378
-        $xResponse = $this->xPlugin->response();
379
-        $xResponse->html($sHtml);
380
-        return !$sHtml ? null : [];
381
-    }
382
-
383
-    /**
364
+private function showLinks(string $sWrapperId): ?array
365
+{
366
+$sHtml = $this->renderLinks();
367
+// The HTML code must always be displayed, even if it is empty.
368
+if(is_a($this->xPlugin->response(), Response::class))
369
+{
370
+/** @var Response */
371
+$xResponse = $this->xPlugin->response();
372
+$xResponse->html($sWrapperId, $sHtml);
373
+return !$sHtml ? null : ['id' => $sWrapperId];
374
+}
375
+
376
+// The wrapper id is not needed for the NodeResponse
377
+/** @var NodeResponse */
378
+$xResponse = $this->xPlugin->response();
379
+$xResponse->html($sHtml);
380
+return !$sHtml ? null : [];
381
+}
382
+
383
+/**
384 384
      * @param JsExpr $xCall
385 385
      * @param string $sWrapperId
386 386
      *
387 387
      * @return void
388 388
      */
389
-    public function render(JsExpr $xCall, string $sWrapperId = ''): void
390
-    {
391
-        if(($xFunc = $xCall->func()) === null)
392
-        {
393
-            return;
394
-        }
395
-
396
-        $aParams = $this->showLinks(trim($sWrapperId));
397
-        if($aParams !== null)
398
-        {
399
-            // Set click handlers on the pagination links
400
-            $aParams['func'] = $xFunc->withPage()->jsonSerialize();
401
-            $this->xPlugin->addCommand('pg.paginate', $aParams);
402
-        }
403
-    }
389
+public function render(JsExpr $xCall, string $sWrapperId = ''): void
390
+{
391
+if(($xFunc = $xCall->func()) === null)
392
+{
393
+return;
394
+}
395
+
396
+$aParams = $this->showLinks(trim($sWrapperId));
397
+if($aParams !== null)
398
+{
399
+// Set click handlers on the pagination links
400
+$aParams['func'] = $xFunc->withPage()->jsonSerialize();
401
+$this->xPlugin->addCommand('pg.paginate', $aParams);
402
+}
403
+}
404 404
 }
Please login to merge, or discard this patch.