From cecb3fa12c91e88d9cd866e52fc8e44d2fdad48b Mon Sep 17 00:00:00 2001 From: Vincent Vanwaelscappel Date: Tue, 16 Aug 2022 20:09:47 +0200 Subject: [PATCH] wip #5383 @1 --- .../Magic/Models/CubistMagicAbstractModel.php | 1 + src/public/bunchmultiple/bunchmultiple.js | 8 +++- .../fields/bunch_keyvalue_multiple.blade.php | 6 +-- .../views/fields/bunch_multiple.blade.php | 6 +-- .../fields/bunch_oneline_multiple.blade.php | 40 +++++++++---------- 5 files changed, 30 insertions(+), 31 deletions(-) diff --git a/src/app/Magic/Models/CubistMagicAbstractModel.php b/src/app/Magic/Models/CubistMagicAbstractModel.php index 7caf172..4f87fa0 100644 --- a/src/app/Magic/Models/CubistMagicAbstractModel.php +++ b/src/app/Magic/Models/CubistMagicAbstractModel.php @@ -637,6 +637,7 @@ class CubistMagicAbstractModel extends Model implements HasMedia } $res[$k] = $attribute; } + return $res; } diff --git a/src/public/bunchmultiple/bunchmultiple.js b/src/public/bunchmultiple/bunchmultiple.js index d9f3152..0ba2869 100644 --- a/src/public/bunchmultiple/bunchmultiple.js +++ b/src/public/bunchmultiple/bunchmultiple.js @@ -162,7 +162,11 @@ }); val = kvval; } - this.element.find('.hiddenfield' + this.bmidselector).val(JSON.stringify(val)); + var hidden=this.element.find('.hiddenfield' + this.bmidselector); + if ($(hidden).attr('name').indexOf('chapters') >= 0) { + var jsonval = JSON.stringify(val); + $(hidden).val(jsonval); + } }, updateLegends: function () { @@ -305,7 +309,7 @@ cb.prop('checked', v === true || v === '1' || v === 1); } else if ($(input).is('.select2_from_array')) { try { - if ($(input).is('[data-ajax]') && $(input).find('option[value="' + k + '"]').length === 0) { + if ($(input).is("[data-ajax]") && $(input).find('option[value="' + k + '"]').length === 0) { var options = $(input).data('options'); var newOption = new Option(options[v], v, false, false); $(input).append(newOption).trigger('change'); diff --git a/src/resources/views/fields/bunch_keyvalue_multiple.blade.php b/src/resources/views/fields/bunch_keyvalue_multiple.blade.php index 2258c98..10e9075 100644 --- a/src/resources/views/fields/bunch_keyvalue_multiple.blade.php +++ b/src/resources/views/fields/bunch_keyvalue_multiple.blade.php @@ -1,6 +1,4 @@ - - - +@endphp
- - +@endphp
diff --git a/src/resources/views/fields/bunch_oneline_multiple.blade.php b/src/resources/views/fields/bunch_oneline_multiple.blade.php index 4e0906d..1f265c1 100644 --- a/src/resources/views/fields/bunch_oneline_multiple.blade.php +++ b/src/resources/views/fields/bunch_oneline_multiple.blade.php @@ -1,29 +1,27 @@ - - - $v) { - if (!is_array($v) && !is_object($v)) { - $normalizedValue[] = ['key' => $k, 'value' => $v]; - } else { - $normalizedValue[$k] = $v; + if (is_array($value)) { + $normalizedValue = []; + foreach ($value as $k => $v) { + if (!is_array($v) && !is_object($v)) { + $normalizedValue[] = ['key' => $k, 'value' => $v]; + } else { + $normalizedValue[$k] = $v; + } } + $value = $normalizedValue; } - $value = $normalizedValue; -} -if (!is_string($value)) { - $value = json_encode($value); -} + if (!is_string($value)) { + $value = json_encode($value); + } -?> +@endphp