Fix PDF: Page break was ko when breaking 2 pages or more.
Fix PDF: pdf_canelle was missing code to manage pagebreak. Fix PDF: The width of picture was hardcoded into some templates. Fix PDF: The atleastonediscount was not used into some templates.
This commit is contained in:
parent
5d14322679
commit
bf735cacbe
@ -1,5 +1,5 @@
|
|||||||
<?php
|
<?php
|
||||||
/* Copyright (C) 2004-2013 Laurent Destailleur <eldy@users.sourceforge.net>
|
/* Copyright (C) 2004-2014 Laurent Destailleur <eldy@users.sourceforge.net>
|
||||||
* Copyright (C) 2005-2012 Regis Houssin <regis.houssin@capnetworks.com>
|
* Copyright (C) 2005-2012 Regis Houssin <regis.houssin@capnetworks.com>
|
||||||
* Copyright (C) 2008 Raphael Bertrand <raphael.bertrand@resultic.fr>
|
* Copyright (C) 2008 Raphael Bertrand <raphael.bertrand@resultic.fr>
|
||||||
* Copyright (C) 2010-2013 Juanjo Menent <jmenent@2byte.es>
|
* Copyright (C) 2010-2013 Juanjo Menent <jmenent@2byte.es>
|
||||||
@ -109,7 +109,7 @@ class pdf_einstein extends ModelePDFCommandes
|
|||||||
$this->posxdiscount=162;
|
$this->posxdiscount=162;
|
||||||
$this->postotalht=174;
|
$this->postotalht=174;
|
||||||
if (! empty($conf->global->MAIN_GENERATE_DOCUMENTS_WITHOUT_VAT)) $this->posxtva=$this->posxup;
|
if (! empty($conf->global->MAIN_GENERATE_DOCUMENTS_WITHOUT_VAT)) $this->posxtva=$this->posxup;
|
||||||
$this->posxpicture=$this->posxtva - 16; // width of images
|
$this->posxpicture=$this->posxtva - (empty($conf->global->MAIN_DOCUMENTS_WITH_PICTURE_WIDTH)?16:$conf->global->MAIN_DOCUMENTS_WITH_PICTURE_WIDTH); // width of images
|
||||||
if ($this->page_largeur < 210) // To work with US executive format
|
if ($this->page_largeur < 210) // To work with US executive format
|
||||||
{
|
{
|
||||||
$this->posxpicture-=20;
|
$this->posxpicture-=20;
|
||||||
@ -153,7 +153,7 @@ class pdf_einstein extends ModelePDFCommandes
|
|||||||
$outputlangs->load("products");
|
$outputlangs->load("products");
|
||||||
$outputlangs->load("orders");
|
$outputlangs->load("orders");
|
||||||
$outputlangs->load("deliveries");
|
$outputlangs->load("deliveries");
|
||||||
|
|
||||||
if ($conf->commande->dir_output)
|
if ($conf->commande->dir_output)
|
||||||
{
|
{
|
||||||
$object->fetch_thirdparty();
|
$object->fetch_thirdparty();
|
||||||
@ -228,6 +228,15 @@ class pdf_einstein extends ModelePDFCommandes
|
|||||||
$this->atleastonediscount++;
|
$this->atleastonediscount++;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
if (empty($this->atleastonediscount))
|
||||||
|
{
|
||||||
|
$this->posxpicture+=($this->postotalht - $this->posxdiscount);
|
||||||
|
$this->posxtva+=($this->postotalht - $this->posxdiscount);
|
||||||
|
$this->posxup+=($this->postotalht - $this->posxdiscount);
|
||||||
|
$this->posxqty+=($this->postotalht - $this->posxdiscount);
|
||||||
|
$this->posxdiscount+=($this->postotalht - $this->posxdiscount);
|
||||||
|
//$this->postotalht;
|
||||||
|
}
|
||||||
|
|
||||||
// New page
|
// New page
|
||||||
$pdf->AddPage();
|
$pdf->AddPage();
|
||||||
@ -304,7 +313,7 @@ class pdf_einstein extends ModelePDFCommandes
|
|||||||
$pdf->AddPage('','',true);
|
$pdf->AddPage('','',true);
|
||||||
if (! empty($tplidx)) $pdf->useTemplate($tplidx);
|
if (! empty($tplidx)) $pdf->useTemplate($tplidx);
|
||||||
if (empty($conf->global->MAIN_PDF_DONOTREPEAT_HEAD)) $this->_pagehead($pdf, $object, 0, $outputlangs);
|
if (empty($conf->global->MAIN_PDF_DONOTREPEAT_HEAD)) $this->_pagehead($pdf, $object, 0, $outputlangs);
|
||||||
$pdf->setPage($pagenb+1);
|
$pdf->setPage($pageposafter+1);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
@ -589,7 +598,7 @@ class pdf_einstein extends ModelePDFCommandes
|
|||||||
$pdf->SetFont('','B', $default_font_size - 2);
|
$pdf->SetFont('','B', $default_font_size - 2);
|
||||||
$text=$outputlangs->transnoentities("DeliveryDate").':';
|
$text=$outputlangs->transnoentities("DeliveryDate").':';
|
||||||
$pdf->MultiCell(80, 3, $text, 0, 'L', 0);
|
$pdf->MultiCell(80, 3, $text, 0, 'L', 0);
|
||||||
|
|
||||||
$pdf->SetFont('','', $default_font_size - 2);
|
$pdf->SetFont('','', $default_font_size - 2);
|
||||||
$pdf->SetXY($posxval, $posy);
|
$pdf->SetXY($posxval, $posy);
|
||||||
$text=dol_print_date($object->date_livraison,'day','',$outputlangs);
|
$text=dol_print_date($object->date_livraison,'day','',$outputlangs);
|
||||||
|
|||||||
@ -1,5 +1,5 @@
|
|||||||
<?php
|
<?php
|
||||||
/* Copyright (C) 2004-2013 Laurent Destailleur <eldy@users.sourceforge.net>
|
/* Copyright (C) 2004-2014 Laurent Destailleur <eldy@users.sourceforge.net>
|
||||||
* Copyright (C) 2005-2012 Regis Houssin <regis.houssin@capnetworks.com>
|
* Copyright (C) 2005-2012 Regis Houssin <regis.houssin@capnetworks.com>
|
||||||
* Copyright (C) 2008 Raphael Bertrand <raphael.bertrand@resultic.fr>
|
* Copyright (C) 2008 Raphael Bertrand <raphael.bertrand@resultic.fr>
|
||||||
* Copyright (C) 2010-2013 Juanjo Menent <jmenent@2byte.es>
|
* Copyright (C) 2010-2013 Juanjo Menent <jmenent@2byte.es>
|
||||||
@ -109,7 +109,7 @@ class pdf_proforma extends ModelePDFCommandes
|
|||||||
$this->posxdiscount=162;
|
$this->posxdiscount=162;
|
||||||
$this->postotalht=174;
|
$this->postotalht=174;
|
||||||
if (! empty($conf->global->MAIN_GENERATE_DOCUMENTS_WITHOUT_VAT)) $this->posxtva=$this->posxup;
|
if (! empty($conf->global->MAIN_GENERATE_DOCUMENTS_WITHOUT_VAT)) $this->posxtva=$this->posxup;
|
||||||
$this->posxpicture=$this->posxtva - 16; // width of images
|
$this->posxpicture=$this->posxtva - (empty($conf->global->MAIN_DOCUMENTS_WITH_PICTURE_WIDTH)?16:$conf->global->MAIN_DOCUMENTS_WITH_PICTURE_WIDTH); // width of images
|
||||||
if ($this->page_largeur < 210) // To work with US executive format
|
if ($this->page_largeur < 210) // To work with US executive format
|
||||||
{
|
{
|
||||||
$this->posxpicture-=20;
|
$this->posxpicture-=20;
|
||||||
@ -227,6 +227,15 @@ class pdf_proforma extends ModelePDFCommandes
|
|||||||
$this->atleastonediscount++;
|
$this->atleastonediscount++;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
if (empty($this->atleastonediscount))
|
||||||
|
{
|
||||||
|
$this->posxpicture+=($this->postotalht - $this->posxdiscount);
|
||||||
|
$this->posxtva+=($this->postotalht - $this->posxdiscount);
|
||||||
|
$this->posxup+=($this->postotalht - $this->posxdiscount);
|
||||||
|
$this->posxqty+=($this->postotalht - $this->posxdiscount);
|
||||||
|
$this->posxdiscount+=($this->postotalht - $this->posxdiscount);
|
||||||
|
//$this->postotalht;
|
||||||
|
}
|
||||||
|
|
||||||
// New page
|
// New page
|
||||||
$pdf->AddPage();
|
$pdf->AddPage();
|
||||||
@ -303,7 +312,7 @@ class pdf_proforma extends ModelePDFCommandes
|
|||||||
$pdf->AddPage('','',true);
|
$pdf->AddPage('','',true);
|
||||||
if (! empty($tplidx)) $pdf->useTemplate($tplidx);
|
if (! empty($tplidx)) $pdf->useTemplate($tplidx);
|
||||||
if (empty($conf->global->MAIN_PDF_DONOTREPEAT_HEAD)) $this->_pagehead($pdf, $object, 0, $outputlangs);
|
if (empty($conf->global->MAIN_PDF_DONOTREPEAT_HEAD)) $this->_pagehead($pdf, $object, 0, $outputlangs);
|
||||||
$pdf->setPage($pagenb+1);
|
$pdf->setPage($pageposafter+1);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
|
|||||||
@ -1,5 +1,5 @@
|
|||||||
<?php
|
<?php
|
||||||
/* Copyright (C) 2004-2013 Laurent Destailleur <eldy@users.sourceforge.net>
|
/* Copyright (C) 2004-2014 Laurent Destailleur <eldy@users.sourceforge.net>
|
||||||
* Copyright (C) 2005-2012 Regis Houssin <regis.houssin@capnetworks.com>
|
* Copyright (C) 2005-2012 Regis Houssin <regis.houssin@capnetworks.com>
|
||||||
* Copyright (C) 2008 Raphael Bertrand <raphael.bertrand@resultic.fr>
|
* Copyright (C) 2008 Raphael Bertrand <raphael.bertrand@resultic.fr>
|
||||||
* Copyright (C) 2010-2013 Juanjo Menent <jmenent@2byte.es>
|
* Copyright (C) 2010-2013 Juanjo Menent <jmenent@2byte.es>
|
||||||
@ -109,7 +109,7 @@ class pdf_crabe extends ModelePDFFactures
|
|||||||
$this->posxdiscount=162;
|
$this->posxdiscount=162;
|
||||||
$this->postotalht=174;
|
$this->postotalht=174;
|
||||||
if (! empty($conf->global->MAIN_GENERATE_DOCUMENTS_WITHOUT_VAT)) $this->posxtva=$this->posxup;
|
if (! empty($conf->global->MAIN_GENERATE_DOCUMENTS_WITHOUT_VAT)) $this->posxtva=$this->posxup;
|
||||||
$this->posxpicture=$this->posxtva - 16; // width of images
|
$this->posxpicture=$this->posxtva - (empty($conf->global->MAIN_DOCUMENTS_WITH_PICTURE_WIDTH)?16:$conf->global->MAIN_DOCUMENTS_WITH_PICTURE_WIDTH); // width of images
|
||||||
if ($this->page_largeur < 210) // To work with US executive format
|
if ($this->page_largeur < 210) // To work with US executive format
|
||||||
{
|
{
|
||||||
$this->posxpicture-=20;
|
$this->posxpicture-=20;
|
||||||
@ -228,6 +228,15 @@ class pdf_crabe extends ModelePDFFactures
|
|||||||
$this->atleastonediscount++;
|
$this->atleastonediscount++;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
if (empty($this->atleastonediscount))
|
||||||
|
{
|
||||||
|
$this->posxpicture+=($this->postotalht - $this->posxdiscount);
|
||||||
|
$this->posxtva+=($this->postotalht - $this->posxdiscount);
|
||||||
|
$this->posxup+=($this->postotalht - $this->posxdiscount);
|
||||||
|
$this->posxqty+=($this->postotalht - $this->posxdiscount);
|
||||||
|
$this->posxdiscount+=($this->postotalht - $this->posxdiscount);
|
||||||
|
//$this->postotalht;
|
||||||
|
}
|
||||||
|
|
||||||
// New page
|
// New page
|
||||||
$pdf->AddPage();
|
$pdf->AddPage();
|
||||||
@ -306,7 +315,7 @@ class pdf_crabe extends ModelePDFFactures
|
|||||||
$pdf->AddPage('','',true);
|
$pdf->AddPage('','',true);
|
||||||
if (! empty($tplidx)) $pdf->useTemplate($tplidx);
|
if (! empty($tplidx)) $pdf->useTemplate($tplidx);
|
||||||
if (empty($conf->global->MAIN_PDF_DONOTREPEAT_HEAD)) $this->_pagehead($pdf, $object, 0, $outputlangs);
|
if (empty($conf->global->MAIN_PDF_DONOTREPEAT_HEAD)) $this->_pagehead($pdf, $object, 0, $outputlangs);
|
||||||
$pdf->setPage($pagenb+1);
|
$pdf->setPage($pageposafter+1);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
@ -378,7 +387,7 @@ class pdf_crabe extends ModelePDFFactures
|
|||||||
if ($object->remise_percent) $localtax2ligne-=($localtax2ligne*$object->remise_percent)/100;
|
if ($object->remise_percent) $localtax2ligne-=($localtax2ligne*$object->remise_percent)/100;
|
||||||
|
|
||||||
$vatrate=(string) $object->lines[$i]->tva_tx;
|
$vatrate=(string) $object->lines[$i]->tva_tx;
|
||||||
|
|
||||||
// Retrieve type from database for backward compatibility with old records
|
// Retrieve type from database for backward compatibility with old records
|
||||||
if ((! isset($localtax1_type) || $localtax1_type=='' || ! isset($localtax2_type) || $localtax2_type=='') // if tax type not defined
|
if ((! isset($localtax1_type) || $localtax1_type=='' || ! isset($localtax2_type) || $localtax2_type=='') // if tax type not defined
|
||||||
&& (! empty($localtax1_rate) || ! empty($localtax2_rate))) // and there is local tax
|
&& (! empty($localtax1_rate) || ! empty($localtax2_rate))) // and there is local tax
|
||||||
|
|||||||
@ -1,5 +1,5 @@
|
|||||||
<?php
|
<?php
|
||||||
/* Copyright (C) 2004-2008 Laurent Destailleur <eldy@users.sourceforge.net>
|
/* Copyright (C) 2004-2014 Laurent Destailleur <eldy@users.sourceforge.net>
|
||||||
* Copyright (C) 2005-2009 Regis Houssin <regis.houssin@capnetworks.com>
|
* Copyright (C) 2005-2009 Regis Houssin <regis.houssin@capnetworks.com>
|
||||||
* Copyright (C) 2007 Franky Van Liedekerke <franky.van.liedekerke@telenet.be>
|
* Copyright (C) 2007 Franky Van Liedekerke <franky.van.liedekerke@telenet.be>
|
||||||
* Copyright (C) 2008 Chiptronik
|
* Copyright (C) 2008 Chiptronik
|
||||||
@ -223,15 +223,24 @@ class pdf_typhon extends ModelePDFDeliveryOrder
|
|||||||
$pdf->SetMargins($this->marge_gauche, $this->marge_haute, $this->marge_droite); // Left, Top, Right
|
$pdf->SetMargins($this->marge_gauche, $this->marge_haute, $this->marge_droite); // Left, Top, Right
|
||||||
|
|
||||||
/*
|
/*
|
||||||
// Positionne $this->atleastonediscount si on a au moins une remise
|
// Positionne $this->atleastonediscount si on a au moins une remise
|
||||||
for ($i = 0 ; $i < $nblines ; $i++)
|
for ($i = 0 ; $i < $nblines ; $i++)
|
||||||
{
|
{
|
||||||
if ($object->lines[$i]->remise_percent)
|
if ($object->lines[$i]->remise_percent)
|
||||||
{
|
{
|
||||||
$this->atleastonediscount++;
|
$this->atleastonediscount++;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
*/
|
if (empty($this->atleastonediscount))
|
||||||
|
{
|
||||||
|
$this->posxpicture+=($this->postotalht - $this->posxdiscount);
|
||||||
|
$this->posxtva+=($this->postotalht - $this->posxdiscount);
|
||||||
|
$this->posxup+=($this->postotalht - $this->posxdiscount);
|
||||||
|
$this->posxqty+=($this->postotalht - $this->posxdiscount);
|
||||||
|
$this->posxdiscount+=($this->postotalht - $this->posxdiscount);
|
||||||
|
//$this->postotalht;
|
||||||
|
}
|
||||||
|
*/
|
||||||
|
|
||||||
// New page
|
// New page
|
||||||
$pdf->AddPage();
|
$pdf->AddPage();
|
||||||
@ -307,7 +316,7 @@ class pdf_typhon extends ModelePDFDeliveryOrder
|
|||||||
$pdf->AddPage('','',true);
|
$pdf->AddPage('','',true);
|
||||||
if (! empty($tplidx)) $pdf->useTemplate($tplidx);
|
if (! empty($tplidx)) $pdf->useTemplate($tplidx);
|
||||||
if (empty($conf->global->MAIN_PDF_DONOTREPEAT_HEAD)) $this->_pagehead($pdf, $object, 0, $outputlangs);
|
if (empty($conf->global->MAIN_PDF_DONOTREPEAT_HEAD)) $this->_pagehead($pdf, $object, 0, $outputlangs);
|
||||||
$pdf->setPage($pagenb+1);
|
$pdf->setPage($pageposafter+1);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
|
|||||||
@ -1,5 +1,5 @@
|
|||||||
<?php
|
<?php
|
||||||
/* Copyright (C) 2004-2013 Laurent Destailleur <eldy@users.sourceforge.net>
|
/* Copyright (C) 2004-2014 Laurent Destailleur <eldy@users.sourceforge.net>
|
||||||
* Copyright (C) 2005-2012 Regis Houssin <regis.houssin@capnetworks.com>
|
* Copyright (C) 2005-2012 Regis Houssin <regis.houssin@capnetworks.com>
|
||||||
* Copyright (C) 2008 Raphael Bertrand <raphael.bertrand@resultic.fr>
|
* Copyright (C) 2008 Raphael Bertrand <raphael.bertrand@resultic.fr>
|
||||||
* Copyright (C) 2010-2013 Juanjo Menent <jmenent@2byte.es>
|
* Copyright (C) 2010-2013 Juanjo Menent <jmenent@2byte.es>
|
||||||
@ -153,7 +153,7 @@ class pdf_azur extends ModelePDFPropales
|
|||||||
$outputlangs->load("products");
|
$outputlangs->load("products");
|
||||||
|
|
||||||
$nblignes = count($object->lines);
|
$nblignes = count($object->lines);
|
||||||
|
|
||||||
// Loop on each lines to detect if there is at least one image to show
|
// Loop on each lines to detect if there is at least one image to show
|
||||||
$realpatharray=array();
|
$realpatharray=array();
|
||||||
if (! empty($conf->global->MAIN_GENERATE_PROPOSALS_WITH_PICTURE))
|
if (! empty($conf->global->MAIN_GENERATE_PROPOSALS_WITH_PICTURE))
|
||||||
@ -161,7 +161,7 @@ class pdf_azur extends ModelePDFPropales
|
|||||||
for ($i = 0 ; $i < $nblignes ; $i++)
|
for ($i = 0 ; $i < $nblignes ; $i++)
|
||||||
{
|
{
|
||||||
if (empty($object->lines[$i]->fk_product)) continue;
|
if (empty($object->lines[$i]->fk_product)) continue;
|
||||||
|
|
||||||
$objphoto = new Product($this->db);
|
$objphoto = new Product($this->db);
|
||||||
$objphoto->fetch($object->lines[$i]->fk_product);
|
$objphoto->fetch($object->lines[$i]->fk_product);
|
||||||
|
|
||||||
@ -185,7 +185,7 @@ class pdf_azur extends ModelePDFPropales
|
|||||||
if ($conf->propal->dir_output)
|
if ($conf->propal->dir_output)
|
||||||
{
|
{
|
||||||
$object->fetch_thirdparty();
|
$object->fetch_thirdparty();
|
||||||
|
|
||||||
// $deja_regle = 0;
|
// $deja_regle = 0;
|
||||||
|
|
||||||
// Definition of $dir and $file
|
// Definition of $dir and $file
|
||||||
@ -254,6 +254,15 @@ class pdf_azur extends ModelePDFPropales
|
|||||||
$this->atleastonediscount++;
|
$this->atleastonediscount++;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
if (empty($this->atleastonediscount))
|
||||||
|
{
|
||||||
|
$this->posxpicture+=($this->postotalht - $this->posxdiscount);
|
||||||
|
$this->posxtva+=($this->postotalht - $this->posxdiscount);
|
||||||
|
$this->posxup+=($this->postotalht - $this->posxdiscount);
|
||||||
|
$this->posxqty+=($this->postotalht - $this->posxdiscount);
|
||||||
|
$this->posxdiscount+=($this->postotalht - $this->posxdiscount);
|
||||||
|
//$this->postotalht;
|
||||||
|
}
|
||||||
|
|
||||||
// New page
|
// New page
|
||||||
$pdf->AddPage();
|
$pdf->AddPage();
|
||||||
@ -320,7 +329,7 @@ class pdf_azur extends ModelePDFPropales
|
|||||||
$pdf->AddPage('','',true);
|
$pdf->AddPage('','',true);
|
||||||
if (! empty($tplidx)) $pdf->useTemplate($tplidx);
|
if (! empty($tplidx)) $pdf->useTemplate($tplidx);
|
||||||
if (empty($conf->global->MAIN_PDF_DONOTREPEAT_HEAD)) $this->_pagehead($pdf, $object, 0, $outputlangs);
|
if (empty($conf->global->MAIN_PDF_DONOTREPEAT_HEAD)) $this->_pagehead($pdf, $object, 0, $outputlangs);
|
||||||
$pdf->setPage($pagenb+1);
|
$pdf->setPage($pageposbefore+1);
|
||||||
|
|
||||||
$curY = $tab_top_newpage;
|
$curY = $tab_top_newpage;
|
||||||
$showpricebeforepagebreak=0;
|
$showpricebeforepagebreak=0;
|
||||||
@ -358,7 +367,7 @@ class pdf_azur extends ModelePDFPropales
|
|||||||
$pdf->AddPage('','',true);
|
$pdf->AddPage('','',true);
|
||||||
if (! empty($tplidx)) $pdf->useTemplate($tplidx);
|
if (! empty($tplidx)) $pdf->useTemplate($tplidx);
|
||||||
if (empty($conf->global->MAIN_PDF_DONOTREPEAT_HEAD)) $this->_pagehead($pdf, $object, 0, $outputlangs);
|
if (empty($conf->global->MAIN_PDF_DONOTREPEAT_HEAD)) $this->_pagehead($pdf, $object, 0, $outputlangs);
|
||||||
$pdf->setPage($pagenb+1);
|
$pdf->setPage($pageposafter+1);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
@ -375,6 +384,7 @@ class pdf_azur extends ModelePDFPropales
|
|||||||
|
|
||||||
$nexY = $pdf->GetY();
|
$nexY = $pdf->GetY();
|
||||||
$pageposafter=$pdf->getPage();
|
$pageposafter=$pdf->getPage();
|
||||||
|
|
||||||
$pdf->setPage($pageposbefore);
|
$pdf->setPage($pageposbefore);
|
||||||
$pdf->setTopMargin($this->marge_haute);
|
$pdf->setTopMargin($this->marge_haute);
|
||||||
$pdf->setPageOrientation('', 1, 0); // The only function to edit the bottom margin of current page to set it.
|
$pdf->setPageOrientation('', 1, 0); // The only function to edit the bottom margin of current page to set it.
|
||||||
|
|||||||
@ -1,6 +1,6 @@
|
|||||||
<?php
|
<?php
|
||||||
/* Copyright (C) 2010-2011 Juanjo Menent <jmenent@2byte.es>
|
/* Copyright (C) 2010-2011 Juanjo Menent <jmenent@2byte.es>
|
||||||
* Copyright (C) 2010-2012 Laurent Destailleur <eldy@users.sourceforge.net>
|
* Copyright (C) 2010-2014 Laurent Destailleur <eldy@users.sourceforge.net>
|
||||||
*
|
*
|
||||||
* This program is free software; you can redistribute it and/or modify
|
* This program is free software; you can redistribute it and/or modify
|
||||||
* it under the terms of the GNU General Public License as published by
|
* it under the terms of the GNU General Public License as published by
|
||||||
@ -58,7 +58,7 @@ class pdf_canelle extends ModelePDFSuppliersInvoices
|
|||||||
* Constructor
|
* Constructor
|
||||||
*
|
*
|
||||||
* @param DoliDB $db Database handler
|
* @param DoliDB $db Database handler
|
||||||
* @param Societe $object Supplier invoice
|
* @param Object $object Supplier invoice
|
||||||
*/
|
*/
|
||||||
function __construct($db,$object)
|
function __construct($db,$object)
|
||||||
{
|
{
|
||||||
@ -105,7 +105,7 @@ class pdf_canelle extends ModelePDFSuppliersInvoices
|
|||||||
$this->posxdiscount=162;
|
$this->posxdiscount=162;
|
||||||
$this->postotalht=174;
|
$this->postotalht=174;
|
||||||
//if (! empty($conf->global->MAIN_GENERATE_DOCUMENTS_WITHOUT_VAT)) $this->posxtva=$this->posxup;
|
//if (! empty($conf->global->MAIN_GENERATE_DOCUMENTS_WITHOUT_VAT)) $this->posxtva=$this->posxup;
|
||||||
$this->posxpicture=$this->posxtva - 16; // width of images
|
$this->posxpicture=$this->posxtva - (empty($conf->global->MAIN_DOCUMENTS_WITH_PICTURE_WIDTH)?16:$conf->global->MAIN_DOCUMENTS_WITH_PICTURE_WIDTH); // width of images
|
||||||
if ($this->page_largeur < 210) // To work with US executive format
|
if ($this->page_largeur < 210) // To work with US executive format
|
||||||
{
|
{
|
||||||
$this->posxpicture-=20;
|
$this->posxpicture-=20;
|
||||||
@ -225,7 +225,16 @@ class pdf_canelle extends ModelePDFSuppliersInvoices
|
|||||||
$this->atleastonediscount++;
|
$this->atleastonediscount++;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
if (empty($this->atleastonediscount))
|
||||||
|
{
|
||||||
|
$this->posxpicture+=($this->postotalht - $this->posxdiscount);
|
||||||
|
$this->posxtva+=($this->postotalht - $this->posxdiscount);
|
||||||
|
$this->posxup+=($this->postotalht - $this->posxdiscount);
|
||||||
|
$this->posxqty+=($this->postotalht - $this->posxdiscount);
|
||||||
|
$this->posxdiscount+=($this->postotalht - $this->posxdiscount);
|
||||||
|
//$this->postotalht;
|
||||||
|
}
|
||||||
|
|
||||||
// New page
|
// New page
|
||||||
$pdf->AddPage();
|
$pdf->AddPage();
|
||||||
if (! empty($tplidx)) $pdf->useTemplate($tplidx);
|
if (! empty($tplidx)) $pdf->useTemplate($tplidx);
|
||||||
@ -279,8 +288,40 @@ class pdf_canelle extends ModelePDFSuppliersInvoices
|
|||||||
|
|
||||||
// Description of product line
|
// Description of product line
|
||||||
$curX = $this->posxdesc-1;
|
$curX = $this->posxdesc-1;
|
||||||
pdf_writelinedesc($pdf,$object,$i,$outputlangs,$this->posxtva-$curX,3,$curX,$curY,$hideref,$hidedesc,1);
|
$showpricebeforepagebreak=1;
|
||||||
|
|
||||||
|
$pdf->startTransaction();
|
||||||
|
pdf_writelinedesc($pdf,$object,$i,$outputlangs,$this->posxtva-$curX,3,$curX,$curY,$hideref,$hidedesc,1);
|
||||||
|
$pageposafter=$pdf->getPage();
|
||||||
|
if ($pageposafter > $pageposbefore) // There is a pagebreak
|
||||||
|
{
|
||||||
|
$pdf->rollbackTransaction(true);
|
||||||
|
$pageposafter=$pageposbefore;
|
||||||
|
//print $pageposafter.'-'.$pageposbefore;exit;
|
||||||
|
$pdf->setPageOrientation('', 1, $heightforfooter); // The only function to edit the bottom margin of current page to set it.
|
||||||
|
pdf_writelinedesc($pdf,$object,$i,$outputlangs,$this->posxtva-$curX,4,$curX,$curY,$hideref,$hidedesc);
|
||||||
|
$posyafter=$pdf->GetY();
|
||||||
|
if ($posyafter > ($this->page_hauteur - ($heightforfooter+$heightforfreetext+$heightforinfotot))) // There is no space left for total+free text
|
||||||
|
{
|
||||||
|
if ($i == ($nblignes-1)) // No more lines, and no space left to show total, so we create a new page
|
||||||
|
{
|
||||||
|
$pdf->AddPage('','',true);
|
||||||
|
if (! empty($tplidx)) $pdf->useTemplate($tplidx);
|
||||||
|
if (empty($conf->global->MAIN_PDF_DONOTREPEAT_HEAD)) $this->_pagehead($pdf, $object, 0, $outputlangs);
|
||||||
|
$pdf->setPage($pageposafter+1);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
// We found a page break
|
||||||
|
$showpricebeforepagebreak=0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else // No pagebreak
|
||||||
|
{
|
||||||
|
$pdf->commitTransaction();
|
||||||
|
}
|
||||||
|
|
||||||
$nexY = $pdf->GetY();
|
$nexY = $pdf->GetY();
|
||||||
$pageposafter=$pdf->getPage();
|
$pageposafter=$pdf->getPage();
|
||||||
$pdf->setPage($pageposbefore);
|
$pdf->setPage($pageposbefore);
|
||||||
@ -288,7 +329,7 @@ class pdf_canelle extends ModelePDFSuppliersInvoices
|
|||||||
$pdf->setPageOrientation('', 1, 0); // The only function to edit the bottom margin of current page to set it.
|
$pdf->setPageOrientation('', 1, 0); // The only function to edit the bottom margin of current page to set it.
|
||||||
|
|
||||||
// We suppose that a too long description is moved completely on next page
|
// We suppose that a too long description is moved completely on next page
|
||||||
if ($pageposafter > $pageposbefore) {
|
if ($pageposafter > $pageposbefore && empty($showpricebeforepagebreak)) {
|
||||||
$pdf->setPage($pageposafter); $curY = $tab_top_newpage;
|
$pdf->setPage($pageposafter); $curY = $tab_top_newpage;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -299,7 +340,7 @@ class pdf_canelle extends ModelePDFSuppliersInvoices
|
|||||||
{
|
{
|
||||||
$vat_rate = pdf_getlinevatrate($object, $i, $outputlangs, $hidedetails);
|
$vat_rate = pdf_getlinevatrate($object, $i, $outputlangs, $hidedetails);
|
||||||
$pdf->SetXY($this->posxtva, $curY);
|
$pdf->SetXY($this->posxtva, $curY);
|
||||||
$pdf->MultiCell($this->posxup-$this->posxtva-0.8, 3, $vat_rate, 0, 'R');
|
$pdf->MultiCell($this->posxup-$this->posxtva-1, 3, $vat_rate, 0, 'R');
|
||||||
}
|
}
|
||||||
|
|
||||||
// Unit price before discount
|
// Unit price before discount
|
||||||
@ -320,7 +361,7 @@ class pdf_canelle extends ModelePDFSuppliersInvoices
|
|||||||
// Total HT line
|
// Total HT line
|
||||||
$total_excl_tax = pdf_getlinetotalexcltax($object, $i, $outputlangs);
|
$total_excl_tax = pdf_getlinetotalexcltax($object, $i, $outputlangs);
|
||||||
$pdf->SetXY($this->postotalht, $curY);
|
$pdf->SetXY($this->postotalht, $curY);
|
||||||
$pdf->MultiCell(26, 3, $total_excl_tax, 0, 'R', 0);
|
$pdf->MultiCell($this->page_largeur-$this->marge_droite-$this->postotalht, 3, $total_excl_tax, 0, 'R', 0);
|
||||||
|
|
||||||
// Collecte des totaux par valeur de tva dans $this->tva["taux"]=total_tva
|
// Collecte des totaux par valeur de tva dans $this->tva["taux"]=total_tva
|
||||||
$tvaligne=$object->lines[$i]->total_tva;
|
$tvaligne=$object->lines[$i]->total_tva;
|
||||||
@ -366,6 +407,7 @@ class pdf_canelle extends ModelePDFSuppliersInvoices
|
|||||||
$pagenb++;
|
$pagenb++;
|
||||||
$pdf->setPage($pagenb);
|
$pdf->setPage($pagenb);
|
||||||
$pdf->setPageOrientation('', 1, 0); // The only function to edit the bottom margin of current page to set it.
|
$pdf->setPageOrientation('', 1, 0); // The only function to edit the bottom margin of current page to set it.
|
||||||
|
if (empty($conf->global->MAIN_PDF_DONOTREPEAT_HEAD)) $this->_pagehead($pdf, $object, 0, $outputlangs);
|
||||||
}
|
}
|
||||||
if (isset($object->lines[$i+1]->pagebreak) && $object->lines[$i+1]->pagebreak)
|
if (isset($object->lines[$i+1]->pagebreak) && $object->lines[$i+1]->pagebreak)
|
||||||
{
|
{
|
||||||
@ -382,6 +424,7 @@ class pdf_canelle extends ModelePDFSuppliersInvoices
|
|||||||
$pdf->AddPage();
|
$pdf->AddPage();
|
||||||
if (! empty($tplidx)) $pdf->useTemplate($tplidx);
|
if (! empty($tplidx)) $pdf->useTemplate($tplidx);
|
||||||
$pagenb++;
|
$pagenb++;
|
||||||
|
if (empty($conf->global->MAIN_PDF_DONOTREPEAT_HEAD)) $this->_pagehead($pdf, $object, 0, $outputlangs);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -1,5 +1,5 @@
|
|||||||
<?php
|
<?php
|
||||||
/* Copyright (C) 2004-2013 Laurent Destailleur <eldy@users.sourceforge.net>
|
/* Copyright (C) 2004-2014 Laurent Destailleur <eldy@users.sourceforge.net>
|
||||||
* Copyright (C) 2005-2011 Regis Houssin <regis.houssin@capnetworks.com>
|
* Copyright (C) 2005-2011 Regis Houssin <regis.houssin@capnetworks.com>
|
||||||
* Copyright (C) 2007 Franky Van Liedekerke <franky.van.liedekerke@telenet.be>
|
* Copyright (C) 2007 Franky Van Liedekerke <franky.van.liedekerke@telenet.be>
|
||||||
* Copyright (C) 2010-2013 Juanjo Menent <jmenent@2byte.es>
|
* Copyright (C) 2010-2013 Juanjo Menent <jmenent@2byte.es>
|
||||||
@ -110,7 +110,7 @@ class pdf_muscadet extends ModelePDFSuppliersOrders
|
|||||||
$this->posxdiscount=162;
|
$this->posxdiscount=162;
|
||||||
$this->postotalht=174;
|
$this->postotalht=174;
|
||||||
//if (! empty($conf->global->MAIN_GENERATE_DOCUMENTS_WITHOUT_VAT)) $this->posxtva=$this->posxup;
|
//if (! empty($conf->global->MAIN_GENERATE_DOCUMENTS_WITHOUT_VAT)) $this->posxtva=$this->posxup;
|
||||||
$this->posxpicture=$this->posxtva - 16; // width of images
|
$this->posxpicture=$this->posxtva - (empty($conf->global->MAIN_DOCUMENTS_WITH_PICTURE_WIDTH)?16:$conf->global->MAIN_DOCUMENTS_WITH_PICTURE_WIDTH); // width of images
|
||||||
if ($this->page_largeur < 210) // To work with US executive format
|
if ($this->page_largeur < 210) // To work with US executive format
|
||||||
{
|
{
|
||||||
$this->posxpicture-=20;
|
$this->posxpicture-=20;
|
||||||
@ -233,6 +233,15 @@ class pdf_muscadet extends ModelePDFSuppliersOrders
|
|||||||
$this->atleastonediscount++;
|
$this->atleastonediscount++;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
if (empty($this->atleastonediscount))
|
||||||
|
{
|
||||||
|
$this->posxpicture+=($this->postotalht - $this->posxdiscount);
|
||||||
|
$this->posxtva+=($this->postotalht - $this->posxdiscount);
|
||||||
|
$this->posxup+=($this->postotalht - $this->posxdiscount);
|
||||||
|
$this->posxqty+=($this->postotalht - $this->posxdiscount);
|
||||||
|
$this->posxdiscount+=($this->postotalht - $this->posxdiscount);
|
||||||
|
//$this->postotalht;
|
||||||
|
}
|
||||||
|
|
||||||
// New page
|
// New page
|
||||||
$pdf->AddPage();
|
$pdf->AddPage();
|
||||||
@ -307,7 +316,7 @@ class pdf_muscadet extends ModelePDFSuppliersOrders
|
|||||||
$pdf->AddPage('','',true);
|
$pdf->AddPage('','',true);
|
||||||
if (! empty($tplidx)) $pdf->useTemplate($tplidx);
|
if (! empty($tplidx)) $pdf->useTemplate($tplidx);
|
||||||
if (empty($conf->global->MAIN_PDF_DONOTREPEAT_HEAD)) $this->_pagehead($pdf, $object, 0, $outputlangs);
|
if (empty($conf->global->MAIN_PDF_DONOTREPEAT_HEAD)) $this->_pagehead($pdf, $object, 0, $outputlangs);
|
||||||
$pdf->setPage($pagenb+1);
|
$pdf->setPage($pageposafter+1);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user