From 8834ed3a10fd4ccebb7f0214218aba903e25a340 Mon Sep 17 00:00:00 2001 From: MyuTsu Date: Wed, 23 Jul 2025 11:15:49 +0200 Subject: [PATCH 1/4] fix(searchoption): default value not displayed when field is not set --- inc/abstractcontainerinstance.class.php | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/inc/abstractcontainerinstance.class.php b/inc/abstractcontainerinstance.class.php index 87ebcbd5..94d0c419 100644 --- a/inc/abstractcontainerinstance.class.php +++ b/inc/abstractcontainerinstance.class.php @@ -158,8 +158,10 @@ public static function getSpecificValueToDisplay($field, $values, array $options && $field_specs->fields['multiple'] ) { $itemtype = PluginFieldsDropdown::getClassname($field_specs->fields['name']); - if (empty($values[$field])) { + if (empty($values[$field]) && empty($field_specs->fields["default_value"])) { return ''; // Value not defined + } elseif (empty($values[$field]) && !empty($field_specs->fields["default_value"])) { + $values[$field] = $field_specs->fields['default_value']; } $values = json_decode($values[$field]); if (!is_array($values)) { From 5ca8cd862bb5cad12330a9a826760fd3ec8939dd Mon Sep 17 00:00:00 2001 From: MyuTsu Date: Wed, 23 Jul 2025 11:26:23 +0200 Subject: [PATCH 2/4] CHANGELOG.md --- CHANGELOG.md | 1 + 1 file changed, 1 insertion(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 65a67347..42d4784c 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -8,6 +8,7 @@ and this project adheres to [Semantic Versioning](http://semver.org/). ## [UNRELEASE] - Fix incompatibility of `multiple` dropdowns with `massiveaction` +- Fix default value properly applied in multiple dropdown search options ## [1.21.22] - 2025-05-28 From 9fc1624c5056264ed8fb63528504bd39e88b88d1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Langlois=20Ga=C3=ABtan?= <64356364+MyvTsv@users.noreply.github.com> Date: Wed, 23 Jul 2025 14:08:02 +0200 Subject: [PATCH 3/4] Update inc/abstractcontainerinstance.class.php Co-authored-by: Romain B. <8530352+Rom1-B@users.noreply.github.com> --- inc/abstractcontainerinstance.class.php | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/inc/abstractcontainerinstance.class.php b/inc/abstractcontainerinstance.class.php index 94d0c419..db581f17 100644 --- a/inc/abstractcontainerinstance.class.php +++ b/inc/abstractcontainerinstance.class.php @@ -158,10 +158,13 @@ public static function getSpecificValueToDisplay($field, $values, array $options && $field_specs->fields['multiple'] ) { $itemtype = PluginFieldsDropdown::getClassname($field_specs->fields['name']); - if (empty($values[$field]) && empty($field_specs->fields["default_value"])) { - return ''; // Value not defined - } elseif (empty($values[$field]) && !empty($field_specs->fields["default_value"])) { - $values[$field] = $field_specs->fields['default_value']; + if (empty($values[$field]) { + if (!empty($field_specs->fields["default_value"])) { + $values[$field] = $field_specs->fields['default_value']; + } else { + return ''; // Value not defined + } + } } $values = json_decode($values[$field]); if (!is_array($values)) { From 6513a5e6fad2e420746c28a484afc2b439608bed Mon Sep 17 00:00:00 2001 From: MyuTsu Date: Wed, 23 Jul 2025 14:31:28 +0200 Subject: [PATCH 4/4] fix lint --- inc/abstractcontainerinstance.class.php | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/inc/abstractcontainerinstance.class.php b/inc/abstractcontainerinstance.class.php index db581f17..64678aee 100644 --- a/inc/abstractcontainerinstance.class.php +++ b/inc/abstractcontainerinstance.class.php @@ -158,14 +158,13 @@ public static function getSpecificValueToDisplay($field, $values, array $options && $field_specs->fields['multiple'] ) { $itemtype = PluginFieldsDropdown::getClassname($field_specs->fields['name']); - if (empty($values[$field]) { + if (empty($values[$field])) { if (!empty($field_specs->fields["default_value"])) { $values[$field] = $field_specs->fields['default_value']; } else { return ''; // Value not defined } } - } $values = json_decode($values[$field]); if (!is_array($values)) { return ''; // Invalid value