From 141c22ff677be4caf82793b7241ec1a26f472297 Mon Sep 17 00:00:00 2001 From: jf-cbd Date: Wed, 5 Jun 2024 10:26:26 +0200 Subject: [PATCH] Fix selectize bug when multiple selectize fields exist on the same page --- templates/base/components/input/set/layout.ready.js.twig | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/templates/base/components/input/set/layout.ready.js.twig b/templates/base/components/input/set/layout.ready.js.twig index 9f3c0d20d..1c9534517 100644 --- a/templates/base/components/input/set/layout.ready.js.twig +++ b/templates/base/components/input/set/layout.ready.js.twig @@ -4,7 +4,6 @@ {# SET WIDGET #} {% set oDataProvider = oUIBlock.GetDataProvider() %} -let optionsBeforeFilter; let oWidget{{ oUIBlock.GetId() }} = $('#{{ oUIBlock.GetId() }}').selectize({ {# Global options #} @@ -109,7 +108,7 @@ let oWidget{{ oUIBlock.GetId() }} = $('#{{ oUIBlock.GetId() }}').selectize({ // Filter old options data to keep selected values // (options with force flag will be kept event if they doesn't be part of the current value) let options = Object.values(me.options); - optionsBeforeFilter = options; + me.optionsBeforeFilter = options; options = options.filter(item => (typeof(item.force) !== "undefined" && item.force === true) || aSelectedItems.includes(item['{{ oDataProvider.GetDataValueField() }}'])); // Merge kept and new values options = $.merge(options, res.data.search_data); @@ -203,7 +202,7 @@ let oWidget{{ oUIBlock.GetId() }} = $('#{{ oUIBlock.GetId() }}').selectize({ onBlur: function(){ this.clearOptionGroups() - this.addOption(optionsBeforeFilter) + this.addOption(this.optionsBeforeFilter) }, {# plugin combodo_add_button #}