mirror of
https://github.com/processwire/processwire.git
synced 2025-08-10 00:37:02 +02:00
Fix issue processwire/processwire-issues#441
This commit is contained in:
@@ -526,6 +526,7 @@ class Fieldgroup extends WireArray implements Saveable, Exportable, HasLookupIte
|
|||||||
$container = $this->wire(new InputfieldWrapper());
|
$container = $this->wire(new InputfieldWrapper());
|
||||||
$containers = array();
|
$containers = array();
|
||||||
$inFieldset = false;
|
$inFieldset = false;
|
||||||
|
$inHiddenFieldset = false;
|
||||||
$inModalGroup = '';
|
$inModalGroup = '';
|
||||||
|
|
||||||
// for multiple named fields
|
// for multiple named fields
|
||||||
@@ -568,6 +569,14 @@ class Fieldgroup extends WireArray implements Saveable, Exportable, HasLookupIte
|
|||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
if($inHiddenFieldset) {
|
||||||
|
// we are in a modal group that should be skipped since all the inputs require the modal
|
||||||
|
if($field->name == $inHiddenFieldset . "_END") {
|
||||||
|
$inHiddenFieldset = false;
|
||||||
|
} else {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
if($fieldName) {
|
if($fieldName) {
|
||||||
// limit to specific field name
|
// limit to specific field name
|
||||||
@@ -597,6 +606,10 @@ class Fieldgroup extends WireArray implements Saveable, Exportable, HasLookupIte
|
|||||||
// field requires modal
|
// field requires modal
|
||||||
$inModalGroup = $field->name;
|
$inModalGroup = $field->name;
|
||||||
|
|
||||||
|
} else if($field->type instanceof FieldtypeFieldsetOpen && $field->collapsed == Inputfield::collapsedHidden) {
|
||||||
|
$inHiddenFieldset = $field->name;
|
||||||
|
continue;
|
||||||
|
|
||||||
} else if(!$flat && $field->type instanceof FieldtypeFieldsetOpen) {
|
} else if(!$flat && $field->type instanceof FieldtypeFieldsetOpen) {
|
||||||
// new fieldset in non-flat mode
|
// new fieldset in non-flat mode
|
||||||
if($field->type instanceof FieldtypeFieldsetClose) {
|
if($field->type instanceof FieldtypeFieldsetClose) {
|
||||||
|
@@ -552,7 +552,7 @@ class InputfieldWrapper extends Inputfield implements \Countable, \IteratorAggre
|
|||||||
|
|
||||||
if($collapsed && $collapsed !== Inputfield::collapsedNever) {
|
if($collapsed && $collapsed !== Inputfield::collapsedNever) {
|
||||||
$isEmpty = $inputfield->isEmpty();
|
$isEmpty = $inputfield->isEmpty();
|
||||||
if(($isEmpty && $inputfield instanceof InputfieldWrapper) ||
|
if(($isEmpty && $inputfield instanceof InputfieldWrapper && $collapsed !== Inputfield::collapsedPopulated) ||
|
||||||
$collapsed === Inputfield::collapsedYes ||
|
$collapsed === Inputfield::collapsedYes ||
|
||||||
$collapsed === Inputfield::collapsedYesLocked ||
|
$collapsed === Inputfield::collapsedYesLocked ||
|
||||||
$collapsed === true ||
|
$collapsed === true ||
|
||||||
|
Reference in New Issue
Block a user