diff --git a/htdocs/core/lib/pdf.lib.php b/htdocs/core/lib/pdf.lib.php index c6df0040e4ebb21ae11aeb66e43fe04d15750321..a4d5a7344723100ff5c3d986fbefb7a5302c300b 100644 --- a/htdocs/core/lib/pdf.lib.php +++ b/htdocs/core/lib/pdf.lib.php @@ -1838,10 +1838,10 @@ function pdf_getLinkedObjects($object,$outputlangs) $linkedobjects=array(); $object->fetchObjectLinked(); - + foreach($object->linkedObjects as $objecttype => $objects) { - if ($objecttype == 'propal') + if ($objecttype == 'propal') { $outputlangs->load('propal'); @@ -1879,26 +1879,28 @@ function pdf_getLinkedObjects($object,$outputlangs) { $outputlangs->load('orders'); $outputlangs->load('sendings'); - foreach($objects as $elementobject) + foreach($objects as $x => $elementobject) { $elementobject->fetchObjectLinked(); - + $order = reset($elementobject->linkedObjects['commande']); - if (! empty($object->linkedObjects['commande'])) // There is already a link to order so we show only info of shipment + // We concat this record info into fields xxx_value. title is overwrote. + if (! empty($object->linkedObjects['commande']) || $object->element == 'commande') // There is already a link to order or object is the order, so we show only info of shipment { $linkedobjects[$objecttype]['ref_title'] = $outputlangs->transnoentities("RefSending"); + if (! empty($linkedobjects[$objecttype]['ref_value'])) $linkedobjects[$objecttype]['ref_value'].=' / '; $linkedobjects[$objecttype]['ref_value'].= $outputlangs->transnoentities($elementobject->ref); $linkedobjects[$objecttype]['date_title'] = $outputlangs->transnoentities("DateSending"); $linkedobjects[$objecttype]['date_value'].= dol_print_date($elementobject->date_delivery,'day','',$outputlangs); } - else // We show both info of order and shipment + else // We show both info of order and shipment. { $linkedobjects[$objecttype]['ref_title'] = $outputlangs->transnoentities("RefOrder") . ' / ' . $outputlangs->transnoentities("RefSending"); - $linkedobjects[$objecttype]['ref_value'] = $outputlangs->convToOutputCharset($order->ref) . ($order->ref_client ? ' ('.$order->ref_client.')' : ''); + if (empty($linkedobjects[$objecttype]['ref_value'])) $linkedobjects[$objecttype]['ref_value'] = $outputlangs->convToOutputCharset($order->ref) . ($order->ref_client ? ' ('.$order->ref_client.')' : ''); $linkedobjects[$objecttype]['ref_value'].= ' / ' . $outputlangs->transnoentities($elementobject->ref); $linkedobjects[$objecttype]['date_title'] = $outputlangs->transnoentities("OrderDate") . ($elementobject->date_delivery ? ' / ' . $outputlangs->transnoentities("DateSending") : ''); - $linkedobjects[$objecttype]['date_value'] = dol_print_date($order->date,'day','',$outputlangs); + if (empty($linkedobjects[$objecttype]['date_value'])) $linkedobjects[$objecttype]['date_value'] = dol_print_date($order->date,'day','',$outputlangs); $linkedobjects[$objecttype]['date_value'].= ($elementobject->date_delivery ? ' / ' . dol_print_date($elementobject->date_delivery,'day','',$outputlangs) : ''); } }