From a52589fa6a4491a60ecb114199c5922272474e21 Mon Sep 17 00:00:00 2001 From: pxpm Date: Fri, 12 Jul 2024 20:08:54 +0100 Subject: [PATCH] add select all to checklist --- src/resources/lang/en/crud.php | 1 + .../views/crud/fields/checklist.blade.php | 127 +++++++----------- 2 files changed, 53 insertions(+), 75 deletions(-) diff --git a/src/resources/lang/en/crud.php b/src/resources/lang/en/crud.php index 89b2ce413c..d04d6f05b0 100644 --- a/src/resources/lang/en/crud.php +++ b/src/resources/lang/en/crud.php @@ -156,6 +156,7 @@ // Fields 'browse_uploads' => 'Browse uploads', 'select_all' => 'Select All', + 'unselect_all' => 'Unselect All', 'select_files' => 'Select files', 'select_file' => 'Select file', 'clear' => 'Clear', diff --git a/src/resources/views/crud/fields/checklist.blade.php b/src/resources/views/crud/fields/checklist.blade.php index 980d254e59..ffd8f1707d 100644 --- a/src/resources/views/crud/fields/checklist.blade.php +++ b/src/resources/views/crud/fields/checklist.blade.php @@ -1,8 +1,9 @@ {{-- checklist --}} @php $key_attribute = (new $field['model'])->getKeyName(); - $field['attribute'] = $field['attribute'] ?? (new $field['model'])->identifiableAttribute(); - $field['number_of_columns'] = $field['number_of_columns'] ?? 3; + $field['attribute'] ??= (new $field['model'])->identifiableAttribute(); + $field['number_of_columns'] ??= 3; + $field['show_select_all'] ??= false; // calculate the checklist options if (!isset($field['options'])) { @@ -26,24 +27,23 @@ } // define the init-function on the wrapper - $field['wrapper']['data-init-function'] = $field['wrapper']['data-init-function'] ?? 'bpFieldInitChecklist'; + $field['wrapper']['data-init-function'] ??= 'bpFieldInitChecklist'; @endphp @include('crud::fields.inc.wrapper_start') + -
-
- -
+ @if($field['show_select_all'] ?? false) + + @endif @include('crud::fields.inc.translatable_icon') - + -
+
@foreach ($field['options'] as $key => $option)
@@ -70,10 +70,13 @@ @bassetBlock('backpack/crud/fields/checklist-field.js') @endBassetBlock @endpush