Completed
Pull Request — experimental/3.1 (#2483)
by Kentaro
44:50
created
src/Eccube/Repository/ProductRepository.php 1 patch
Spacing   +2 added lines, -2 removed lines patch added patch discarded remove patch
@@ -113,7 +113,7 @@  discard block
 block discarded – undo
113 113
                 $key = sprintf('keyword%s', $index);
114 114
                 $qb
115 115
                     ->andWhere(sprintf('NORMALIZE(p.name) LIKE NORMALIZE(:%s) OR NORMALIZE(p.search_word) LIKE NORMALIZE(:%s)', $key, $key))
116
-                    ->setParameter($key, '%' . $keyword . '%');
116
+                    ->setParameter($key, '%'.$keyword.'%');
117 117
             }
118 118
         }
119 119
 
@@ -176,7 +176,7 @@  discard block
 block discarded – undo
176 176
             $qb
177 177
                 ->andWhere('p.id = :id OR p.name LIKE :likeid OR pc.code LIKE :likeid')
178 178
                 ->setParameter('id', $id)
179
-                ->setParameter('likeid', '%' . $searchData['id'] . '%');
179
+                ->setParameter('likeid', '%'.$searchData['id'].'%');
180 180
         }
181 181
 
182 182
         // code
Please login to merge, or discard this patch.
src/Eccube/Command/GeneratorCommand/AbstractPluginGenerator.php 1 patch
Doc Comments   +2 added lines, -2 removed lines patch added patch discarded remove patch
@@ -348,7 +348,7 @@  discard block
 block discarded – undo
348 348
      * @param array $metadatas
349 349
      * @param array $fsList
350 350
      * @param $pluginCode
351
-     * @param $codePath
351
+     * @param string $codePath
352 352
      */
353 353
     protected function generateMigration(array $metadatas, array &$fsList = array(), $pluginCode, $codePath)
354 354
     {
@@ -373,7 +373,7 @@  discard block
 block discarded – undo
373 373
      *
374 374
      * @param $pluginCode
375 375
      * @param array $metadatas
376
-     * @return mixed|string
376
+     * @return string
377 377
      */
378 378
     protected function makeMigration($pluginCode, array $metadatas)
379 379
     {
Please login to merge, or discard this patch.
src/Eccube/Command/PluginCommand.php 1 patch
Unused Use Statements   -1 removed lines patch added patch discarded remove patch
@@ -33,7 +33,6 @@
 block discarded – undo
33 33
 use Symfony\Component\Console\Input\InputOption;
34 34
 use Symfony\Component\Console\Output\OutputInterface;
35 35
 use Symfony\Component\Console\Question\Question;
36
-use Symfony\Component\Validator\Constraints as Assert;
37 36
 
38 37
 class PluginCommand extends \Knp\Command\Command
39 38
 {
Please login to merge, or discard this patch.
src/Eccube/Application/ApplicationTrait.php 3 patches
Unused Use Statements   -6 removed lines patch added patch discarded remove patch
@@ -2,15 +2,9 @@
 block discarded – undo
2 2
 
3 3
 namespace Eccube\Application;
4 4
 
5
-use Eccube\Event\TemplateEvent;
6
-use Monolog\Logger;
7
-use Symfony\Component\Form\FormBuilder;
8 5
 use Symfony\Component\HttpFoundation\Request;
9 6
 use Symfony\Component\HttpFoundation\Response;
10
-use Symfony\Component\HttpFoundation\StreamedResponse;
11 7
 use Symfony\Component\HttpKernel\HttpKernelInterface;
12
-use Symfony\Component\Routing\Generator\UrlGeneratorInterface;
13
-use Symfony\Component\Security\Core\User\UserInterface;
14 8
 
15 9
 trait ApplicationTrait
16 10
 {
Please login to merge, or discard this patch.
Spacing   +8 added lines, -8 removed lines patch added patch discarded remove patch
@@ -19,32 +19,32 @@  discard block
 block discarded – undo
19 19
      */
20 20
     public function addSuccess($message, $namespace = 'front')
21 21
     {
22
-        $this['session']->getFlashBag()->add('eccube.' . $namespace . '.success', $message);
22
+        $this['session']->getFlashBag()->add('eccube.'.$namespace.'.success', $message);
23 23
     }
24 24
 
25 25
     public function addError($message, $namespace = 'front')
26 26
     {
27
-        $this['session']->getFlashBag()->add('eccube.' . $namespace . '.error', $message);
27
+        $this['session']->getFlashBag()->add('eccube.'.$namespace.'.error', $message);
28 28
     }
29 29
 
30 30
     public function addDanger($message, $namespace = 'front')
31 31
     {
32
-        $this['session']->getFlashBag()->add('eccube.' . $namespace . '.danger', $message);
32
+        $this['session']->getFlashBag()->add('eccube.'.$namespace.'.danger', $message);
33 33
     }
34 34
 
35 35
     public function addWarning($message, $namespace = 'front')
36 36
     {
37
-        $this['session']->getFlashBag()->add('eccube.' . $namespace . '.warning', $message);
37
+        $this['session']->getFlashBag()->add('eccube.'.$namespace.'.warning', $message);
38 38
     }
39 39
 
40 40
     public function addInfo($message, $namespace = 'front')
41 41
     {
42
-        $this['session']->getFlashBag()->add('eccube.' . $namespace . '.info', $message);
42
+        $this['session']->getFlashBag()->add('eccube.'.$namespace.'.info', $message);
43 43
     }
44 44
 
45 45
     public function addRequestError($message, $namespace = 'front')
46 46
     {
47
-        $this['session']->getFlashBag()->set('eccube.' . $namespace . '.request.error', $message);
47
+        $this['session']->getFlashBag()->set('eccube.'.$namespace.'.request.error', $message);
48 48
     }
49 49
 
50 50
     public function clearMessage()
@@ -63,7 +63,7 @@  discard block
 block discarded – undo
63 63
         if (is_null($namespace)) {
64 64
             $this['session']->getFlashBag()->set('eccube.login.target.path', $targetPath);
65 65
         } else {
66
-            $this['session']->getFlashBag()->set('eccube.' . $namespace . '.login.target.path', $targetPath);
66
+            $this['session']->getFlashBag()->set('eccube.'.$namespace.'.login.target.path', $targetPath);
67 67
         }
68 68
     }
69 69
 
@@ -111,7 +111,7 @@  discard block
 block discarded – undo
111 111
      * @param Response $response
112 112
      * @return Application
113 113
      */
114
-    public function forwardChain($path, array $requestParameters = [], Response &$response = null)
114
+    public function forwardChain($path, array $requestParameters = [], Response&$response = null)
115 115
     {
116 116
         $response = $this->forward($path, $requestParameters);
117 117
         return $this;
Please login to merge, or discard this patch.
Doc Comments   +5 added lines, -1 removed lines patch added patch discarded remove patch
@@ -16,6 +16,7 @@  discard block
 block discarded – undo
16 16
 {
17 17
     /**
18 18
      * Application Shortcut Methods
19
+     * @param string $message
19 20
      */
20 21
     public function addSuccess($message, $namespace = 'front')
21 22
     {
@@ -58,6 +59,9 @@  discard block
 block discarded – undo
58 59
         $this->addWarning('admin.delete.warning', 'admin');
59 60
     }
60 61
 
62
+    /**
63
+     * @param string $targetPath
64
+     */
61 65
     public function setLoginTargetPath($targetPath, $namespace = null)
62 66
     {
63 67
         if (is_null($namespace)) {
@@ -109,7 +113,7 @@  discard block
 block discarded – undo
109 113
      * @param string $path フォワード先のパス
110 114
      * @param array $requestParameters
111 115
      * @param Response $response
112
-     * @return Application
116
+     * @return ApplicationTrait
113 117
      */
114 118
     public function forwardChain($path, array $requestParameters = [], Response &$response = null)
115 119
     {
Please login to merge, or discard this patch.
src/Eccube/Form/Type/Admin/ChangePasswordType.php 1 patch
Unused Use Statements   -2 removed lines patch added patch discarded remove patch
@@ -27,8 +27,6 @@
 block discarded – undo
27 27
 use Symfony\Component\Form\Extension\Core\Type\PasswordType;
28 28
 use Symfony\Component\Form\Extension\Core\Type\RepeatedType;
29 29
 use Symfony\Component\Form\FormBuilderInterface;
30
-use Symfony\Component\Form\FormError;
31
-use Symfony\Component\Form\FormEvents;
32 30
 use Symfony\Component\OptionsResolver\OptionsResolver;
33 31
 use Symfony\Component\Security\Core\Validator\Constraints\UserPassword;
34 32
 use Symfony\Component\Validator\Constraints as Assert;
Please login to merge, or discard this patch.
src/Eccube/ServiceProvider/EccubeServiceProvider.php 2 patches
Doc Comments   +1 added lines, -1 removed lines patch added patch discarded remove patch
@@ -39,7 +39,7 @@
 block discarded – undo
39 39
      * This method should only be used to configure services and parameters.
40 40
      * It should not get services.
41 41
      *
42
-     * @param BaseApplication $app An Application instance
42
+     * @param Container $app An Application instance
43 43
      */
44 44
     public function register(Container $app)
45 45
     {
Please login to merge, or discard this patch.
Spacing   +27 added lines, -27 removed lines patch added patch discarded remove patch
@@ -62,11 +62,11 @@  discard block
 block discarded – undo
62 62
      */
63 63
     public function register(Container $app)
64 64
     {
65
-        $app['eccube.calculate.context'] = function () use ($app) {
65
+        $app['eccube.calculate.context'] = function() use ($app) {
66 66
                 return new \Eccube\Service\Calculator\CalculateContext();
67 67
         };
68 68
 
69
-        $app['eccube.calculate.strategies'] = function () use ($app) {
69
+        $app['eccube.calculate.strategies'] = function() use ($app) {
70 70
             $Collection = new \Eccube\Service\Calculator\CalculateStrategyCollection();
71 71
             $Collection->setApplication($app);
72 72
             //$Collection->setOrder($Order);
@@ -79,47 +79,47 @@  discard block
 block discarded – undo
79 79
             $Collection->add($app['eccube.calculate.strategy.calculate_total']);
80 80
             return $Collection;
81 81
         };
82
-        $app['eccube.calculate.strategy.shipping'] = function () use ($app) {
82
+        $app['eccube.calculate.strategy.shipping'] = function() use ($app) {
83 83
                 $Strategy = new \Eccube\Service\Calculator\Strategy\ShippingStrategy();
84 84
                 $Strategy->setApplication($app);
85 85
                 return $Strategy;
86 86
         };
87
-        $app['eccube.calculate.strategy.charge'] = function () use ($app) {
87
+        $app['eccube.calculate.strategy.charge'] = function() use ($app) {
88 88
                 $Strategy = new \Eccube\Service\Calculator\Strategy\ChargeStrategy();
89 89
                 $Strategy->setApplication($app);
90 90
                 return $Strategy;
91 91
         };
92 92
 
93
-        $app['eccube.calculate.strategy.tax'] = function () use ($app) {
93
+        $app['eccube.calculate.strategy.tax'] = function() use ($app) {
94 94
                 $Strategy = new \Eccube\Service\Calculator\Strategy\TaxStrategy();
95 95
                 $Strategy->setApplication($app);
96 96
                 return $Strategy;
97 97
         };
98 98
 
99
-        $app['eccube.calculate.strategy.calculate_delivery_fee'] = function () use ($app) {
99
+        $app['eccube.calculate.strategy.calculate_delivery_fee'] = function() use ($app) {
100 100
             $Strategy = new \Eccube\Service\Calculator\Strategy\CalculateDeliveryFeeStrategy();
101 101
             $Strategy->setApplication($app);
102 102
             return $Strategy;
103 103
         };
104
-        $app['eccube.calculate.strategy.calculate_charge'] = function () use ($app) {
104
+        $app['eccube.calculate.strategy.calculate_charge'] = function() use ($app) {
105 105
             $Strategy = new \Eccube\Service\Calculator\Strategy\CalculateChargeStrategy();
106 106
             $Strategy->setApplication($app);
107 107
             return $Strategy;
108 108
         };
109
-        $app['eccube.calculate.strategy.calculate_total'] = function () use ($app) {
109
+        $app['eccube.calculate.strategy.calculate_total'] = function() use ($app) {
110 110
             $Strategy = new \Eccube\Service\Calculator\Strategy\CalculateTotalStrategy();
111 111
             $Strategy->setApplication($app);
112 112
             return $Strategy;
113 113
         };
114 114
 
115
-        $app['payment.method'] = $app->protect(function ($clazz, $form) use ($app) {
115
+        $app['payment.method'] = $app->protect(function($clazz, $form) use ($app) {
116 116
                 $PaymentMethod = new $clazz;
117 117
                 $PaymentMethod->setApplication($app);
118 118
                 $PaymentMethod->setFormType($form);
119 119
                 return $PaymentMethod;
120 120
         });
121 121
 
122
-        $app['payment.method.request'] = $app->protect(function ($clazz, $form, $request) use ($app) {
122
+        $app['payment.method.request'] = $app->protect(function($clazz, $form, $request) use ($app) {
123 123
                 $PaymentMethod = new $clazz;
124 124
                 $PaymentMethod->setApplication($app);
125 125
                 $PaymentMethod->setFormType($form);
@@ -127,7 +127,7 @@  discard block
 block discarded – undo
127 127
                 return $PaymentMethod;
128 128
         });
129 129
 
130
-        $app['eccube.service.calculate'] = $app->protect(function ($Order, $Customer) use ($app) {
130
+        $app['eccube.service.calculate'] = $app->protect(function($Order, $Customer) use ($app) {
131 131
             $Service = new \Eccube\Service\CalculateService($Order, $Customer);
132 132
             $Context = $app['eccube.calculate.context'];
133 133
             $app['eccube.calculate.strategies']->setOrder($Order);
@@ -138,24 +138,24 @@  discard block
 block discarded – undo
138 138
             return $Service;
139 139
         });
140 140
 
141
-        $app['eccube.service.payment'] = $app->protect(function ($clazz) use ($app) {
141
+        $app['eccube.service.payment'] = $app->protect(function($clazz) use ($app) {
142 142
             $Service = new $clazz($app['request_stack']);
143 143
 
144 144
             return $Service;
145 145
         });
146 146
 
147
-        $app['paginator'] = $app->protect(function () {
147
+        $app['paginator'] = $app->protect(function() {
148 148
             $paginator = new \Knp\Component\Pager\Paginator();
149 149
             $paginator->subscribe(new \Eccube\EventListener\PaginatorListener());
150 150
 
151 151
             return $paginator;
152 152
         });
153 153
 
154
-        $app['request_scope'] = function () {
154
+        $app['request_scope'] = function() {
155 155
             return new ParameterBag();
156 156
         };
157 157
         // TODO 使用するか検討
158
-        $app['eccube.twig.node.hello'] = $app->protect(function ($node, $compiler) {
158
+        $app['eccube.twig.node.hello'] = $app->protect(function($node, $compiler) {
159 159
             $compiler
160 160
             ->addDebugInfo($node)
161 161
             ->write("echo 'Helloooooo ' . ")
@@ -165,7 +165,7 @@  discard block
 block discarded – undo
165 165
 
166 166
         });
167 167
         // TODO 使用するか検討
168
-        $app['eccube.twig.node.jiro'] = $app->protect(function ($node, $compiler) {
168
+        $app['eccube.twig.node.jiro'] = $app->protect(function($node, $compiler) {
169 169
             $compiler
170 170
             ->addDebugInfo($node)
171 171
             ->write("echo 'jirooooooo ' . ")
@@ -176,7 +176,7 @@  discard block
 block discarded – undo
176 176
         });
177 177
 
178 178
         // TODO 使用するか検討
179
-        $app['eccube.twig.generic_node_names'] = function () use ($app) {
179
+        $app['eccube.twig.generic_node_names'] = function() use ($app) {
180 180
             return [
181 181
                 'hello',
182 182
                 'jiro',
@@ -185,7 +185,7 @@  discard block
 block discarded – undo
185 185
         };
186 186
 
187 187
         // TODO 使用するか検討
188
-        $app['twig_parsers'] = function () use ($app) {
188
+        $app['twig_parsers'] = function() use ($app) {
189 189
             $GenericTokenParsers = [];
190 190
             foreach ($app['eccube.twig.generic_node_names'] as $tagName) {
191 191
                 $GenericTokenParsers[] = new \Eccube\Twig\Extension\GenericTokenParser($app, $tagName);
@@ -193,7 +193,7 @@  discard block
 block discarded – undo
193 193
             return $GenericTokenParsers;
194 194
         };
195 195
 
196
-        $app['eccube.twig.block.templates'] = function () {
196
+        $app['eccube.twig.block.templates'] = function() {
197 197
             $templates = new ArrayCollection();
198 198
             $templates[] = 'render_block.twig';
199 199
 
@@ -201,17 +201,17 @@  discard block
 block discarded – undo
201 201
         };
202 202
 
203 203
         $app['eccube.entity.event.dispatcher']->addEventListener(new \Acme\Entity\SoldOutEventListener());
204
-        $app['eccube.queries'] = function () {
204
+        $app['eccube.queries'] = function() {
205 205
             return new \Eccube\Doctrine\Query\Queries();
206 206
         };
207 207
         // TODO QueryCustomizerの追加方法は要検討
208 208
         $app['eccube.queries']->addCustomizer(new \Acme\Entity\AdminProductListCustomizer());
209 209
 
210
-        $app['eccube.purchase.context'] = $app->protect(function (ItemHolderInterface $origin = null) {
210
+        $app['eccube.purchase.context'] = $app->protect(function(ItemHolderInterface $origin = null) {
211 211
             return new PurchaseContext($origin);
212 212
         });
213 213
 
214
-        $app['eccube.purchase.flow.cart.item_processors'] = function ($app) {
214
+        $app['eccube.purchase.flow.cart.item_processors'] = function($app) {
215 215
             $processors = new ArrayCollection();
216 216
             $processors->add(new DeletedProductValidator());
217 217
             $processors->add(new DisplayStatusValidator());
@@ -221,7 +221,7 @@  discard block
 block discarded – undo
221 221
             return $processors;
222 222
         };
223 223
 
224
-        $app['eccube.purchase.flow.cart.holder_processors'] = function ($app) {
224
+        $app['eccube.purchase.flow.cart.holder_processors'] = function($app) {
225 225
             $processors = new ArrayCollection();
226 226
             $processors->add(new PaymentProcessor($app[DeliveryRepository::class]));
227 227
             $processors->add(new PaymentTotalLimitValidator($app['config']['max_total_fee']));
@@ -232,14 +232,14 @@  discard block
 block discarded – undo
232 232
         };
233 233
 
234 234
         // example
235
-        $app->extend('eccube.purchase.flow.cart.item_processors', function ($processors, $app) {
235
+        $app->extend('eccube.purchase.flow.cart.item_processors', function($processors, $app) {
236 236
 
237 237
             $processors->add(new StockValidator());
238 238
 
239 239
             return $processors;
240 240
         });
241 241
 
242
-        $app['eccube.purchase.flow.cart'] = function ($app) {
242
+        $app['eccube.purchase.flow.cart'] = function($app) {
243 243
             $flow = new PurchaseFlow();
244 244
             $flow->setItemProcessors($app['eccube.purchase.flow.cart.item_processors']);
245 245
             $flow->setItemHolderProcessors($app['eccube.purchase.flow.cart.holder_processors']);
@@ -247,7 +247,7 @@  discard block
 block discarded – undo
247 247
             return $flow;
248 248
         };
249 249
 
250
-        $app['eccube.purchase.flow.shopping'] = function () use ($app) {
250
+        $app['eccube.purchase.flow.shopping'] = function() use ($app) {
251 251
             $flow = new PurchaseFlow();
252 252
             $flow->addItemProcessor(new StockValidator());
253 253
             $flow->addItemProcessor(new DisplayStatusValidator());
@@ -257,7 +257,7 @@  discard block
 block discarded – undo
257 257
             return $flow;
258 258
         };
259 259
 
260
-        $app['eccube.purchase.flow.order'] = function () use ($app) {
260
+        $app['eccube.purchase.flow.order'] = function() use ($app) {
261 261
             $flow = new PurchaseFlow();
262 262
             $flow->addItemProcessor(new StockValidator());
263 263
             $flow->addItemHolderProcessor(new PaymentTotalLimitValidator($app['config']['max_total_fee']));
Please login to merge, or discard this patch.
src/Eccube/Application/TwigTrait.php 1 patch
Spacing   +3 added lines, -3 removed lines patch added patch discarded remove patch
@@ -40,14 +40,14 @@
 block discarded – undo
40 40
         $eventName = $view;
41 41
         if ($this->isAdminRequest()) {
42 42
             // 管理画面の場合、event名に「Admin/」を付ける
43
-            $eventName = 'Admin/' . $view;
43
+            $eventName = 'Admin/'.$view;
44 44
         }
45
-        $this['monolog']->debug('Template Event Name : ' . $eventName);
45
+        $this['monolog']->debug('Template Event Name : '.$eventName);
46 46
 
47 47
         // $this['eccube.event.dispatcher']->dispatch($eventName, $event);
48 48
 
49 49
         if ($response instanceof StreamedResponse) {
50
-            $response->setCallback(function () use ($twig, $view, $parameters) {
50
+            $response->setCallback(function() use ($twig, $view, $parameters) {
51 51
                 $twig->display($view, $parameters);
52 52
             });
53 53
         } else {
Please login to merge, or discard this patch.
src/Eccube/ServiceProvider/LogServiceProvider.php 1 patch
Spacing   +7 added lines, -7 removed lines patch added patch discarded remove patch
@@ -22,17 +22,17 @@  discard block
 block discarded – undo
22 22
         $app->register(new \Silex\Provider\MonologServiceProvider());
23 23
 
24 24
         // Log
25
-        $app['eccube.logger'] = function ($app) {
25
+        $app['eccube.logger'] = function($app) {
26 26
             return new Logger($app);
27 27
         };
28 28
 
29 29
         // ヘルパー作成
30
-        $app['eccube.monolog.helper'] = function ($app) {
30
+        $app['eccube.monolog.helper'] = function($app) {
31 31
             return new LogHelper($app);
32 32
         };
33 33
 
34 34
         // ログクラス作成ファクトリー
35
-        $app['eccube.monolog.factory'] = $app->protect(function (array $channelValues) use ($app) {
35
+        $app['eccube.monolog.factory'] = $app->protect(function(array $channelValues) use ($app) {
36 36
 
37 37
             $log = new $app['monolog.logger.class']($channelValues['name']);
38 38
 
@@ -47,7 +47,7 @@  discard block
 block discarded – undo
47 47
         // monologの設定は除外
48 48
         unset($channels['monolog']);
49 49
         foreach ($channels as $channel => $channelValues) {
50
-            $app['monolog.logger.'.$channel] = function ($app) use ($channelValues) {
50
+            $app['monolog.logger.'.$channel] = function($app) use ($channelValues) {
51 51
                 return $app['eccube.monolog.factory']($channelValues);
52 52
             };
53 53
         }
@@ -55,15 +55,15 @@  discard block
 block discarded – undo
55 55
         // MonologServiceProviderで定義されているmonolog.handlerの置換
56 56
         $channelValues = $app['config']['log']['channel']['monolog'];
57 57
         $app['monolog.name'] = $channelValues['name'];
58
-        $app['monolog.handler'] = function ($app) use ($channelValues) {
58
+        $app['monolog.handler'] = function($app) use ($channelValues) {
59 59
             return $app['eccube.monolog.helper']->getHandler($channelValues);
60 60
         };
61 61
 
62
-        $app['eccube.monolog.listener'] = function () use ($app) {
62
+        $app['eccube.monolog.listener'] = function() use ($app) {
63 63
             return new LogListener($app['eccube.logger']);
64 64
         };
65 65
 
66
-        $app['listener.requestdump'] = function ($app) {
66
+        $app['listener.requestdump'] = function($app) {
67 67
             return new \Eccube\EventListener\RequestDumpListener($app);
68 68
         };
69 69
     }
Please login to merge, or discard this patch.
src/Eccube/ServiceProvider/InstallServiceProvider.php 1 patch
Spacing   +2 added lines, -2 removed lines patch added patch discarded remove patch
@@ -42,13 +42,13 @@
 block discarded – undo
42 42
      */
43 43
     public function register(Container $app)
44 44
     {
45
-        $app->extend('form.type.extensions', function ($extensions) use ($app) {
45
+        $app->extend('form.type.extensions', function($extensions) use ($app) {
46 46
             $extensions[] = new \Eccube\Form\Extension\HelpTypeExtension();
47 47
 
48 48
             return $extensions;
49 49
         });
50 50
 
51
-        $app->extend('form.types', function ($types) use ($app) {
51
+        $app->extend('form.types', function($types) use ($app) {
52 52
             $types[] = new \Eccube\Form\Type\Install\Step1Type($app);
53 53
             $types[] = new \Eccube\Form\Type\Install\Step3Type($app);
54 54
             $types[] = new \Eccube\Form\Type\Install\Step4Type($app);
Please login to merge, or discard this patch.