From 2edbe674f87d03c3255e33dc289fb04a00bfc4dd Mon Sep 17 00:00:00 2001 From: Vincent Vanwaelscappel Date: Fri, 30 Jun 2023 18:51:16 +0200 Subject: [PATCH] wait #5401 @0.25 --- src/app/Magic/Fields/Field.php | 12 ++++++++++-- .../views/fields/checkbox_multiple.blade.php | 1 + 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/src/app/Magic/Fields/Field.php b/src/app/Magic/Fields/Field.php index e9d5019..d6435de 100644 --- a/src/app/Magic/Fields/Field.php +++ b/src/app/Magic/Fields/Field.php @@ -306,8 +306,16 @@ class Field implements \ArrayAccess if ($type === 'simple') { $crud->addClause('where', $name, '1'); } else if ($type === 'dropdown' || $type === 'select2') { - $crud->addClause('where', $name, $value); - } else if ($type === 'select2_multiple') { + if ($this->getAttribute('allows_multiple')) { + if(is_array($value)){ + $value=json_encode($value); + } + $crud->addClause('where', $name, 'isnotnull'); + $crud->addClause('where', $name, 'like', '%"' . $value . '"%'); + } else { + $crud->addClause('where', $name, $value); + } + } else if ($type === 'select2_multiple' || $type === 'checkbox_multiple') { $crud->addClause('whereIn', $name, json_decode($value)); } else if ($type === 'date_range') { $dates = json_decode($value); diff --git a/src/resources/views/fields/checkbox_multiple.blade.php b/src/resources/views/fields/checkbox_multiple.blade.php index 8298c96..006049d 100644 --- a/src/resources/views/fields/checkbox_multiple.blade.php +++ b/src/resources/views/fields/checkbox_multiple.blade.php @@ -20,6 +20,7 @@ @include('crud::fields.inc.wrapper_start') +