diff --git a/ecrire/action/editer_liens.php b/ecrire/action/editer_liens.php index 771a788b1287ab8fc7a1a855fdad6f655373aa71..699c569a1f9c1e1c4fbab1f7ec83e044ace2a794 100644 --- a/ecrire/action/editer_liens.php +++ b/ecrire/action/editer_liens.php @@ -647,7 +647,7 @@ function lien_rang_where($table_lien, $primary, $id_source, $objet, $id_objet, $ */ function lien_delete($objet_source, $primary, $table_lien, $id, $objets, $cond = null) { - $retire = []; + $retires = []; $dels = 0; $echec = false; if (is_null($cond)) { @@ -704,7 +704,7 @@ function lien_delete($objet_source, $primary, $table_lien, $id, $objets, $cond = } else { $echec = true; } - $retire[] = [ + $retires[] = [ 'source' => [$objet_source => $l[$primary]], 'lien' => [$l['objet'] => $id_o], 'type' => $l['objet'], @@ -725,10 +725,12 @@ function lien_delete($objet_source, $primary, $table_lien, $id, $objets, $cond = } // si on a supprime des liens, on reordonne les liens concernes if ($dels) { - lien_ordonner($objet_source, $primary, $table_lien, $id, $objets); + foreach ($retires as $retire) { + lien_ordonner($objet_source, $primary, $table_lien, $id, [$retire['type'] => [$retire['id']]]); + } } - pipeline('trig_supprimer_objets_lies', $retire); + pipeline('trig_supprimer_objets_lies', $retires); return ($echec ? false : $dels); }