diff --git a/htdocs/compta/facture/card.php b/htdocs/compta/facture/card.php
index 71419fb7676..c517ddb2961 100644
--- a/htdocs/compta/facture/card.php
+++ b/htdocs/compta/facture/card.php
@@ -1593,6 +1593,11 @@ if (empty($reshook))
$discount->tva_tx = $lines[$i]->tva_tx;
$discount->fk_user = $user->id;
$discount->description = $desc;
+ $discount->multicurrency_subprice = abs($lines[$i]->multicurrency_subprice);
+ $discount->multicurrency_amount_ht = abs($lines[$i]->multicurrency_total_ht);
+ $discount->multicurrency_amount_tva = abs($lines[$i]->multicurrency_total_tva);
+ $discount->multicurrency_amount_ttc = abs($lines[$i]->multicurrency_total_ttc);
+
$discountid = $discount->create($user);
if ($discountid > 0) {
$result = $object->insert_discount($discountid); // This include link_to_invoice
diff --git a/htdocs/compta/facture/contact.php b/htdocs/compta/facture/contact.php
index 0a07db12cbd..6b8758bc472 100644
--- a/htdocs/compta/facture/contact.php
+++ b/htdocs/compta/facture/contact.php
@@ -108,14 +108,6 @@ elseif ($action == 'deletecontact' && $user->rights->facture->creer)
* View
*/
-if (empty($object->id)) {
- llxHeader();
- $langs->load('errors');
- echo '
'.$langs->trans("ErrorRecordNotFound").'
';
- llxFooter();
- exit;
-}
-
$title = $langs->trans('InvoiceCustomer')." - ".$langs->trans('ContactsAddresses');
$helpurl = "EN:Customers_Invoices|FR:Factures_Clients|ES:Facturas_a_clientes";
llxHeader('', $title, $helpurl);
diff --git a/htdocs/core/actions_massactions.inc.php b/htdocs/core/actions_massactions.inc.php
index 1ee8dc4b0f2..70b79ffbefc 100644
--- a/htdocs/core/actions_massactions.inc.php
+++ b/htdocs/core/actions_massactions.inc.php
@@ -1232,6 +1232,12 @@ if (!$error && ($massaction == 'delete' || ($action == 'delete' && $confirm == '
continue;
}
+ if ($objectclass == 'Holiday' && ! in_array($objecttmp->statut, array(Holiday::STATUS_DRAFT, Holiday::STATUS_CANCELED, Holiday::STATUS_REFUSED))) {
+ $nbignored++;
+ setEventMessage($langs->trans('ErrorLeaveRequestMustBeDraftCanceledOrRefusedToBeDeleted', $objecttmp->ref));
+ continue;
+ }
+
if ($objectclass == "Task" && $objecttmp->hasChildren() > 0)
{
$sql = "UPDATE ".MAIN_DB_PREFIX."projet_task SET fk_task_parent = 0 WHERE fk_task_parent = ".$objecttmp->id;
@@ -1268,7 +1274,8 @@ if (!$error && ($massaction == 'delete' || ($action == 'delete' && $confirm == '
if (!$error)
{
if ($nbok > 1) setEventMessages($langs->trans("RecordsDeleted", $nbok), null, 'mesgs');
- else setEventMessages($langs->trans("RecordDeleted", $nbok), null, 'mesgs');
+ elseif ($nbok > 0) setEventMessages($langs->trans("RecordDeleted", $nbok), null, 'mesgs');
+ else setEventMessages($langs->trans("NoRecordDeleted"), null, 'mesgs');
$db->commit();
} else {
$db->rollback();
diff --git a/htdocs/core/ajax/objectonoff.php b/htdocs/core/ajax/objectonoff.php
index ceb221b4870..593f4fa4dbc 100644
--- a/htdocs/core/ajax/objectonoff.php
+++ b/htdocs/core/ajax/objectonoff.php
@@ -78,5 +78,9 @@ if (($action == 'set') && !empty($id)) {
$format = 'int';
+ $object->table_element = $tablename;
+ $object->id = $id;
+ $object->fields[$field] = array('type' => $format, 'enabled' => 1);
+
$object->setValueFrom($field, $value, $tablename, $id, $format, '', $user, $triggerkey);
}
diff --git a/htdocs/langs/en_US/holiday.lang b/htdocs/langs/en_US/holiday.lang
index eb2cd89adf1..ef96e72cc9d 100644
--- a/htdocs/langs/en_US/holiday.lang
+++ b/htdocs/langs/en_US/holiday.lang
@@ -132,3 +132,4 @@ FreeLegalTextOnHolidays=Free text on PDF
WatermarkOnDraftHolidayCards=Watermarks on draft leave requests
HolidaysToApprove=Holidays to approve
NobodyHasPermissionToValidateHolidays=Nobody has permission to validate holidays
+ErrorLeaveRequestMustBeDraftCanceledOrRefusedToBeDeleted=Leave request %s must be draft, canceled or refused to be deleted