N°5904 - Fix crash when adding a 1:n link item in object edition

This commit is contained in:
Molkobain
2023-02-07 14:35:49 +01:00
parent 9f9630d011
commit 4d4d3bd9a2

View File

@@ -4021,8 +4021,16 @@ HTML;
if (($sLinkedClass == $sSubClass) || (is_subclass_of($sSubClass, $sLinkedClass))) {
$aObjData = $aData['data'];
// Avoid duplicates on bulk modify
if (!in_array($aObjData[$oAttDef->GetExtKeyToRemote()], $oLinkSet->GetColumnAsArray($oAttDef->GetExtKeyToRemote(), false))
|| $oAttDef->DuplicatesAllowed()) {
$bCanLinkBeCreated = true;
// - Special case for n:n links
if (
($oAttDef instanceof AttributeLinkedSetIndirect)
&& (false === $oAttDef->DuplicatesAllowed())
&& in_array($aObjData[$oAttDef->GetExtKeyToRemote()], $oLinkSet->GetColumnAsArray($oAttDef->GetExtKeyToRemote(), false))
) {
$bCanLinkBeCreated = false;
}
if ($bCanLinkBeCreated) {
$oLink = MetaModel::NewObject($sSubClass);
$oLink->UpdateObjectFromArray($aObjData);
$oLinkSet->AddItem($oLink);