From a0fce62e3143764ee9c3754f9120caf93dbab089 Mon Sep 17 00:00:00 2001 From: Matias Griese Date: Wed, 23 Dec 2020 20:23:55 +0200 Subject: [PATCH] Regression: Values inside Fieldset do not display [#1995] --- CHANGELOG.md | 1 + admin.php | 6 ++++++ .../forms/fields/taxonomy/taxonomy.html.twig | 12 ++++++------ 3 files changed, 13 insertions(+), 6 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 041682f0..dea6a7bc 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,6 +6,7 @@ 1. [](#bugfix) * Fixed missed highlight on the selected page in Parents field * Fixed notifications that would not be remembered as hidden + * Fixed taxonomy field not working outside pages # v1.10.0-rc.20 ## 12/14/2020 diff --git a/admin.php b/admin.php index a896e4e1..5c4280bf 100644 --- a/admin.php +++ b/admin.php @@ -145,6 +145,12 @@ class AdminPlugin extends Plugin 'key_type' => 'string', 'value_type' => 'bool', ] + ], + 'taxonomy' => [ + 'multiple' => true, + 'validate' => [ + 'type' => 'array' + ] ] ]; } diff --git a/themes/grav/templates/forms/fields/taxonomy/taxonomy.html.twig b/themes/grav/templates/forms/fields/taxonomy/taxonomy.html.twig index e109636d..ebc96166 100644 --- a/themes/grav/templates/forms/fields/taxonomy/taxonomy.html.twig +++ b/themes/grav/templates/forms/fields/taxonomy/taxonomy.html.twig @@ -1,22 +1,22 @@ {% extends "forms/field.html.twig" %} {% block field %} -{% set taxonomies = (taxonomies is null ? (field.taxonomies ? field.taxonomies : admin.data('config/site').taxonomies) : taxonomies) %} +{% set taxonomies = taxonomies ?? field.taxonomies ?? admin.data('config/site').taxonomies ?? [] %} {% set parentname = field.name %} {% set options = field.options %} {% set default = field.default %} {% for name in taxonomies %} - - {% set value = array(data.value('header.taxonomy.' ~ name)|default(default[name] ?? [])) %} - {% set sub_taxonomies = attribute(grav.taxonomy.taxonomy, name)|default([])|keys %} + {% set field_name = parentname ~ '.' ~ name %} + {% set value = (form.value(field_name) ?? data.value(field_name) ?? default[name] ?? [])|array %} + {% set sub_taxonomies = (attribute(grav.taxonomy.taxonomy, name) ?? [])|keys %} {% set list = (options[name] ?? [])|merge(sub_taxonomies)|merge(value)|array_unique %} {% set field = { type: 'select', classes: 'fancy create', label: name|capitalize, - name: parentname ~ '.' ~ name, + name: field_name, multiple: true, options: list, style: field.style, @@ -27,4 +27,4 @@ {% include ['forms/fields/select/select.html.twig'] %} {% endfor %} -{% endblock %} \ No newline at end of file +{% endblock %}