Fuck git. Restore another lost commit.
This commit is contained in:
parent
bbeab3e098
commit
e3d07621eb
@ -80,8 +80,10 @@ function pdf_getInstance($format='',$metric='mm',$pagetype='P')
|
|||||||
if (! empty($conf->global->MAIN_USE_FPDF) && ! empty($conf->global->MAIN_DISABLE_FPDI))
|
if (! empty($conf->global->MAIN_USE_FPDF) && ! empty($conf->global->MAIN_DISABLE_FPDI))
|
||||||
return "Error MAIN_USE_FPDF and MAIN_DISABLE_FPDI can't be set together";
|
return "Error MAIN_USE_FPDF and MAIN_DISABLE_FPDI can't be set together";
|
||||||
|
|
||||||
// We use by default TCPDF
|
// We use by default TCPDF else FPDF
|
||||||
if (empty($conf->global->MAIN_USE_FPDF)) require_once TCPDF_PATH.'tcpdf.php';
|
if (empty($conf->global->MAIN_USE_FPDF)) require_once TCPDF_PATH.'tcpdf.php';
|
||||||
|
else require_once FPDF_PATH.'fpdf.php';
|
||||||
|
|
||||||
// We need to instantiate fpdi object (instead of tcpdf) to use merging features. But we can disable it.
|
// We need to instantiate fpdi object (instead of tcpdf) to use merging features. But we can disable it.
|
||||||
if (empty($conf->global->MAIN_DISABLE_FPDI)) require_once FPDI_PATH.'fpdi.php';
|
if (empty($conf->global->MAIN_DISABLE_FPDI)) require_once FPDI_PATH.'fpdi.php';
|
||||||
|
|
||||||
@ -90,7 +92,7 @@ function pdf_getInstance($format='',$metric='mm',$pagetype='P')
|
|||||||
//$metric=$arrayformat['unit'];
|
//$metric=$arrayformat['unit'];
|
||||||
|
|
||||||
// Protection et encryption du pdf
|
// Protection et encryption du pdf
|
||||||
if (! empty($conf->global->PDF_SECURITY_ENCRYPTION))
|
if (empty($conf->global->MAIN_USE_FPDF) && ! empty($conf->global->PDF_SECURITY_ENCRYPTION))
|
||||||
{
|
{
|
||||||
/* Permission supported by TCPDF
|
/* Permission supported by TCPDF
|
||||||
- print : Print the document;
|
- print : Print the document;
|
||||||
@ -103,20 +105,11 @@ function pdf_getInstance($format='',$metric='mm',$pagetype='P')
|
|||||||
- print-high : Print the document to a representation from which a faithful digital copy of the PDF content could be generated. When this is not set, printing is limited to a low-level representation of the appearance, possibly of degraded quality.
|
- print-high : Print the document to a representation from which a faithful digital copy of the PDF content could be generated. When this is not set, printing is limited to a low-level representation of the appearance, possibly of degraded quality.
|
||||||
- owner : (inverted logic - only for public-key) when set permits change of encryption and enables all other permissions.
|
- owner : (inverted logic - only for public-key) when set permits change of encryption and enables all other permissions.
|
||||||
*/
|
*/
|
||||||
if (! empty($conf->global->MAIN_USE_FPDF))
|
if (class_exists('FPDI')) $pdf = new FPDI($pagetype,$metric,$format);
|
||||||
{
|
else $pdf = new TCPDF($pagetype,$metric,$format);
|
||||||
require_once FPDI_PATH.'fpdi_protection.php';
|
// For TCPDF, we specify permission we want to block
|
||||||
$pdf = new FPDI_Protection($pagetype,$metric,$format);
|
$pdfrights = array('modify','copy');
|
||||||
// For FPDF, we specify permission we want to open
|
|
||||||
$pdfrights = array('print');
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
if (class_exists('FPDI')) $pdf = new FPDI($pagetype,$metric,$format);
|
|
||||||
else $pdf = new TCPDF($pagetype,$metric,$format);
|
|
||||||
// For TCPDF, we specify permission we want to block
|
|
||||||
$pdfrights = array('modify','copy');
|
|
||||||
}
|
|
||||||
$pdfuserpass = ''; // Mot de passe pour l'utilisateur final
|
$pdfuserpass = ''; // Mot de passe pour l'utilisateur final
|
||||||
$pdfownerpass = NULL; // Mot de passe du proprietaire, cree aleatoirement si pas defini
|
$pdfownerpass = NULL; // Mot de passe du proprietaire, cree aleatoirement si pas defini
|
||||||
$pdf->SetProtection($pdfrights,$pdfuserpass,$pdfownerpass);
|
$pdf->SetProtection($pdfrights,$pdfuserpass,$pdfownerpass);
|
||||||
@ -126,9 +119,43 @@ function pdf_getInstance($format='',$metric='mm',$pagetype='P')
|
|||||||
if (class_exists('FPDI')) $pdf = new FPDI($pagetype,$metric,$format);
|
if (class_exists('FPDI')) $pdf = new FPDI($pagetype,$metric,$format);
|
||||||
else $pdf = new TCPDF($pagetype,$metric,$format);
|
else $pdf = new TCPDF($pagetype,$metric,$format);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// If we use FPDF class, we may need to add method writeHTMLCell
|
||||||
|
if (! empty($conf->global->MAIN_USE_FPDF) && ! method_exists($pdf, 'writeHTMLCell'))
|
||||||
|
{
|
||||||
|
// Declare here a class to overwrite FPDFI to add method writeHTMLCell
|
||||||
|
/**
|
||||||
|
* This class if a enhanced FPDI class that support method writeHTMLCell
|
||||||
|
*/
|
||||||
|
class FPDI_DolExtended extends FPDI
|
||||||
|
{
|
||||||
|
public function __call($method, $args)
|
||||||
|
{
|
||||||
|
if (isset($this->$method)) {
|
||||||
|
$func = $this->$method;
|
||||||
|
$func($args);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public function writeHTMLCell($w, $h, $x, $y, $html = '', $border = 0, $ln = 0, $fill = false, $reseth = true, $align = '', $autopadding = true)
|
||||||
|
{
|
||||||
|
$this->SetXY($x,$y);
|
||||||
|
$val=str_replace('<br>',"\n",$html);
|
||||||
|
$val=dol_string_nohtmltag($val,false,'ISO-8859-1');
|
||||||
|
//print 'eee'.$val;exit;
|
||||||
|
$this->MultiCell($w,$h,$val,$border,$align,$fill);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
$pdf2=new FPDI_DolExtended($pagetype,$metric,$format);
|
||||||
|
unset($pdf);
|
||||||
|
$pdf=$pdf2;
|
||||||
|
}
|
||||||
|
|
||||||
return $pdf;
|
return $pdf;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Return font name to use for PDF generation
|
* Return font name to use for PDF generation
|
||||||
*
|
*
|
||||||
@ -691,7 +718,7 @@ function pdf_pagefoot(&$pdf,$outputlangs,$paramfreetext,$fromcompany,$marge_bass
|
|||||||
{
|
{
|
||||||
$pdf->SetFont('','B',7);
|
$pdf->SetFont('','B',7);
|
||||||
$pdf->SetXY($dims['lm'],-$posy);
|
$pdf->SetXY($dims['lm'],-$posy);
|
||||||
$pdf->MultiCell(200, 2, $line1, 0, 'C', 0);
|
$pdf->MultiCell($dims['wk']-$dims['rm'], 2, $line1, 0, 'C', 0);
|
||||||
$posy-=3;
|
$posy-=3;
|
||||||
$pdf->SetFont('','',7);
|
$pdf->SetFont('','',7);
|
||||||
}
|
}
|
||||||
@ -700,7 +727,7 @@ function pdf_pagefoot(&$pdf,$outputlangs,$paramfreetext,$fromcompany,$marge_bass
|
|||||||
{
|
{
|
||||||
$pdf->SetFont('','B',7);
|
$pdf->SetFont('','B',7);
|
||||||
$pdf->SetXY($dims['lm'],-$posy);
|
$pdf->SetXY($dims['lm'],-$posy);
|
||||||
$pdf->MultiCell(200, 2, $line2, 0, 'C', 0);
|
$pdf->MultiCell($dims['wk']-$dims['rm'], 2, $line2, 0, 'C', 0);
|
||||||
$posy-=3;
|
$posy-=3;
|
||||||
$pdf->SetFont('','',7);
|
$pdf->SetFont('','',7);
|
||||||
}
|
}
|
||||||
@ -708,22 +735,23 @@ function pdf_pagefoot(&$pdf,$outputlangs,$paramfreetext,$fromcompany,$marge_bass
|
|||||||
if (! empty($line3))
|
if (! empty($line3))
|
||||||
{
|
{
|
||||||
$pdf->SetXY($dims['lm'],-$posy);
|
$pdf->SetXY($dims['lm'],-$posy);
|
||||||
$pdf->MultiCell(200, 2, $line3, 0, 'C', 0);
|
$pdf->MultiCell($dims['wk']-$dims['rm'], 2, $line3, 0, 'C', 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (! empty($line4))
|
if (! empty($line4))
|
||||||
{
|
{
|
||||||
$posy-=3;
|
$posy-=3;
|
||||||
$pdf->SetXY($dims['lm'],-$posy);
|
$pdf->SetXY($dims['lm'],-$posy);
|
||||||
$pdf->MultiCell(200, 2, $line4, 0, 'C', 0);
|
$pdf->MultiCell($dims['wk']-$dims['rm'], 2, $line4, 0, 'C', 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Show page nb only on iso languages (so default Helvetica font)
|
// Show page nb only on iso languages (so default Helvetica font)
|
||||||
if (pdf_getPDFFont($outputlangs) == 'Helvetica')
|
if (pdf_getPDFFont($outputlangs) == 'Helvetica')
|
||||||
{
|
{
|
||||||
$pdf->SetXY(-20,-$posy);
|
$pdf->SetXY(-20,-$posy);
|
||||||
$pdf->MultiCell(11, 2, $pdf->PageNo().'/'.$pdf->getAliasNbPages(), 0, 'R', 0);
|
//print 'xxx'.$pdf->PageNo().'-'.$pdf->getAliasNbPages().'-'.$pdf->getAliasNumPage();exit;
|
||||||
//print 'xxx'.$pdf->getAliasNbPages().'-'.$pdf->getAliasNumPage();exit;
|
if (empty($conf->global->MAIN_USE_FPDF)) $pdf->MultiCell(11, 2, $pdf->PageNo().'/'.$pdf->getAliasNbPages(), 0, 'R', 0);
|
||||||
|
else $pdf->MultiCell(11, 2, $pdf->PageNo().'/{nb}', 0, 'R', 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
return $marginwithfooter;
|
return $marginwithfooter;
|
||||||
|
|||||||
@ -207,6 +207,7 @@ define('MAIN_DB_PREFIX',$dolibarr_main_db_prefix);
|
|||||||
// Path to root libraries
|
// Path to root libraries
|
||||||
if (! defined('ADODB_PATH')) { define('ADODB_PATH', (!isset($dolibarr_lib_ADODB_PATH))?DOL_DOCUMENT_ROOT.'/includes/adodbtime/':(empty($dolibarr_lib_ADODB_PATH)?'':$dolibarr_lib_ADODB_PATH.'/')); }
|
if (! defined('ADODB_PATH')) { define('ADODB_PATH', (!isset($dolibarr_lib_ADODB_PATH))?DOL_DOCUMENT_ROOT.'/includes/adodbtime/':(empty($dolibarr_lib_ADODB_PATH)?'':$dolibarr_lib_ADODB_PATH.'/')); }
|
||||||
if (! defined('TCPDF_PATH')) { define('TCPDF_PATH', (!isset($dolibarr_lib_TCPDF_PATH))?DOL_DOCUMENT_ROOT.'/includes/tcpdf/':(empty($dolibarr_lib_TCPDF_PATH)?'':$dolibarr_lib_TCPDF_PATH.'/')); }
|
if (! defined('TCPDF_PATH')) { define('TCPDF_PATH', (!isset($dolibarr_lib_TCPDF_PATH))?DOL_DOCUMENT_ROOT.'/includes/tcpdf/':(empty($dolibarr_lib_TCPDF_PATH)?'':$dolibarr_lib_TCPDF_PATH.'/')); }
|
||||||
|
if (! defined('FPDF_PATH')) { define('FPDF_PATH', (!isset($dolibarr_lib_FPDF_PATH))?DOL_DOCUMENT_ROOT.'/includes/fpdf/':(empty($dolibarr_lib_FPDF_PATH)?'':$dolibarr_lib_FPDF_PATH.'/')); } // Used only for package that can't include tcpdf
|
||||||
if (! defined('FPDI_PATH')) { define('FPDI_PATH', (!isset($dolibarr_lib_FPDI_PATH))?DOL_DOCUMENT_ROOT.'/includes/fpdfi/':(empty($dolibarr_lib_FPDI_PATH)?'':$dolibarr_lib_FPDI_PATH.'/')); }
|
if (! defined('FPDI_PATH')) { define('FPDI_PATH', (!isset($dolibarr_lib_FPDI_PATH))?DOL_DOCUMENT_ROOT.'/includes/fpdfi/':(empty($dolibarr_lib_FPDI_PATH)?'':$dolibarr_lib_FPDI_PATH.'/')); }
|
||||||
if (! defined('NUSOAP_PATH')) { define('NUSOAP_PATH', (!isset($dolibarr_lib_NUSOAP_PATH))?DOL_DOCUMENT_ROOT.'/includes/nusoap/lib/':(empty($dolibarr_lib_NUSOAP_PATH)?'':$dolibarr_lib_NUSOAP_PATH.'/')); }
|
if (! defined('NUSOAP_PATH')) { define('NUSOAP_PATH', (!isset($dolibarr_lib_NUSOAP_PATH))?DOL_DOCUMENT_ROOT.'/includes/nusoap/lib/':(empty($dolibarr_lib_NUSOAP_PATH)?'':$dolibarr_lib_NUSOAP_PATH.'/')); }
|
||||||
if (! defined('PHPEXCEL_PATH')) { define('PHPEXCEL_PATH', (!isset($dolibarr_lib_PHPEXCEL_PATH))?DOL_DOCUMENT_ROOT.'/includes/phpexcel/':(empty($dolibarr_lib_PHPEXCEL_PATH)?'':$dolibarr_lib_PHPEXCEL_PATH.'/')); }
|
if (! defined('PHPEXCEL_PATH')) { define('PHPEXCEL_PATH', (!isset($dolibarr_lib_PHPEXCEL_PATH))?DOL_DOCUMENT_ROOT.'/includes/phpexcel/':(empty($dolibarr_lib_PHPEXCEL_PATH)?'':$dolibarr_lib_PHPEXCEL_PATH.'/')); }
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user