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

Test Failed
Push — revamp-tabs ( e2fe97 )
by Pedro
11:02
created
src/app/Library/Uploaders/Support/RegisterUploadEvents.php 1 patch
Spacing   +11 added lines, -11 removed lines patch added patch discarded remove patch
@@ -13,18 +13,18 @@  discard block
 block discarded – undo
13 13
     private string $crudObjectType;
14 14
 
15 15
     public function __construct(
16
-        private readonly CrudField|CrudColumn $crudObject,
16
+        private readonly CrudField | CrudColumn $crudObject,
17 17
         private readonly array $uploaderConfiguration,
18 18
         private readonly string $macro
19 19
         ) {
20 20
         $this->crudObjectType = is_a($crudObject, CrudField::class) ? 'field' : (is_a($crudObject, CrudColumn::class) ? 'column' : null);
21 21
 
22
-        if (! $this->crudObjectType) {
22
+        if (!$this->crudObjectType) {
23 23
             abort(500, 'Upload handlers only work for CrudField and CrudColumn classes.');
24 24
         }
25 25
     }
26 26
 
27
-    public static function handle(CrudField|CrudColumn $crudObject, array $uploaderConfiguration, string $macro, ?array $subfield = null, ?bool $registerModelEvents = true): void
27
+    public static function handle(CrudField | CrudColumn $crudObject, array $uploaderConfiguration, string $macro, ?array $subfield = null, ?bool $registerModelEvents = true): void
28 28
     {
29 29
         $instance = new self($crudObject, $uploaderConfiguration, $macro);
30 30
 
@@ -34,9 +34,9 @@  discard block
 block discarded – undo
34 34
     /*******************************
35 35
      * Private methods - implementation
36 36
      *******************************/
37
-    private function registerEvents(array|null $subfield = [], ?bool $registerModelEvents = true): void
37
+    private function registerEvents(array | null $subfield = [], ?bool $registerModelEvents = true): void
38 38
     {
39
-        if (! empty($subfield)) {
39
+        if (!empty($subfield)) {
40 40
             $this->registerSubfieldEvent($subfield, $registerModelEvents);
41 41
 
42 42
             return;
@@ -75,7 +75,7 @@  discard block
 block discarded – undo
75 75
         }
76 76
 
77 77
         $subfields = collect($this->crudObject->getAttributes()['subfields']);
78
-        $subfields = $subfields->map(function ($item) use ($subfield, $uploader) {
78
+        $subfields = $subfields->map(function($item) use ($subfield, $uploader) {
79 79
             if ($item['name'] === $subfield['name']) {
80 80
                 $item['upload'] = true;
81 81
                 $item['disk'] = $uploader->getDisk();
@@ -105,7 +105,7 @@  discard block
 block discarded – undo
105 105
         }
106 106
 
107 107
         if ($this->crudObjectType === 'field') {
108
-            $model::saving(function ($entry) use ($uploader) {
108
+            $model::saving(function($entry) use ($uploader) {
109 109
                 $updatedCountKey = 'uploaded_'.($uploader->getRepeatableContainerName() ?? $uploader->getName()).'_count';
110 110
 
111 111
                 CRUD::set($updatedCountKey, CRUD::get($updatedCountKey) ?? 0);
@@ -120,7 +120,7 @@  discard block
 block discarded – undo
120 120
         if (app('crud')->entry) {
121 121
             app('crud')->entry = $uploader->retrieveUploadedFiles(app('crud')->entry);
122 122
         } else {
123
-            $model::retrieved(function ($entry) use ($uploader) {
123
+            $model::retrieved(function($entry) use ($uploader) {
124 124
                 if ($entry->translationEnabled()) {
125 125
                     $locale = request('_locale', \App::getLocale());
126 126
                     if (in_array($locale, array_keys($entry->getAvailableLocales()))) {
@@ -131,7 +131,7 @@  discard block
 block discarded – undo
131 131
             });
132 132
         }
133 133
 
134
-        $model::deleting(function ($entry) use ($uploader) {
134
+        $model::deleting(function($entry) use ($uploader) {
135 135
             $uploader->deleteUploadedFiles($entry);
136 136
         });
137 137
 
@@ -153,13 +153,13 @@  discard block
 block discarded – undo
153 153
         $customUploader = isset($uploaderConfiguration['uploader']) && class_exists($uploaderConfiguration['uploader']);
154 154
 
155 155
         if ($customUploader) {
156
-            return $uploaderConfiguration['uploader']::for($crudObject, $uploaderConfiguration);
156
+            return $uploaderConfiguration['uploader']::for ($crudObject, $uploaderConfiguration);
157 157
         }
158 158
 
159 159
         $uploader = app('UploadersRepository')->hasUploadFor($crudObject['type'], $this->macro);
160 160
 
161 161
         if ($uploader) {
162
-            return app('UploadersRepository')->getUploadFor($crudObject['type'], $this->macro)::for($crudObject, $uploaderConfiguration);
162
+            return app('UploadersRepository')->getUploadFor($crudObject['type'], $this->macro)::for ($crudObject, $uploaderConfiguration);
163 163
         }
164 164
 
165 165
         throw new Exception('Undefined upload type for '.$this->crudObjectType.' type: '.$crudObject['type']);
Please login to merge, or discard this patch.
src/app/Console/Commands/Install.php 1 patch
Spacing   +16 added lines, -16 removed lines patch added patch discarded remove patch
@@ -83,7 +83,7 @@  discard block
 block discarded – undo
83 83
 
84 84
         // Install Backpack Generators
85 85
         $this->progressBlock('Installing Generators');
86
-        if (! file_exists('vendor/backpack/generators/composer.json')) {
86
+        if (!file_exists('vendor/backpack/generators/composer.json')) {
87 87
             // only do this if Generators aren't already required
88 88
             $process = new Process(['composer', 'require', '--dev', 'backpack/generators']);
89 89
             $process->setTimeout(300);
@@ -97,7 +97,7 @@  discard block
 block discarded – undo
97 97
         $this->closeProgressBlock();
98 98
 
99 99
         // Optional commands
100
-        if (! $this->option('no-interaction')) {
100
+        if (!$this->option('no-interaction')) {
101 101
             // Themes
102 102
             $this->installTheme();
103 103
 
@@ -106,7 +106,7 @@  discard block
 block discarded – undo
106 106
 
107 107
             // Addons
108 108
             $this->installAddons();
109
-        } elseif (! $this->isAnyThemeInstalled()) {
109
+        } elseif (!$this->isAnyThemeInstalled()) {
110 110
             // Install default theme
111 111
             $this->progressBlock('Installing default theme');
112 112
             $this->executeArtisanProcess('backpack:require:theme-tabler');
@@ -187,7 +187,7 @@  discard block
 block discarded – undo
187 187
 
188 188
         $this->deleteLines(3);
189 189
 
190
-        if (! $total) {
190
+        if (!$total) {
191 191
             $this->deleteLines();
192 192
             $this->note('Skipping creating an admin user.');
193 193
             $this->newLine();
@@ -196,14 +196,14 @@  discard block
 block discarded – undo
196 196
 
197 197
     private function isEveryAddonInstalled()
198 198
     {
199
-        return collect($this->addons)->every(function ($addon) {
199
+        return collect($this->addons)->every(function($addon) {
200 200
             return file_exists($addon->path);
201 201
         });
202 202
     }
203 203
 
204 204
     private function updateAddonsStatus()
205 205
     {
206
-        $this->addons = $this->addons->each(function (&$addon) {
206
+        $this->addons = $this->addons->each(function(&$addon) {
207 207
             $isInstalled = file_exists($addon->path);
208 208
             $addon->status = $isInstalled ? 'installed' : 'not installed';
209 209
             $addon->statusColor = $isInstalled ? 'green' : 'yellow';
@@ -214,7 +214,7 @@  discard block
 block discarded – undo
214 214
     {
215 215
         // map the addons
216 216
         $this->addons = collect($this->addons)
217
-            ->map(function ($class) {
217
+            ->map(function($class) {
218 218
                 return (object) $class::$addon;
219 219
             });
220 220
 
@@ -233,15 +233,15 @@  discard block
 block discarded – undo
233 233
 
234 234
         // Calculate the printed line count
235 235
         $printedLines = $this->addons
236
-            ->map(function ($e) {
236
+            ->map(function($e) {
237 237
                 return count($e->description);
238 238
             })
239
-            ->reduce(function ($sum, $item) {
239
+            ->reduce(function($sum, $item) {
240 240
                 return $sum + $item + 2;
241 241
             }, 0);
242 242
 
243 243
         $total = 0;
244
-        while (! $this->isEveryAddonInstalled()) {
244
+        while (!$this->isEveryAddonInstalled()) {
245 245
             $input = (int) $this->listChoice('Would you like to install a premium Backpack add-on? <fg=gray>(enter option number: 1, 2 or 3)</>', $this->addons->toArray());
246 246
 
247 247
             if ($input < 1 || $input > $this->addons->count()) {
@@ -276,14 +276,14 @@  discard block
 block discarded – undo
276 276
 
277 277
     private function isEveryThemeInstalled()
278 278
     {
279
-        return $this->themes()->every(function ($theme) {
279
+        return $this->themes()->every(function($theme) {
280 280
             return $theme->status == 'installed';
281 281
         });
282 282
     }
283 283
 
284 284
     private function isAnyThemeInstalled()
285 285
     {
286
-        return $this->themes()->filter(function ($theme) {
286
+        return $this->themes()->filter(function($theme) {
287 287
             return $theme->status == 'installed';
288 288
         })->count() > 0;
289 289
     }
@@ -301,10 +301,10 @@  discard block
 block discarded – undo
301 301
 
302 302
         // Calculate the printed line count
303 303
         $printedLines = $this->themes()
304
-            ->map(function ($e) {
304
+            ->map(function($e) {
305 305
                 return count($e->description);
306 306
             })
307
-            ->reduce(function ($sum, $item) {
307
+            ->reduce(function($sum, $item) {
308 308
                 return $sum + $item + 2;
309 309
             }, 0);
310 310
 
@@ -340,9 +340,9 @@  discard block
 block discarded – undo
340 340
     public function themes()
341 341
     {
342 342
         return collect($this->themes)
343
-            ->map(function ($class) {
343
+            ->map(function($class) {
344 344
                 return (object) $class::$addon;
345
-            })->each(function (&$theme) {
345
+            })->each(function(&$theme) {
346 346
                 $isInstalled = file_exists($theme->path);
347 347
                 $theme->status = $isInstalled ? 'installed' : 'not installed';
348 348
                 $theme->statusColor = $isInstalled ? 'green' : 'yellow';
Please login to merge, or discard this patch.
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/Tabs.php 1 patch
Spacing   +7 added lines, -7 removed lines patch added patch discarded remove patch
@@ -32,7 +32,7 @@  discard block
 block discarded – undo
32 32
      */
33 33
     public function tabsDisabled()
34 34
     {
35
-        return ! $this->tabsEnabled();
35
+        return !$this->tabsEnabled();
36 36
     }
37 37
 
38 38
     public function setTabsType($type)
@@ -121,8 +121,8 @@  discard block
 block discarded – undo
121 121
      */
122 122
     public function getElementsWithoutATab(array $elements)
123 123
     {
124
-        return collect($elements)->filter(function ($value) {
125
-            return ! isset($value['tab']);
124
+        return collect($elements)->filter(function($value) {
125
+            return !isset($value['tab']);
126 126
         });
127 127
     }
128 128
 
@@ -145,7 +145,7 @@  discard block
 block discarded – undo
145 145
         if (in_array($tabLabel, $this->getUniqueTabNames($source))) {
146 146
             $items = $this->getCurrentItems($source);
147 147
 
148
-            return collect($items)->filter(function ($value) use ($tabLabel) {
148
+            return collect($items)->filter(function($value) use ($tabLabel) {
149 149
                 return isset($value['tab']) && $value['tab'] == $tabLabel;
150 150
             });
151 151
         }
@@ -167,11 +167,11 @@  discard block
 block discarded – undo
167 167
         $items = $this->getCurrentItems($source);
168 168
 
169 169
         collect($items)
170
-            ->filter(function ($value) {
170
+            ->filter(function($value) {
171 171
                 return isset($value['tab']);
172 172
             })
173
-            ->each(function ($value) use (&$tabs) {
174
-                if (! in_array($value['tab'], $tabs)) {
173
+            ->each(function($value) use (&$tabs) {
174
+                if (!in_array($value['tab'], $tabs)) {
175 175
                     $tabs[] = ['tab_label' => $value['tab'], 'tab_hash' => $value['tab_hash'] ?? $value['tab']];
176 176
                 }
177 177
             });
Please login to merge, or discard this patch.
src/app/Library/CrudPanel/Traits/Fields.php 1 patch
Spacing   +16 added lines, -16 removed lines patch added patch discarded remove patch
@@ -85,11 +85,11 @@  discard block
 block discarded – undo
85 85
             return $field;
86 86
         }
87 87
 
88
-        if(empty(Str::slug($field['tab'])) && !isset($field['tab_hash'])) {
88
+        if (empty(Str::slug($field['tab'])) && !isset($field['tab_hash'])) {
89 89
             abort(500, 'The tab '.$field['tab'].' is defined in an unsupported encoding. Please define `tab_hash` without special characters do be displayed in the #url');
90 90
         }
91 91
 
92
-        if(empty(Str::slug($field['tab_hash']))) {
92
+        if (empty(Str::slug($field['tab_hash']))) {
93 93
             abort(500, 'The `tab_hash` string «'.$field['tab_hash'].'» does not have a valid encoding. Please ensure that you `tab_hash` string returns something from `Str::slug($yourHashString)`');
94 94
         }
95 95
 
@@ -153,7 +153,7 @@  discard block
 block discarded – undo
153 153
      */
154 154
     public function afterField($targetFieldName)
155 155
     {
156
-        $this->transformFields(function ($fields) use ($targetFieldName) {
156
+        $this->transformFields(function($fields) use ($targetFieldName) {
157 157
             return $this->moveField($fields, $targetFieldName, false);
158 158
         });
159 159
     }
@@ -165,7 +165,7 @@  discard block
 block discarded – undo
165 165
      */
166 166
     public function beforeField($targetFieldName)
167 167
     {
168
-        $this->transformFields(function ($fields) use ($targetFieldName) {
168
+        $this->transformFields(function($fields) use ($targetFieldName) {
169 169
             return $this->moveField($fields, $targetFieldName, true);
170 170
         });
171 171
     }
@@ -177,7 +177,7 @@  discard block
 block discarded – undo
177 177
      */
178 178
     public function makeFirstField()
179 179
     {
180
-        if (! $this->fields()) {
180
+        if (!$this->fields()) {
181 181
             return false;
182 182
         }
183 183
 
@@ -192,7 +192,7 @@  discard block
 block discarded – undo
192 192
      */
193 193
     public function removeField($name)
194 194
     {
195
-        $this->transformFields(function ($fields) use ($name) {
195
+        $this->transformFields(function($fields) use ($name) {
196 196
             Arr::forget($fields, $name);
197 197
 
198 198
             return $fields;
@@ -206,7 +206,7 @@  discard block
 block discarded – undo
206 206
      */
207 207
     public function removeFields($array_of_names)
208 208
     {
209
-        if (! empty($array_of_names)) {
209
+        if (!empty($array_of_names)) {
210 210
             foreach ($array_of_names as $name) {
211 211
                 $this->removeField($name);
212 212
             }
@@ -219,7 +219,7 @@  discard block
 block discarded – undo
219 219
     public function removeAllFields()
220 220
     {
221 221
         $current_fields = $this->getCleanStateFields();
222
-        if (! empty($current_fields)) {
222
+        if (!empty($current_fields)) {
223 223
             foreach ($current_fields as $field) {
224 224
                 $this->removeField($field['name']);
225 225
             }
@@ -313,7 +313,7 @@  discard block
 block discarded – undo
313 313
                 $jsonCastables = ['array', 'object', 'json'];
314 314
                 $fieldCasting = $casted_attributes[$field['name']];
315 315
 
316
-                if (in_array($fieldCasting, $jsonCastables) && isset($input[$field['name']]) && ! empty($input[$field['name']]) && ! is_array($input[$field['name']])) {
316
+                if (in_array($fieldCasting, $jsonCastables) && isset($input[$field['name']]) && !empty($input[$field['name']]) && !is_array($input[$field['name']])) {
317 317
                     try {
318 318
                         $input[$field['name']] = json_decode($input[$field['name']]);
319 319
                     } catch (\Exception $e) {
@@ -342,7 +342,7 @@  discard block
 block discarded – undo
342 342
      */
343 343
     public function orderFields($order)
344 344
     {
345
-        $this->transformFields(function ($fields) use ($order) {
345
+        $this->transformFields(function($fields) use ($order) {
346 346
             return $this->applyOrderToFields($fields, $order);
347 347
         });
348 348
     }
@@ -366,7 +366,7 @@  discard block
 block discarded – undo
366 366
     public function hasUploadFields()
367 367
     {
368 368
         $fields = $this->getCleanStateFields();
369
-        $upload_fields = Arr::where($fields, function ($value, $key) {
369
+        $upload_fields = Arr::where($fields, function($value, $key) {
370 370
             // check if any subfields have uploads
371 371
             if (isset($value['subfields'])) {
372 372
                 foreach ($value['subfields'] as $subfield) {
@@ -438,7 +438,7 @@  discard block
 block discarded – undo
438 438
         $alreadyLoaded = $this->getLoadedFieldTypes();
439 439
         $type = $this->getFieldTypeWithNamespace($field);
440 440
 
441
-        if (! in_array($type, $this->getLoadedFieldTypes(), true)) {
441
+        if (!in_array($type, $this->getLoadedFieldTypes(), true)) {
442 442
             $alreadyLoaded[] = $type;
443 443
             $this->setLoadedFieldTypes($alreadyLoaded);
444 444
 
@@ -479,7 +479,7 @@  discard block
 block discarded – undo
479 479
      */
480 480
     public function fieldTypeNotLoaded($field)
481 481
     {
482
-        return ! in_array($this->getFieldTypeWithNamespace($field), $this->getLoadedFieldTypes());
482
+        return !in_array($this->getFieldTypeWithNamespace($field), $this->getLoadedFieldTypes());
483 483
     }
484 484
 
485 485
     /**
@@ -491,7 +491,7 @@  discard block
 block discarded – undo
491 491
     {
492 492
         $fieldNamesArray = array_column($this->getCleanStateFields(), 'name');
493 493
 
494
-        return array_reduce($fieldNamesArray, function ($names, $item) {
494
+        return array_reduce($fieldNamesArray, function($names, $item) {
495 495
             if (strpos($item, ',') === false) {
496 496
                 $names[] = $item;
497 497
 
@@ -542,7 +542,7 @@  discard block
 block discarded – undo
542 542
      */
543 543
     public function hasFieldWhere($attribute, $value)
544 544
     {
545
-        $match = Arr::first($this->getCleanStateFields(), function ($field, $fieldKey) use ($attribute, $value) {
545
+        $match = Arr::first($this->getCleanStateFields(), function($field, $fieldKey) use ($attribute, $value) {
546 546
             return isset($field[$attribute]) && $field[$attribute] == $value;
547 547
         });
548 548
 
@@ -558,7 +558,7 @@  discard block
 block discarded – undo
558 558
      */
559 559
     public function firstFieldWhere($attribute, $value)
560 560
     {
561
-        return Arr::first($this->getCleanStateFields(), function ($field, $fieldKey) use ($attribute, $value) {
561
+        return Arr::first($this->getCleanStateFields(), function($field, $fieldKey) use ($attribute, $value) {
562 562
             return isset($field[$attribute]) && $field[$attribute] == $value;
563 563
         });
564 564
     }
Please login to merge, or discard this patch.