FIX : if delete return < 0, we break and rollback, if == 0, we set event message warning and we test other objects of list

This commit is contained in:
Gauthier PC portable 024 2021-09-09 11:25:46 +02:00
parent 938092d67c
commit 4e78a24a13

View File

@ -1315,10 +1315,12 @@ if (!$error && ($massaction == 'delete' || ($action == 'delete' && $confirm == '
$result = $objecttmp->delete($user); $result = $objecttmp->delete($user);
} }
if ($result <= 0) { if(empty($result)) { // if delete returns 0, there is at least one object linked
$TMsg = array_merge($objecttmp->errors, $TMsg); $TMsg = array_merge($objecttmp->errors, $TMsg);
} elseif ($result < 0) { // if delete returns is < 0, there is an error, we break and rollback later
setEventMessages($objecttmp->error, $objecttmp->errors, 'errors');
$error++; $error++;
break;
} else { } else {
$nbok++; $nbok++;
} }
@ -1329,19 +1331,26 @@ if (!$error && ($massaction == 'delete' || ($action == 'delete' && $confirm == '
} }
} }
if (empty($error)) {
// Message for elements well deleted // Message for elements well deleted
if ($nbok > 1) { if ($nbok > 1) {
setEventMessages($langs->trans("RecordsDeleted", $nbok), null, 'mesgs'); setEventMessages($langs->trans("RecordsDeleted", $nbok), null, 'mesgs');
} elseif(!empty($nbok)) { } elseif (!empty($nbok)) {
setEventMessages($langs->trans("RecordsDeleted", '1'), null, 'mesgs'); setEventMessages($langs->trans("RecordsDeleted", '1'), null, 'mesgs');
} }
$db->commit();
// Message for elements which can't be deleted // Message for elements which can't be deleted
if (!empty($error)) { if (!empty($TMsg)) {
sort($TMsg); sort($TMsg);
setEventMessages('', array_unique($TMsg), 'errors'); setEventMessages('', array_unique($TMsg), 'warnings');
} }
$db->commit();
} else {
$db->rollback();
}
//var_dump($listofobjectthirdparties);exit; //var_dump($listofobjectthirdparties);exit;
} }