From 0845b5e28a2e08dee8a6326f8b6ba6511d3ee9d2 Mon Sep 17 00:00:00 2001 From: Djamil Legato Date: Wed, 29 Jul 2015 20:43:13 -0700 Subject: [PATCH] Added support for select multiple attribute in array filter --- system/blueprints/pages/default.yaml | 1 + system/src/Grav/Common/Data/Validation.php | 7 +++++++ 2 files changed, 8 insertions(+) diff --git a/system/blueprints/pages/default.yaml b/system/blueprints/pages/default.yaml index bb3fec913..97a4a883a 100644 --- a/system/blueprints/pages/default.yaml +++ b/system/blueprints/pages/default.yaml @@ -126,6 +126,7 @@ form: header.taxonomy: type: taxonomy label: Taxonomy + multiple: true validate: type: array diff --git a/system/src/Grav/Common/Data/Validation.php b/system/src/Grav/Common/Data/Validation.php index d2b7066db..30db908f7 100644 --- a/system/src/Grav/Common/Data/Validation.php +++ b/system/src/Grav/Common/Data/Validation.php @@ -492,6 +492,7 @@ class Validation { $values = (array) $value; $options = isset($field['options']) ? array_keys($field['options']) : array(); + $multi = isset($field['multiple']) ? $field['multiple'] : false; if ($options) { $useKey = isset($field['use']) && $field['use'] == 'keys'; @@ -500,6 +501,12 @@ class Validation } } + if ($multi) { + foreach ($values as $key => $value) { + $values[$key] = explode(',', $value[0]); + } + } + return $values; }