Skip to content

Commit 3f460bd

Browse files
author
Danny
committed
PHP: Fixed the priority of displaying - 'hiding' takes precedence before 'showing'
1 parent 7a88660 commit 3f460bd

File tree

1 file changed

+6
-2
lines changed

1 file changed

+6
-2
lines changed

php/template.php

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -269,6 +269,7 @@ private function processElement(DOMElement $element, $zVar) {
269269
$value = $this->data[$var];
270270
$this->replaceElement($element, $var, $value, $instruction, $negate);
271271
}
272+
$element->removeAttribute('dna-removed');
272273
}
273274

274275
/**
@@ -307,11 +308,14 @@ private function replaceElement(DOMElement $element, $var, $value, $instruction,
307308
break;
308309
case '?': // hide element
309310
if ($positiveAction) {
310-
$this->removeAttrToken($element, 'class', 'dna-template-hidden');
311-
$this->addAttrToken($element, 'class', 'dna-template-visible');
311+
if (!$element->hasAttribute('dna-removed')) {
312+
$this->removeAttrToken($element, 'class', 'dna-template-hidden');
313+
$this->addAttrToken($element, 'class', 'dna-template-visible');
314+
}
312315
} else {
313316
$this->removeAttrToken($element, 'class', 'dna-template-visible');
314317
$this->addAttrToken($element, 'class', 'dna-template-hidden');
318+
$element->setAttribute('dna-removed', 'true');
315319
}
316320
break;
317321
case '=': // set form element value

0 commit comments

Comments
 (0)