From 3d2485a00481e01d2a8a8358dab9bf04d9127855 Mon Sep 17 00:00:00 2001 From: Benjamin Dalsass Date: Wed, 12 Nov 2025 09:33:29 +0100 Subject: [PATCH] =?UTF-8?q?N=C2=B08772=20-=20dynamic=20form?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- sources/Forms/FormBuilder/DependencyHandler.php | 8 +------- sources/Forms/FormBuilder/DependencyMap.php | 2 +- templates/application/forms/turbo-ajax-update.html.twig | 2 ++ 3 files changed, 4 insertions(+), 8 deletions(-) diff --git a/sources/Forms/FormBuilder/DependencyHandler.php b/sources/Forms/FormBuilder/DependencyHandler.php index 8aabc4b8c..d35923a70 100644 --- a/sources/Forms/FormBuilder/DependencyHandler.php +++ b/sources/Forms/FormBuilder/DependencyHandler.php @@ -168,15 +168,9 @@ class DependencyHandler if ($oDependentBlock->IsVisible($sEventType) && $oDependentBlock->IsInputsDataReady($sEventType)) { // Get the dependent field options - $aBefore = $oDependentBlock->GetOptionsMergedWithDynamic(); $oDependentBlock->UpdateDynamicOptions($sEventType); $aOptions = $oDependentBlock->GetOptionsMergedWithDynamic($sEventType); - // Options changed flag - $bOptionsChanged = FormHelper::CompareArrayValues($aBefore, $aOptions); - - $bOptionsChanged = true; - // Add the listener callback to the dependent field if it is also a dependency for another field if ($this->oDependenciesMap->IsTheBlockInDependencies($oDependentBlock->getName())) { @@ -186,7 +180,7 @@ class DependencyHandler ]); } - if ( (!$oDependentBlock->IsAdded() || $bOptionsChanged) && $oDependentBlock->AllowAdd($sEventType)) { + if ($oDependentBlock->AllowAdd($sEventType)) { // Add events $this->AddEvent('form.add', $oDependentBlock->getName()); diff --git a/sources/Forms/FormBuilder/DependencyMap.php b/sources/Forms/FormBuilder/DependencyMap.php index f88d218d7..5f4e4c72f 100644 --- a/sources/Forms/FormBuilder/DependencyMap.php +++ b/sources/Forms/FormBuilder/DependencyMap.php @@ -8,11 +8,11 @@ namespace Combodo\iTop\Forms\FormBuilder; use Combodo\iTop\Forms\Block\AbstractFormBlock; use Combodo\iTop\Forms\Block\AbstractTypeFormBlock; +use Combodo\iTop\Forms\Block\Expression\ExpressionFormBlock; use Combodo\iTop\Forms\Block\FormBlock; use Combodo\iTop\Forms\Block\IO\FormBinding; use Combodo\iTop\Forms\Block\IO\FormInput; use Combodo\iTop\Forms\Block\IO\FormOutput; -use Combodo\iTop\ItopSdkFormDemonstrator\Form\Block\ExpressionFormBlock; /** * Dependencies handler. diff --git a/templates/application/forms/turbo-ajax-update.html.twig b/templates/application/forms/turbo-ajax-update.html.twig index 9290393b2..ded3d74b0 100644 --- a/templates/application/forms/turbo-ajax-update.html.twig +++ b/templates/application/forms/turbo-ajax-update.html.twig @@ -5,6 +5,8 @@ {% UITurboUpdate Standard { sTarget: "turbo_" ~ sBlockIdentifier} %} {% if oBlockToRedraw is not null %} {{ form_row(oBlockToRedraw) }} + {% else %} +
Reserved place for {{ sBlockIdentifier }}
{% endif %} {% EndUITurboUpdate %} {% endfor %} \ No newline at end of file