From b0221c5e136fb754b358fb20a76851c052fd712b Mon Sep 17 00:00:00 2001 From: Noah Hilverling Date: Tue, 14 Feb 2017 10:18:56 +0100 Subject: [PATCH] Form: Preserve default if element has attribute 'disabled' fixes #2509 --- library/Icinga/Web/Form.php | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/library/Icinga/Web/Form.php b/library/Icinga/Web/Form.php index 6804eb689..439db0fc0 100644 --- a/library/Icinga/Web/Form.php +++ b/library/Icinga/Web/Form.php @@ -1105,10 +1105,11 @@ class Form extends Zend_Form */ protected function preserveDefaults(Zend_Form $form, array & $defaults) { - foreach ($form->getElements() as $name => $_) { - if (array_key_exists($name, $defaults) - && array_key_exists($name . static::DEFAULT_SUFFIX, $defaults) - && $defaults[$name] === $defaults[$name . static::DEFAULT_SUFFIX] + foreach ($form->getElements() as $name => $element) { + if ((array_key_exists($name, $defaults) + && array_key_exists($name . static::DEFAULT_SUFFIX, $defaults) + && $defaults[$name] === $defaults[$name . static::DEFAULT_SUFFIX]) + || $element->getAttrib('disabled') ) { unset($defaults[$name]); }