Avoid uid colliding in DOM ids

This commit is contained in:
Stephen Abello
2026-08-28 15:03:45 +02:00
parent 925ee7ae33
commit bcf4d5c47f
10 changed files with 41 additions and 7 deletions

View File

@@ -407,6 +407,7 @@ class ButtonUIBlockFactory extends AbstractUIBlockFactory
$oButton->SetColor($sColor);
$oButton->SetAriaAttributes($oPopupItem->GetAriaAttributes()->GetAttributes());
$oButton->SetDataAttributes($oPopupItem->GetDataAttributes()->GetAttributes());
$oButton->AddDataAttribute('uid', $oPopupItem->GetUID());
return $oButton;
} elseif ($oPopupItem instanceof URLPopupMenuItem) {
@@ -426,11 +427,13 @@ class ButtonUIBlockFactory extends AbstractUIBlockFactory
$oButton->SetColor($sColor);
$oButton->SetAriaAttributes($oPopupItem->GetAriaAttributes()->GetAttributes());
$oButton->SetDataAttributes($oPopupItem->GetDataAttributes()->GetAttributes());
$oButton->AddDataAttribute('uid', $oPopupItem->GetUID());
return $oButton;
} elseif ($oPopupItem instanceof SeparatorPopupMenuItem) {
$oSeparator = new ButtonSeparator(utils::GetSafeId($oPopupItem->GetUID(), true));
$oSeparator = new ButtonSeparator();
$oSeparator->SetCSSClasses($oPopupItem->GetCssClasses());
$oSeparator->AddDataAttribute('uid', $oPopupItem->GetUID());
return $oSeparator;
}
@@ -466,6 +469,7 @@ class ButtonUIBlockFactory extends AbstractUIBlockFactory
$oButton->AddMultipleJsFilesRelPaths($oPopupItem->GetLinkedScripts());
$oButton->SetAriaAttributes($oPopupItem->GetAriaAttributes()->GetAttributes());
$oButton->SetDataAttributes($oPopupItem->GetDataAttributes()->GetAttributes());
$oButton->AddDataAttribute('uid', $oPopupItem->GetUID());
return $oButton;
} elseif ($oPopupItem instanceof URLPopupMenuItem) {
@@ -488,11 +492,13 @@ class ButtonUIBlockFactory extends AbstractUIBlockFactory
}
$oButton->SetAriaAttributes($oPopupItem->GetAriaAttributes()->GetAttributes());
$oButton->SetDataAttributes($oPopupItem->GetDataAttributes()->GetAttributes());
$oButton->AddDataAttribute('uid', $oPopupItem->GetUID());
return $oButton;
} elseif ($oPopupItem instanceof SeparatorPopupMenuItem) {
$oSeparator = new ButtonSeparator(utils::GetSafeId($oPopupItem->GetUID(), true));
$oSeparator = new ButtonSeparator();
$oSeparator->SetCSSClasses($oPopupItem->GetCssClasses());
$oSeparator->AddDataAttribute('uid', $oPopupItem->GetUID());
return $oSeparator;
}