Scrutinizer GitHub App not installed

We could not synchronize checks via GitHub's checks API since Scrutinizer's GitHub App is not installed for this repository.

Install GitHub App

Passed
Push — handle-uploads-inside-relation... ( ea6d1b...86419c )
by Pedro
15:29
created
src/BackpackServiceProvider.php 1 patch
Spacing   +13 added lines, -15 removed lines patch added patch discarded remove patch
@@ -81,24 +81,24 @@  discard block
 block discarded – undo
81 81
         $this->registerBackpackErrorViews();
82 82
 
83 83
         // Bind the CrudPanel object to Laravel's service container
84
-        $this->app->scoped('crud', function ($app) {
84
+        $this->app->scoped('crud', function($app) {
85 85
             return new CrudPanel();
86 86
         });
87 87
 
88
-        $this->app->scoped('DatabaseSchema', function ($app) {
88
+        $this->app->scoped('DatabaseSchema', function($app) {
89 89
             return new DatabaseSchema();
90 90
         });
91 91
 
92
-        $this->app->singleton('BackpackViewNamespaces', function ($app) {
92
+        $this->app->singleton('BackpackViewNamespaces', function($app) {
93 93
             return new ViewNamespaces();
94 94
         });
95 95
 
96 96
         // Bind the widgets collection object to Laravel's service container
97
-        $this->app->singleton('widgets', function ($app) {
97
+        $this->app->singleton('widgets', function($app) {
98 98
             return new Collection();
99 99
         });
100 100
 
101
-        $this->app->scoped('UploadersRepository', function ($app) {
101
+        $this->app->scoped('UploadersRepository', function($app) {
102 102
             return new UploadersRepository();
103 103
         });
104 104
 
@@ -114,7 +114,7 @@  discard block
 block discarded – undo
114 114
         $middleware_key = config('backpack.base.middleware_key');
115 115
         $middleware_class = config('backpack.base.middleware_class');
116 116
 
117
-        if (! is_array($middleware_class)) {
117
+        if (!is_array($middleware_class)) {
118 118
             $router->pushMiddlewareToGroup($middleware_key, $middleware_class);
119 119
 
120 120
             return;
@@ -227,7 +227,7 @@  discard block
 block discarded – undo
227 227
         $configs = scandir(__DIR__."/config/backpack/$dir/");
228 228
         $configs = array_diff($configs, ['.', '..']);
229 229
 
230
-        if (! count($configs)) {
230
+        if (!count($configs)) {
231 231
             return;
232 232
         }
233 233
 
@@ -276,8 +276,7 @@  discard block
 block discarded – undo
276 276
         // add the backpack_users password broker to the configuration
277 277
         $laravelAuthPasswordBrokers = app()->config['auth.passwords'];
278 278
         $laravelFirstPasswordBroker = is_array($laravelAuthPasswordBrokers) && current($laravelAuthPasswordBrokers) ?
279
-                                        current($laravelAuthPasswordBrokers)['table'] :
280
-                                        '';
279
+                                        current($laravelAuthPasswordBrokers)['table'] : '';
281 280
 
282 281
         $backpackPasswordBrokerTable = config('backpack.base.password_resets_table') ??
283 282
                                         config('auth.passwords.users.table') ??
@@ -305,7 +304,7 @@  discard block
 block discarded – undo
305 304
 
306 305
     public function loadViewComponents()
307 306
     {
308
-        $this->app->afterResolving(BladeCompiler::class, function () {
307
+        $this->app->afterResolving(BladeCompiler::class, function() {
309 308
             Blade::componentNamespace('Backpack\\CRUD\\app\\View\\Components', 'backpack');
310 309
         });
311 310
     }
@@ -331,13 +330,13 @@  discard block
 block discarded – undo
331 330
     private function registerBackpackErrorViews()
332 331
     {
333 332
         // register the backpack error when the exception handler is resolved from the container
334
-        $this->callAfterResolving(ExceptionHandler::class, function ($handler) {
335
-            if (! Str::startsWith(request()->path(), config('backpack.base.route_prefix'))) {
333
+        $this->callAfterResolving(ExceptionHandler::class, function($handler) {
334
+            if (!Str::startsWith(request()->path(), config('backpack.base.route_prefix'))) {
336 335
                 return;
337 336
             }
338 337
 
339 338
             // parse the namespaces set in config
340
-            [$themeNamespace, $themeFallbackNamespace] = (function () {
339
+            [$themeNamespace, $themeFallbackNamespace] = (function() {
341 340
                 $themeNamespace = config('backpack.ui.view_namespace');
342 341
                 $themeFallbackNamespace = config('backpack.ui.view_namespace_fallback');
343 342
 
@@ -354,8 +353,7 @@  discard block
 block discarded – undo
354 353
             // - fallback theme paths
355 354
             // - ui path
356 355
             $themeErrorPaths = $viewFinderHints[$themeNamespace] ?? [];
357
-            $themeErrorPaths = $themeNamespace === $themeFallbackNamespace ? $themeErrorPaths :
358
-                array_merge($viewFinderHints[$themeFallbackNamespace] ?? [], $themeErrorPaths);
356
+            $themeErrorPaths = $themeNamespace === $themeFallbackNamespace ? $themeErrorPaths : array_merge($viewFinderHints[$themeFallbackNamespace] ?? [], $themeErrorPaths);
359 357
             $uiErrorPaths = [base_path('vendor/backpack/crud/src/resources/views/ui')];
360 358
             $themeErrorPaths = array_merge($themeErrorPaths, $uiErrorPaths);
361 359
 
Please login to merge, or discard this patch.
src/app/Library/CrudPanel/Traits/FieldsProtectedMethods.php 1 patch
Spacing   +12 added lines, -12 removed lines patch added patch discarded remove patch
@@ -115,7 +115,7 @@  discard block
 block discarded – undo
115 115
             return ['name' => $field];
116 116
         }
117 117
 
118
-        if (is_array($field) && ! isset($field['name'])) {
118
+        if (is_array($field) && !isset($field['name'])) {
119 119
             abort(500, 'All fields must have their name defined');
120 120
         }
121 121
 
@@ -187,7 +187,7 @@  discard block
 block discarded – undo
187 187
         }
188 188
         // if there's a model defined, but no attribute
189 189
         // guess an attribute using the identifiableAttribute functionality in CrudTrait
190
-        if (isset($field['model']) && ! isset($field['attribute']) && method_exists($field['model'], 'identifiableAttribute')) {
190
+        if (isset($field['model']) && !isset($field['attribute']) && method_exists($field['model'], 'identifiableAttribute')) {
191 191
             $field['attribute'] = (new $field['model']())->identifiableAttribute();
192 192
         }
193 193
 
@@ -203,7 +203,7 @@  discard block
 block discarded – undo
203 203
      */
204 204
     protected function makeSureFieldHasLabel($field)
205 205
     {
206
-        if (! isset($field['label'])) {
206
+        if (!isset($field['label'])) {
207 207
             $name = str_replace(',', ' ', $field['name']);
208 208
             $name = str_replace('_id', '', $name);
209 209
             $field['label'] = mb_ucfirst(str_replace('_', ' ', $name));
@@ -221,7 +221,7 @@  discard block
 block discarded – undo
221 221
      */
222 222
     protected function makeSureFieldHasType($field)
223 223
     {
224
-        if (! isset($field['type'])) {
224
+        if (!isset($field['type'])) {
225 225
             $field['type'] = isset($field['relation_type']) ? $this->inferFieldTypeFromRelationType($field['relation_type']) : $this->inferFieldTypeFromDbColumnType($field['name']);
226 226
         }
227 227
 
@@ -254,12 +254,12 @@  discard block
 block discarded – undo
254 254
      */
255 255
     protected function makeSureSubfieldsHaveNecessaryAttributes($field)
256 256
     {
257
-        if (! isset($field['subfields'])) {
257
+        if (!isset($field['subfields'])) {
258 258
             return $field;
259 259
         }
260 260
 
261 261
         foreach ($field['subfields'] as $key => $subfield) {
262
-            if (empty($subfield) || ! isset($subfield['name'])) {
262
+            if (empty($subfield) || !isset($subfield['name'])) {
263 263
                 abort(500, 'Subfield name can\'t be empty');
264 264
             }
265 265
 
@@ -270,7 +270,7 @@  discard block
 block discarded – undo
270 270
 
271 271
             $subfield['parentFieldName'] = $field['name'];
272 272
 
273
-            if (! isset($field['model'])) {
273
+            if (!isset($field['model'])) {
274 274
                 // we're inside a simple 'repeatable' with no model/relationship, so
275 275
                 // we assume all subfields are supposed to be text fields
276 276
                 $subfield['type'] = $subfield['type'] ?? 'text';
@@ -297,11 +297,11 @@  discard block
 block discarded – undo
297 297
                 case 'BelongsToMany':
298 298
                     $pivotSelectorField = static::getPivotFieldStructure($field);
299 299
 
300
-                    $pivot = Arr::where($field['subfields'], function ($item) use ($pivotSelectorField) {
300
+                    $pivot = Arr::where($field['subfields'], function($item) use ($pivotSelectorField) {
301 301
                         return $item['name'] === $pivotSelectorField['name'];
302 302
                     });
303 303
 
304
-                    if (! empty($pivot)) {
304
+                    if (!empty($pivot)) {
305 305
                         break;
306 306
                     }
307 307
 
@@ -314,11 +314,11 @@  discard block
 block discarded – undo
314 314
                     $entity = isset($field['baseEntity']) ? $field['baseEntity'].'.'.$field['entity'] : $field['entity'];
315 315
                     $relationInstance = $this->getRelationInstance(['entity' => $entity]);
316 316
 
317
-                    $localKeyField = Arr::where($field['subfields'], function ($item) use ($relationInstance) {
317
+                    $localKeyField = Arr::where($field['subfields'], function($item) use ($relationInstance) {
318 318
                         return $item['name'] === $relationInstance->getRelated()->getKeyName();
319 319
                     });
320 320
 
321
-                    if (! empty($localKeyField)) {
321
+                    if (!empty($localKeyField)) {
322 322
                         break;
323 323
                     }
324 324
 
@@ -343,7 +343,7 @@  discard block
 block discarded – undo
343 343
     {
344 344
         // if a tab was mentioned, we should enable it
345 345
         if (isset($field['tab'])) {
346
-            if (! $this->tabsEnabled()) {
346
+            if (!$this->tabsEnabled()) {
347 347
                 $this->enableTabs();
348 348
             }
349 349
         }
Please login to merge, or discard this patch.
src/app/Library/Uploaders/Uploader.php 1 patch
Spacing   +8 added lines, -8 removed lines patch added patch discarded remove patch
@@ -25,7 +25,7 @@  discard block
 block discarded – undo
25 25
 
26 26
     private bool $deleteWhenEntryIsDeleted = true;
27 27
 
28
-    private bool|string $attachedToFakeField = false;
28
+    private bool | string $attachedToFakeField = false;
29 29
 
30 30
     /**
31 31
      * Cloud disks have the ability to generate temporary URLs to files, should we do it?
@@ -57,7 +57,7 @@  discard block
 block discarded – undo
57 57
     /*******************************
58 58
      * Static methods
59 59
      *******************************/
60
-    public static function for(array $crudObject, array $definition): UploaderInterface
60
+    public static function for (array $crudObject, array $definition): UploaderInterface
61 61
     {
62 62
         return new static($crudObject, $definition);
63 63
     }
@@ -98,7 +98,7 @@  discard block
 block discarded – undo
98 98
     public function deleteUploadedFiles(Model $entry): void
99 99
     {
100 100
         if ($this->deleteWhenEntryIsDeleted) {
101
-            if (! in_array(SoftDeletes::class, class_uses_recursive($entry), true)) {
101
+            if (!in_array(SoftDeletes::class, class_uses_recursive($entry), true)) {
102 102
                 $this->performFileDeletion($entry);
103 103
 
104 104
                 return;
@@ -169,7 +169,7 @@  discard block
 block discarded – undo
169 169
 
170 170
     public function getPreviousFiles(Model $entry): mixed
171 171
     {
172
-        if (! $this->attachedToFakeField) {
172
+        if (!$this->attachedToFakeField) {
173 173
             return $this->getOriginalValue($entry);
174 174
         }
175 175
 
@@ -208,7 +208,7 @@  discard block
 block discarded – undo
208 208
         $value = $entry->{$this->getAttributeName()};
209 209
 
210 210
         if ($this->handleMultipleFiles) {
211
-            if (! isset($entry->getCasts()[$this->getName()]) && is_string($value)) {
211
+            if (!isset($entry->getCasts()[$this->getName()]) && is_string($value)) {
212 212
                 $entry->{$this->getAttributeName()} = json_decode($value, true);
213 213
             }
214 214
 
@@ -236,7 +236,7 @@  discard block
 block discarded – undo
236 236
 
237 237
         if ($this->handleMultipleFiles) {
238 238
             // ensure we have an array of values when field is not casted in model.
239
-            if (! isset($entry->getCasts()[$this->name]) && is_string($values)) {
239
+            if (!isset($entry->getCasts()[$this->name]) && is_string($values)) {
240 240
                 $values = json_decode($values, true);
241 241
             }
242 242
             foreach ($values as $value) {
@@ -252,7 +252,7 @@  discard block
 block discarded – undo
252 252
 
253 253
     private function performFileDeletion(Model $entry)
254 254
     {
255
-        if (! $this->handleRepeatableFiles) {
255
+        if (!$this->handleRepeatableFiles) {
256 256
             $this->deleteFiles($entry);
257 257
 
258 258
             return;
@@ -275,7 +275,7 @@  discard block
 block discarded – undo
275 275
     {
276 276
         $previousValue = $entry->getOriginal($field ?? $this->getAttributeName());
277 277
 
278
-        if (! $previousValue) {
278
+        if (!$previousValue) {
279 279
             return $previousValue;
280 280
         }
281 281
 
Please login to merge, or discard this patch.
src/app/Library/Uploaders/Support/Traits/HandleRepeatableUploads.php 1 patch
Spacing   +14 added lines, -14 removed lines patch added patch discarded remove patch
@@ -76,7 +76,7 @@  discard block
 block discarded – undo
76 76
         foreach (app('UploadersRepository')->getRepeatableUploadersFor($this->getRepeatableContainerName()) as $uploader) {
77 77
             $uploadedValues = $uploader->uploadRepeatableFiles($values->pluck($uploader->getAttributeName())->toArray(), $this->getPreviousRepeatableValues($entry, $uploader));
78 78
 
79
-            $values = $values->map(function ($item, $key) use ($uploadedValues, $uploader) {
79
+            $values = $values->map(function($item, $key) use ($uploadedValues, $uploader) {
80 80
                 $item[$uploader->getAttributeName()] = $uploadedValues[$key] ?? null;
81 81
 
82 82
                 return $item;
@@ -96,7 +96,7 @@  discard block
 block discarded – undo
96 96
 
97 97
         $values = $entry->{$this->getRepeatableContainerName()};
98 98
         $values = is_string($values) ? json_decode($values, true) : $values;
99
-        $values = array_map(function ($item) use ($repeatableUploaders) {
99
+        $values = array_map(function($item) use ($repeatableUploaders) {
100 100
             foreach ($repeatableUploaders as $upload) {
101 101
                 $item[$upload->getAttributeName()] = $this->getValuesWithPathStripped($item, $upload);
102 102
             }
@@ -111,7 +111,7 @@  discard block
 block discarded – undo
111 111
 
112 112
     private function retrieveRepeatableRelationFiles(Model $entry)
113 113
     {
114
-        switch($this->getRepeatableRelationType()) {
114
+        switch ($this->getRepeatableRelationType()) {
115 115
             case 'BelongsToMany':
116 116
                 $pivotClass = app('crud')->getModel()->{$this->getUploaderSubfield()['baseEntity']}()->getPivotClass();
117 117
                 $pivotFieldName = 'pivot_'.$this->getAttributeName();
@@ -149,22 +149,22 @@  discard block
 block discarded – undo
149 149
     private function deleteRepeatableFiles(Model $entry): void
150 150
     {
151 151
         if ($this->isRelationship) {
152
-            switch($this->getRepeatableRelationType()) {
152
+            switch ($this->getRepeatableRelationType()) {
153 153
                 case 'BelongsToMany':
154 154
                     $pivotAttributes = $entry->getAttributes();
155
-                    $connectedPivot = $entry->pivotParent->{$this->getRepeatableContainerName()}->where(function ($item) use ($pivotAttributes) {
155
+                    $connectedPivot = $entry->pivotParent->{$this->getRepeatableContainerName()}->where(function($item) use ($pivotAttributes) {
156 156
                         $itemPivotAttributes = $item->pivot->only(array_keys($pivotAttributes));
157 157
 
158 158
                         return $itemPivotAttributes === $pivotAttributes;
159 159
                     })->first();
160 160
 
161
-                    if (! $connectedPivot) {
161
+                    if (!$connectedPivot) {
162 162
                         return;
163 163
                     }
164 164
 
165 165
                     $files = $connectedPivot->getOriginal()['pivot_'.$this->getAttributeName()];
166 166
 
167
-                    if (! $files) {
167
+                    if (!$files) {
168 168
                         return;
169 169
                     }
170 170
 
@@ -190,12 +190,12 @@  discard block
 block discarded – undo
190 190
 
191 191
         $repeatableValues = collect($entry->{$this->getName()});
192 192
         foreach (app('UploadersRepository')->getRepeatableUploadersFor($this->getRepeatableContainerName()) as $upload) {
193
-            if (! $upload->shouldDeleteFiles()) {
193
+            if (!$upload->shouldDeleteFiles()) {
194 194
                 continue;
195 195
             }
196 196
             $values = $repeatableValues->pluck($upload->getName())->toArray();
197 197
             foreach ($values as $value) {
198
-                if (! $value) {
198
+                if (!$value) {
199 199
                     continue;
200 200
                 }
201 201
 
@@ -218,7 +218,7 @@  discard block
 block discarded – undo
218 218
     /**
219 219
      * Given two multidimensional arrays/collections, merge them recursively.
220 220
      */
221
-    protected function mergeValuesRecursive(array|Collection $array1, array|Collection $array2): array|Collection
221
+    protected function mergeValuesRecursive(array | Collection $array1, array | Collection $array2): array | Collection
222 222
     {
223 223
         $merged = $array1;
224 224
         foreach ($array2 as $key => &$value) {
@@ -240,7 +240,7 @@  discard block
 block discarded – undo
240 240
     {
241 241
         $items = CRUD::getRequest()->input('_order_'.$this->getRepeatableContainerName()) ?? [];
242 242
 
243
-        array_walk($items, function (&$key, $value) {
243
+        array_walk($items, function(&$key, $value) {
244 244
             $requestValue = $key[$this->getName()] ?? null;
245 245
             $key = $this->handleMultipleFiles ? (is_string($requestValue) ? explode(',', $requestValue) : $requestValue) : $requestValue;
246 246
         });
@@ -252,18 +252,18 @@  discard block
 block discarded – undo
252 252
     {
253 253
         $previousValues = json_decode($entry->getOriginal($uploader->getRepeatableContainerName()), true);
254 254
 
255
-        if (! empty($previousValues)) {
255
+        if (!empty($previousValues)) {
256 256
             $previousValues = array_column($previousValues, $uploader->getName());
257 257
         }
258 258
 
259 259
         return $previousValues ?? [];
260 260
     }
261 261
 
262
-    private function getValuesWithPathStripped(array|string|null $item, UploaderInterface $upload)
262
+    private function getValuesWithPathStripped(array | string | null $item, UploaderInterface $upload)
263 263
     {
264 264
         $uploadedValues = $item[$upload->getName()] ?? null;
265 265
         if (is_array($uploadedValues)) {
266
-            return array_map(function ($value) use ($upload) {
266
+            return array_map(function($value) use ($upload) {
267 267
                 return Str::after($value, $upload->getPath());
268 268
             }, $uploadedValues);
269 269
         }
Please login to merge, or discard this patch.
src/app/Library/Uploaders/SingleFile.php 1 patch
Spacing   +2 added lines, -2 removed lines patch added patch discarded remove patch
@@ -23,7 +23,7 @@  discard block
 block discarded – undo
23 23
             return $this->getPath().$fileName;
24 24
         }
25 25
        
26
-        if (! $value && CrudPanelFacade::getRequest()->has($this->getRepeatableContainerName() ?? $this->getName()) && $previousFile) {
26
+        if (!$value && CrudPanelFacade::getRequest()->has($this->getRepeatableContainerName() ?? $this->getName()) && $previousFile) {
27 27
             Storage::disk($this->getDisk())->delete($previousFile);
28 28
 
29 29
             return null;
@@ -47,7 +47,7 @@  discard block
 block discarded – undo
47 47
         }
48 48
 
49 49
         foreach ($previousRepeatableValues as $row => $file) {
50
-            if ($file && ! isset($orderedFiles[$row])) {
50
+            if ($file && !isset($orderedFiles[$row])) {
51 51
                 $orderedFiles[$row] = null;
52 52
                 Storage::disk($this->getDisk())->delete($file);
53 53
             }
Please login to merge, or discard this patch.