HTMLFormFieldCloner: Don't try to validate hidden fields
authorBartosz Dziewoński <matma.rex@gmail.com>
Thu, 24 Nov 2016 16:42:29 +0000 (17:42 +0100)
committerBartosz Dziewoński <matma.rex@gmail.com>
Thu, 24 Nov 2016 16:50:49 +0000 (17:50 +0100)
Follow-up to 788526c2d1a4a9e32722c0a26b4a5027f00aa9bb.

To test: try to create a SecurePoll of type "Approval vote". Without this
patch, but with I81d04dca6cbb499a15828fd33b01746b68c694da, an invisible
field (only applicable for "Range voting (plurality)") will fail validation.

Change-Id: I37e50799ba1f0e0e64a197818b58444f5b056bf0

includes/htmlform/fields/HTMLFormFieldCloner.php

index 5d8f491..09fe1bc 100644 (file)
@@ -240,6 +240,9 @@ class HTMLFormFieldCloner extends HTMLFormField {
                                if ( !array_key_exists( $fieldname, $value ) ) {
                                        continue;
                                }
+                               if ( $field->isHidden( $alldata ) ) {
+                                       continue;
+                               }
                                $ok = $field->validate( $value[$fieldname], $alldata );
                                if ( $ok !== true ) {
                                        return false;