diff --git a/htdocs/includes/modules/commande/pdf_edison.modules.php b/htdocs/includes/modules/commande/pdf_edison.modules.php
index c5285def3a8..c12231eba41 100644
--- a/htdocs/includes/modules/commande/pdf_edison.modules.php
+++ b/htdocs/includes/modules/commande/pdf_edison.modules.php
@@ -22,7 +22,7 @@
/**
\file htdocs/includes/modules/commande/pdf_edison.modules.php
\ingroup commande
- \brief Fichier de la classe permettant de générer les commandes au modèle Edison
+ \brief Fichier de la classe permettant de g�n�rer les commandes au mod�le Edison
\version $Id$
*/
@@ -31,20 +31,20 @@ require_once(DOL_DOCUMENT_ROOT ."/includes/modules/commande/modules_commande.php
/**
\class pdf_edison
- \brief Classe permettant de générer les commandes au modèle Edison
+ \brief Classe permettant de g�n�rer les commandes au mod�le Edison
*/
class pdf_edison extends ModelePDFCommandes
{
/** \brief Constructeur
- \param db handler accès base de donnée
+ \param db handler acc�s base de donn�e
*/
function pdf_edison($db=0)
{
$this->db = $db;
$this->name = "edison";
- $this->description = "Modèle de commande simple";
+ $this->description = "Modele de commande simple";
// Dimension page pour format A4
$this->type = 'pdf';
@@ -59,8 +59,8 @@ class pdf_edison extends ModelePDFCommandes
}
- /** \brief Renvoi dernière erreur
- \return string Dernière erreur
+ /** \brief Renvoi derni�re erreur
+ \return string Derni�re erreur
*/
function pdferror()
{
@@ -69,8 +69,8 @@ class pdf_edison extends ModelePDFCommandes
/**
- \brief Fonction générant la commande sur le disque
- \param id id de la propale à générer
+ \brief Fonction g�n�rant la commande sur le disque
+ \param id id de la propale � g�n�rer
\return int 1=ok, 0=ko
*/
function write_file($com,$outputlangs='')
@@ -85,7 +85,7 @@ class pdf_edison extends ModelePDFCommandes
$outputlangs->setPhpLang();
- // Définition de l'objet $com (pour compatibilite ascendante)
+ // D�finition de l'objet $com (pour compatibilite ascendante)
if (! is_object($com))
{
$id = $com;
@@ -95,7 +95,7 @@ class pdf_edison extends ModelePDFCommandes
if ($conf->commande->dir_output)
{
- // Définition de $dir et $file
+ // D�finition de $dir et $file
if ($com->specimen)
{
$dir = $conf->commande->dir_output;
@@ -126,7 +126,7 @@ class pdf_edison extends ModelePDFCommandes
$pdf=new FPDI_Protection('P','mm',$this->format);
$pdfrights = array('print'); // Ne permet que l'impression du document
$pdfuserpass = ''; // Mot de passe pour l'utilisateur final
- $pdfownerpass = NULL; // Mot de passe du propriétaire, créé aléatoirement si pas défini
+ $pdfownerpass = NULL; // Mot de passe du propri�taire, cr�� al�atoirement si pas d�fini
$pdf->SetProtection($pdfrights,$pdfuserpass,$pdfownerpass);
}
else
@@ -232,7 +232,7 @@ class pdf_edison extends ModelePDFCommandes
$pdf->MultiCell(42, $tab2_lh, $langs->transnoentities("Reduction"), 0, 'R', 0);
$pdf->SetXY (132, $tab2_top + $tab2_lh*2);
- $pdf->MultiCell(42, $tab2_lh, "Total HT après remise", 0, 'R', 0);
+ $pdf->MultiCell(42, $tab2_lh, "Total HT apr�s remise", 0, 'R', 0);
$pdf->SetXY (132, $tab2_top + $tab2_lh*3);
$pdf->MultiCell(42, $tab2_lh, $langs->transnoentities("TotalVAT"), 0, 'R', 0);
@@ -348,7 +348,7 @@ class pdf_edison extends ModelePDFCommandes
if (defined("FAC_PDF_TEL"))
{
$pdf->SetFont('Arial','',10);
- $pdf->MultiCell(76, 5, "Tél : ".FAC_PDF_TEL);
+ $pdf->MultiCell(76, 5, "T�l : ".FAC_PDF_TEL);
}
if (defined("MAIN_INFO_SIREN"))
{
diff --git a/htdocs/langs/en_US/deliveries.lang b/htdocs/langs/en_US/deliveries.lang
index 8f2d5d05da3..5a570a47a13 100644
--- a/htdocs/langs/en_US/deliveries.lang
+++ b/htdocs/langs/en_US/deliveries.lang
@@ -6,4 +6,6 @@ DeliveryOrder=Delivery order
DeliveryOrders=Delivery orders
DeliveryDate=Delivery date
CreateDeliveryOrder=Generate delivery order
-SetDeliveryDate=Set shipping date
\ No newline at end of file
+SetDeliveryDate=Set shipping date
+ValidateDeliveryReceipt=Validate delivery receipt
+ValidateDeliveryReceiptConfirm=Are you sure you want to validate this delivery receipt ?
\ No newline at end of file
diff --git a/htdocs/langs/fr_FR/deliveries.lang b/htdocs/langs/fr_FR/deliveries.lang
index 8ef350592e9..a70fa1ec848 100644
--- a/htdocs/langs/fr_FR/deliveries.lang
+++ b/htdocs/langs/fr_FR/deliveries.lang
@@ -7,4 +7,6 @@ DeliveryOrders=Bons de livraison
DeliveryDate=Date de livraison
CreateDeliveryOrder=Générer bon de livraison
QtyDelivered=Qté livrée
-SetDeliveryDate=Définir la date de livraison
\ No newline at end of file
+SetDeliveryDate=Définir la date de livraison
+ValidateDeliveryReceipt=Valider le bon de livraison
+ValidateDeliveryReceiptConfirm=Etes-vous sur de vouloir valider ce bon de livraison ?
\ No newline at end of file
diff --git a/htdocs/livraison/fiche.php b/htdocs/livraison/fiche.php
index d7e8aa01079..5f2a9342064 100644
--- a/htdocs/livraison/fiche.php
+++ b/htdocs/livraison/fiche.php
@@ -402,7 +402,7 @@ else
*/
if ($_GET["action"] == 'valid')
{
- $html->form_confirm($_SERVER['PHP_SELF'].'?id='.$livraison->id,'Valider le bon de livraison','Etes-vous s�r de vouloir valider ce bon de livraison ?','confirm_valid');
+ $html->form_confirm($_SERVER['PHP_SELF'].'?id='.$livraison->id,$langs->trans("ValidateDeliveryReceipt"),$langs->trans("ValidateDeliveryReceiptConfirm"),'confirm_valid');
print '
';
}
diff --git a/htdocs/livraison/livraison.class.php b/htdocs/livraison/livraison.class.php
index cdeeb267c87..283085cdbc2 100644
--- a/htdocs/livraison/livraison.class.php
+++ b/htdocs/livraison/livraison.class.php
@@ -591,7 +591,7 @@ class Livraison extends CommonObject
/*
- * Lit le document associ�
+ * Lit le document associe
*
*/
function fetch_object()
@@ -606,7 +606,6 @@ class Livraison extends CommonObject
*
*
*/
-
function fetch_adresse_livraison($id)
{
$idadresse = $id;
@@ -648,10 +647,11 @@ class Livraison extends CommonObject
$ligne->qty_asked = $obj->qty_asked;
$ligne->qty_shipped = $obj->qty_shipped;
$ligne->ref = $obj->ref;
- $ligne->label = stripslashes(nl2br($obj->label));
- $ligne->description = stripslashes(nl2br($obj->description));
+ $ligne->label = $obj->label;
+ $ligne->description = $obj->description;
$ligne->price = $obj->price;
-
+ $ligne->total_ht = $obj->total_ht;
+
$this->lignes[$i] = $ligne;
$i++;
}
diff --git a/htdocs/livraison/mods/pdf/pdf_sirocco.modules.php b/htdocs/livraison/mods/pdf/pdf_sirocco.modules.php
index 5139584abef..e0c563cb082 100644
--- a/htdocs/livraison/mods/pdf/pdf_sirocco.modules.php
+++ b/htdocs/livraison/mods/pdf/pdf_sirocco.modules.php
@@ -23,7 +23,7 @@
/**
\file htdocs/livraison/mods/pdf/pdf_sirocco.modules.php
\ingroup livraison
- \brief Fichier de la classe permettant de générer les bons de livraison au modèle Sirocco
+ \brief Fichier de la classe permettant de g�n�rer les bons de livraison au mod�le Sirocco
\version $Id$
*/
@@ -32,33 +32,37 @@ require_once(DOL_DOCUMENT_ROOT."/livraison/mods/modules_livraison.php");
/**
\class pdf_sirocco
- \brief Classe permettant de générer les bons de livraison au modèle Sirocco
+ \brief Classe permettant de g�n�rer les bons de livraison au mod�le Sirocco
*/
class pdf_sirocco extends ModelePDFDeliveryOrder
{
/** \brief Constructeur
- \param db handler accès base de donnée
+ \param db handler acc�s base de donn�e
*/
function pdf_sirocco($db=0)
{
$this->db = $db;
$this->name = "sirocco";
- $this->description = "Modèle de bon de livraison simple";
+ $this->description = "Modele de bon de livraison simple";
// Dimension page pour format A4
$this->type = 'pdf';
$this->page_largeur = 210;
$this->page_hauteur = 297;
$this->format = array($this->page_largeur,$this->page_hauteur);
+ $this->marge_gauche=10;
+ $this->marge_droite=10;
+ $this->marge_haute=10;
+ $this->marge_basse=10;
$this->error = "";
}
- /** \brief Renvoi dernière erreur
- * \return string Dernière erreur
+ /** \brief Renvoi derniere erreur
+ * \return string Derniere erreur
*/
function pdferror()
{
@@ -67,10 +71,10 @@ class pdf_sirocco extends ModelePDFDeliveryOrder
/**
- \brief Fonction générant le bon de livraison sur le disque
- \param delivery Object livraison à générer
+ \brief Fonction g�n�rant le bon de livraison sur le disque
+ \param delivery Object livraison � g�n�rer
\param outputlangs Output language
- \return int 1 if OK, <=0 if KO
+ \return int 1 if OK, <=0 if KO
*/
function write_file($delivery,$outputlangs='')
{
@@ -118,7 +122,7 @@ class pdf_sirocco extends ModelePDFDeliveryOrder
$pdf=new FPDI_Protection('P','mm',$this->format);
$pdfrights = array('print'); // Ne permet que l'impression du document
$pdfuserpass = ''; // Mot de passe pour l'utilisateur final
- $pdfownerpass = NULL; // Mot de passe du propriétaire, créé aléatoirement si pas défini
+ $pdfownerpass = NULL; // Mot de passe du proprietaire, cree aleatoirement si pas defini
$pdf->SetProtection($pdfrights,$pdfuserpass,$pdfownerpass);
}
else
@@ -136,13 +140,9 @@ class pdf_sirocco extends ModelePDFDeliveryOrder
$this->_pagehead($pdf, $delivery);
- /*
- */
+ $pagenb = 1;
$tab_top = 100;
$tab_height = 140;
- /*
- *
- */
$pdf->SetFillColor(220,220,220);
@@ -158,32 +158,66 @@ class pdf_sirocco extends ModelePDFDeliveryOrder
for ($i = 0 ; $i < $nblignes ; $i++)
{
+ $curY = $nexY;
- $curY = $nexY;
+ // Description de la ligne produit
+ $libelleproduitservice=dol_htmlentitiesbr($delivery->lignes[$i]->label,1);
+ if ($delivery->lignes[$i]->description && $delivery->lignes[$i]->description!=$delivery->lignes[$i]->label)
+ {
+ if ($libelleproduitservice) $libelleproduitservice.="
";
+ $libelleproduitservice.=dol_htmlentitiesbr($delivery->lignes[$i]->description,1);
+ }
+ // Si ligne associee a un code produit
+ if ($delivery->lignes[$i]->fk_product)
+ {
+ $prodser = new Product($this->db);
+ $prodser->fetch($delivery->lignes[$i]->fk_product);
+ if ($prodser->ref)
+ {
+ $prefix_prodserv = "";
+ if($prodser->isservice())
+ {
+ // Un service peur aussi etre livre
+ $prefix_prodserv = $langs->transnoentities("Service")." ";
+ }
+ else
+ {
+ $prefix_prodserv = $langs->transnoentities("Product")." ";
+ }
+ $libelleproduitservice=$prefix_prodserv.$prodser->ref." - ".$libelleproduitservice;
+ }
+ }
+ if ($delivery->lignes[$i]->date_start && $delivery->lignes[$i]->date_end)
+ {
+ // Affichage duree si il y en a une
+ $libelleproduitservice.="
".dol_htmlentitiesbr("(".$langs->transnoentities("From")." ".dolibarr_print_date($delivery->lignes[$i]->date_start)." ".$langs->transnoentities("to")." ".dolibarr_print_date($delivery->lignes[$i]->date_end).")",1);
+ }
+
+ $pdf->SetXY (30, $curY );
+
+ $pdf->MultiCell(100, 5, $libelleproduitservice, 0, 'J', 0);
- $pdf->SetXY (30, $curY );
-
- $pdf->MultiCell(100, 5, $delivery->lignes[$i]->desc, 0, 'J', 0);
-
- $nexY = $pdf->GetY();
+ $nexY = $pdf->GetY();
$pdf->SetXY (10, $curY );
$pdf->MultiCell(20, 5, $delivery->lignes[$i]->ref, 0, 'C');
+ // \TODO Field not yet saved in database
$pdf->SetXY (133, $curY );
$pdf->MultiCell(10, 5, $delivery->lignes[$i]->tva_tx, 0, 'C');
-
- $pdf->SetXY (145, $curY );
- $pdf->MultiCell(10, 5, $delivery->lignes[$i]->qty, 0, 'C');
+ $pdf->SetXY (145, $curY );
+ $pdf->MultiCell(10, 5, $delivery->lignes[$i]->qty_shipped, 0, 'C');
+
+ // \TODO Field not yet saved in database
$pdf->SetXY (156, $curY );
$pdf->MultiCell(18, 5, price($delivery->lignes[$i]->price), 0, 'R', 0);
$pdf->SetXY (174, $curY );
- $total = price($delivery->lignes[$i]->price * $delivery->lignes[$i]->qty);
+ $total = price($delivery->lignes[$i]->price * $delivery->lignes[$i]->qty_shipped);
$pdf->MultiCell(26, 5, $total, 0, 'R', 0);
-
+
$pdf->line(10, $curY, 200, $curY );
if ($nexY > 240 && $i < $nblignes - 1)
@@ -222,7 +256,7 @@ class pdf_sirocco extends ModelePDFDeliveryOrder
$pdf->MultiCell(42, $tab2_lh, $langs->transnoentities("Discount"), 0, 'R', 0);
$pdf->SetXY (132, $tab2_top + $tab2_lh*2);
- $pdf->MultiCell(42, $tab2_lh, "Total HT après remise", 0, 'R', 0);
+ $pdf->MultiCell(42, $tab2_lh, "Total HT apr�s remise", 0, 'R', 0);
$pdf->SetXY (132, $tab2_top + $tab2_lh*3);
$pdf->MultiCell(42, $tab2_lh, $langs->transnoentities("TotalVAT"), 0, 'R', 0);
@@ -295,7 +329,7 @@ class pdf_sirocco extends ModelePDFDeliveryOrder
}
/*
- * \brief Affiche en-tête propale
+ * \brief Affiche en-t�te propale
* \param pdf objet PDF
* \param fac objet propale
* \param showadress 0=non, 1=oui
@@ -321,7 +355,7 @@ class pdf_sirocco extends ModelePDFDeliveryOrder
if (defined("FAC_PDF_TEL"))
{
$pdf->SetFont('Arial','',10);
- $pdf->MultiCell(76, 5, "Tél : ".FAC_PDF_TEL);
+ $pdf->MultiCell(76, 5, "T�l : ".FAC_PDF_TEL);
}
if (defined("MAIN_INFO_SIREN"))
{
diff --git a/htdocs/livraison/mods/pdf/pdf_typhon.modules.php b/htdocs/livraison/mods/pdf/pdf_typhon.modules.php
index 0e60d04b494..4001a42f071 100644
--- a/htdocs/livraison/mods/pdf/pdf_typhon.modules.php
+++ b/htdocs/livraison/mods/pdf/pdf_typhon.modules.php
@@ -50,7 +50,7 @@ class pdf_typhon extends ModelePDFDeliveryOrder
$this->db = $db;
$this->name = "typhon";
- $this->description = "Mod�le de bon de livraison complet (logo...)";
+ $this->description = "Modele de bon de livraison complet (logo...)";
// Dimension page pour format A4
$this->type = 'pdf';
@@ -64,7 +64,7 @@ class pdf_typhon extends ModelePDFDeliveryOrder
$this->option_logo = 1; // Affiche logo FAC_PDF_LOGO
$this->option_tva = 1; // Gere option tva FACTURE_TVAOPTION
- $this->option_modereg = 1; // Gere choix mode r�glement FACTURE_CHQ_NUMBER, FACTURE_RIB_NUMBER
+ $this->option_modereg = 1; // Gere choix mode reglement FACTURE_CHQ_NUMBER, FACTURE_RIB_NUMBER
$this->option_codeproduitservice = 1; // Affiche code produit-service
if (defined("FACTURE_TVAOPTION") && FACTURE_TVAOPTION == 'franchise')
$this->franchise=1;
@@ -149,7 +149,7 @@ class pdf_typhon extends ModelePDFDeliveryOrder
$pdf=new FPDI_Protection('P','mm',$this->format);
$pdfrights = array('print'); // Ne permet que l'impression du document
$pdfuserpass = ''; // Mot de passe pour l'utilisateur final
- $pdfownerpass = NULL; // Mot de passe du propri�taire, cr�� al�atoirement si pas d�fini
+ $pdfownerpass = NULL; // Mot de passe du proprietaire, cree aleatoirement si pas defini
$pdf->SetProtection($pdfrights,$pdfuserpass,$pdfownerpass);
}
else
@@ -202,7 +202,7 @@ class pdf_typhon extends ModelePDFDeliveryOrder
if ($libelleproduitservice) $libelleproduitservice.="
";
$libelleproduitservice.=dol_htmlentitiesbr($delivery->lignes[$i]->description,1);
}
- // Si ligne associ�e � un code produit
+ // Si ligne associee a un code produit
if ($delivery->lignes[$i]->fk_product)
{
$prodser = new Product($this->db);
@@ -212,7 +212,7 @@ class pdf_typhon extends ModelePDFDeliveryOrder
$prefix_prodserv = "";
if($prodser->isservice())
{
- // Un service peur aussi �tre livr�
+ // Un service peur aussi etre livre
$prefix_prodserv = $langs->transnoentities("Service")." ";
}
else
@@ -228,11 +228,11 @@ class pdf_typhon extends ModelePDFDeliveryOrder
$libelleproduitservice.="
".dol_htmlentitiesbr("(".$langs->transnoentities("From")." ".dolibarr_print_date($delivery->lignes[$i]->date_start)." ".$langs->transnoentities("to")." ".dolibarr_print_date($delivery->lignes[$i]->date_end).")",1);
}
- $pdf->SetFont('Arial','', 9); // Dans boucle pour g�rer multi-page
+ $pdf->SetFont('Arial','', 9); // Dans boucle pour gerer multi-page
$pdf->writeHTMLCell(108, 4, $this->posxdesc-1, $curY, $libelleproduitservice, 0, 1);
- $pdf->SetFont('Arial','', 9); // On repositionne la police par d�faut
+ $pdf->SetFont('Arial','', 9); // On repositionne la police par defaut
$nexY = $pdf->GetY();
/*