dolibarr 20.0.2
pdf_sponge Class Reference

Class to manage PDF invoice template sponge. More...

Inheritance diagram for pdf_sponge:
Collaboration diagram for pdf_sponge:

Public Member Functions

 __construct ($db)
 Constructor.
 
 write_file ($object, $outputlangs, $srctemplatepath='', $hidedetails=0, $hidedesc=0, $hideref=0)
 Function to build pdf onto disk.
 
 drawPaymentsTable (&$pdf, $object, $posy, $outputlangs)
 Show payments table.
 
 defineColumnField ($object, $outputlangs, $hidedetails=0, $hidedesc=0, $hideref=0)
 Define Array Column Field.
 
- Public Member Functions inherited from ModelePDFFactures
 addBottomQRInvoice (TCPDF $pdf, Facture $object, Translate $langs)
 Add SwissQR invoice at bottom of page 1.
 
- Public Member Functions inherited from CommonDocGenerator
 get_substitutionarray_user ($user, $outputlangs)
 Define array with couple substitution key => substitution value.
 
 getSubstitutionarrayMember ($member, $outputlangs)
 Define array with couple substitution key => substitution value.
 
 get_substitutionarray_mysoc ($mysoc, $outputlangs)
 Define array with couple substitution key => substitution value.
 
 get_substitutionarray_thirdparty ($object, $outputlangs, $array_key='company')
 Define array with couple substitution key => substitution value For example {company_name}, {company_name_alias}.
 
 get_substitutionarray_contact ($object, $outputlangs, $array_key='object')
 Define array with couple substitution key => substitution value.
 
 get_substitutionarray_other ($outputlangs)
 Define array with couple substitution key => substitution value.
 
 get_substitutionarray_lines ($line, $outputlangs, $linenumber=0)
 Define array with couple substitution key => substitution value Note that vars into substitutions array are formatted.
 
 get_substitutionarray_shipment ($object, $outputlangs, $array_key='object')
 Define array with couple substitution key => substitution value Note that vars into substitutions array are formatted.
 
 get_substitutionarray_each_var_object (&$object, $outputlangs, $recursive=1)
 Define array with couple substitution key => substitution value.
 
 fill_substitutionarray_with_extrafields ($object, $array_to_fill, $extrafields, $array_key, $outputlangs)
 Fill array with couple extrafield key => extrafield value Note that vars into substitutions array are formatted.
 
 printRect ($pdf, $x, $y, $l, $h, $hidetop=0, $hidebottom=0)
 Rect pdf.
 
 columnSort ($a, $b)
 uasort callback function to Sort columns fields
 
 prepareArrayColumnField ($object, $outputlangs, $hidedetails=0, $hidedesc=0, $hideref=0)
 Prepare Array Column Field.
 
 getColumnContentWidth ($colKey)
 get column content width from column key
 
 getColumnContentXStart ($colKey)
 get column content X (abscissa) left position from column key
 
 getColumnRank ($colKey)
 get column position rank from column key
 
 insertNewColumnDef ($newColKey, $defArray, $targetCol='', $insertAfterTarget=false)
 get column position rank from column key
 
 printStdColumnContent ($pdf, &$curY, $colKey, $columnText='')
 print standard column content
 
 printColDescContent ($pdf, &$curY, $colKey, $object, $i, $outputlangs, $hideref=0, $hidedesc=0, $issupplierline=0)
 print description column content
 
 getExtrafieldContent ($object, $extrafieldKey, $outputlangs=null)
 get extrafield content for pdf writeHtmlCell compatibility usage for PDF line columns and object note block
 
 getColumnStatus ($colKey)
 get column status from column key
 
 pdfTabTitles (&$pdf, $tab_top, $tab_height, $outputlangs, $hidetop=0)
 Print standard column content.
 
 defineColumnExtrafield ($object, $outputlangs, $hidedetails=0)
 Define Array Column Field for extrafields.
 

Static Public Member Functions

static liste_modeles ($db, $maxfilenamelength=0)
 Return list of active generation modules.
 

Protected Member Functions

 drawInfoTable (&$pdf, $object, $posy, $outputlangs, $outputlangsbis)
 Show miscellaneous information (payment mode, payment term, ...)
 
 drawTotalTable (&$pdf, $object, $deja_regle, $posy, $outputlangs, $outputlangsbis)
 Show total to pay.
 
 _tableau (&$pdf, $tab_top, $tab_height, $nexY, $outputlangs, $hidetop=0, $hidebottom=0, $currency='', $outputlangsbis=null)
 Show table for lines.
 
 _pagehead (&$pdf, $object, $showaddress, $outputlangs, $outputlangsbis=null)
 Show top header of page.
 
 _pagefoot (&$pdf, $object, $outputlangs, $hidefreetext=0, $heightforqrinvoice=0)
 Show footer of page.
 
- Protected Member Functions inherited from ModelePDFFactures
 getHeightForQRInvoice (int $pagenbr, Facture $object, Translate $langs)
 Get the height for bottom-page QR invoice in mm, depending on the page number.
 

Detailed Description

Class to manage PDF invoice template sponge.

Definition at line 47 of file pdf_sponge.modules.php.

Constructor & Destructor Documentation

◆ __construct()

pdf_sponge::__construct ( $db)

Constructor.

Parameters
DoliDB$dbDatabase handler

Reimplemented from CommonDocGenerator.

Definition at line 127 of file pdf_sponge.modules.php.

References description, getDolGlobalInt(), name, pdf_getFormat(), and type.

Member Function Documentation

◆ _pagefoot()

pdf_sponge::_pagefoot ( & $pdf,
$object,
$outputlangs,
$hidefreetext = 0,
$heightforqrinvoice = 0 )
protected

Show footer of page.

Need this->emetteur object

Parameters
TCPDF$pdfPDF
Facture$objectObject to show
Translate$outputlangsObject lang for output
int$hidefreetext1=Hide free text
int$heightforqrinvoiceHeight for QR invoices
Returns
int Return height of bottom margin including footer text

Definition at line 2504 of file pdf_sponge.modules.php.

References $object, getDolGlobalInt(), and pdf_pagefoot().

Referenced by drawTotalTable(), and write_file().

◆ _pagehead()

pdf_sponge::_pagehead ( & $pdf,
$object,
$showaddress,
$outputlangs,
$outputlangsbis = null )
protected

Show top header of page.

This include the logo, ref and address blocks

Parameters
TCPDF$pdfObject PDF
Facture$objectObject to show
int$showaddress0=no, 1=yes (usually set to 1 for first page, and 0 for next pages)
Translate$outputlangsObject lang for output
Translate$outputlangsbisObject lang for output bis
Returns
array top shift of linked object lines

Definition at line 2108 of file pdf_sponge.modules.php.

References $object, dol_print_date(), dol_trunc(), getDolGlobalInt(), getDolGlobalString(), pdf_build_address(), pdf_getHeightForLogo(), pdf_getPDFFontSize(), pdf_pagehead(), pdf_writeLinkedObjects(), and pdfBuildThirdpartyName().

Referenced by drawTotalTable(), and write_file().

◆ _tableau()

pdf_sponge::_tableau ( & $pdf,
$tab_top,
$tab_height,
$nexY,
$outputlangs,
$hidetop = 0,
$hidebottom = 0,
$currency = '',
$outputlangsbis = null )
protected

Show table for lines.

Parameters
TCPDF$pdfObject PDF
float | int$tab_topTop position of table
float | int$tab_heightHeight of table (rectangle)
int$nexYY (not used)
Translate$outputlangsLangs object
int$hidetop1=Hide top bar of array and title, 0=Hide nothing, -1=Hide only title
int$hidebottomHide bottom bar of array
string$currencyCurrency code
Translate$outputlangsbisLangs object bis
Returns
void

Definition at line 2044 of file pdf_sponge.modules.php.

References getDolGlobalInt(), getDolGlobalString(), pdf_getPDFFontSize(), CommonDocGenerator\pdfTabTitles(), and CommonDocGenerator\printRect().

Referenced by write_file().

◆ defineColumnField()

pdf_sponge::defineColumnField ( $object,
$outputlangs,
$hidedetails = 0,
$hidedesc = 0,
$hideref = 0 )

Define Array Column Field.

Parameters
Facture$objectcommon object
Translate$outputlangslangs
int$hidedetailsDo not show line details
int$hidedescDo not show desc
int$hiderefDo not show ref
Returns
void

Reimplemented from CommonDocGenerator.

Definition at line 2520 of file pdf_sponge.modules.php.

References $object, CommonDocGenerator\defineColumnExtrafield(), dol_string_nohtmltag(), dol_strlen(), getDolGlobalInt(), getDolGlobalString(), pdf_getlineupexcltax(), and setEventMessages().

◆ drawInfoTable()

pdf_sponge::drawInfoTable ( & $pdf,
$object,
$posy,
$outputlangs,
$outputlangsbis )
protected

Show miscellaneous information (payment mode, payment term, ...)

Parameters
TCPDF$pdfObject PDF
Facture$objectObject to show
int$posyY
Translate$outputlangsLangs object
Translate$outputlangsbisObject lang for output bis
Returns
int Pos y

Definition at line 1229 of file pdf_sponge.modules.php.

References $object, dol_htmlentitiesbr(), dol_trunc(), getDolGlobalInt(), getDolGlobalString(), pdf_bank(), pdf_getPDFFontSize(), and Facture\STATUS_DRAFT.

Referenced by write_file().

◆ drawPaymentsTable()

pdf_sponge::drawPaymentsTable ( & $pdf,
$object,
$posy,
$outputlangs )

Show payments table.

Parameters
TCPDF$pdfObject PDF
Facture$objectObject invoice
int$posyPosition y in PDF
Translate$outputlangsObject langs for output
Returns
int Return integer <0 if KO, >0 if OK

Definition at line 1084 of file pdf_sponge.modules.php.

References $object, dol_print_date(), getDolGlobalString(), pdf_getPDFFontSize(), and price().

Referenced by write_file().

◆ drawTotalTable()

pdf_sponge::drawTotalTable ( & $pdf,
$object,
$deja_regle,
$posy,
$outputlangs,
$outputlangsbis )
protected

Show total to pay.

Parameters
TCPDF$pdfObject PDF
Facture$objectObject invoice
int$deja_regleAmount already paid (in the currency of invoice)
int$posyPosition depart
Translate$outputlangsObject langs
Translate$outputlangsbisObject lang for output bis
Returns
int Position pour suite

Definition at line 1472 of file pdf_sponge.modules.php.

References $object, _pagefoot(), _pagehead(), dol_print_date(), getDolGlobalInt(), getDolGlobalString(), ModelePDFFactures\getHeightForQRInvoice(), pdf_getPDFFontSize(), pdfGetLineTotalDiscountAmount(), price(), price2num(), Facture\TYPE_CREDIT_NOTE, and vatrate().

Referenced by write_file().

◆ liste_modeles()

static pdf_sponge::liste_modeles ( $db,
$maxfilenamelength = 0 )
static

Return list of active generation modules.

Parameters
DoliDB$dbDatabase handler
integer$maxfilenamelengthMax length of value to show
Returns
array List of templates

Reimplemented from ModelePDFFactures.

Definition at line 2023 of file pdf_sponge.modules.php.

◆ write_file()

pdf_sponge::write_file ( $object,
$outputlangs,
$srctemplatepath = '',
$hidedetails = 0,
$hidedesc = 0,
$hideref = 0 )

Function to build pdf onto disk.

Parameters
Facture$objectObject to generate
Translate$outputlangsLang output object
string$srctemplatepathFull path of source filename for generator using a template file
int$hidedetailsDo not show line details
int$hidedescDo not show desc
int$hiderefDo not show ref
Returns
int 1=OK, 0=KO

Definition at line 197 of file pdf_sponge.modules.php.

References $object, _pagefoot(), _pagehead(), _tableau(), ModelePDFFactures\addBottomQRInvoice(), complete_substitutions_array(), convertBackOfficeMediasLinksToPublicLinks(), dol_concatdesc(), dol_htmlentitiesbr(), dol_mkdir(), dol_sanitizeFileName(), dol_syslog(), dolChmod(), drawInfoTable(), drawPaymentsTable(), drawTotalTable(), get_exdir(), CommonDocGenerator\getColumnContentXStart(), CommonDocGenerator\getColumnStatus(), getCountry(), getDolGlobalInt(), getDolGlobalString(), CommonDocGenerator\getExtrafieldContent(), ModelePDFFactures\getHeightForQRInvoice(), getLocalTaxesFromRate(), make_substitutions(), pdf_getInstance(), pdf_getlineprogress(), pdf_getlineqty(), pdf_getlineremisepercent(), pdf_getlinetotalexcltax(), pdf_getlinetotalwithtax(), pdf_getlineunit(), pdf_getlineupexcltax(), pdf_getlinevatrate(), pdf_getPDFFont(), pdf_getPDFFontSize(), pdf_getSizeForImage(), pdf_getSubstitutionArray(), CommonDocGenerator\pdfTabTitles(), CommonDocGenerator\prepareArrayColumnField(), CommonDocGenerator\printColDescContent(), CommonDocGenerator\printStdColumnContent(), Product\TYPE_PRODUCT, and Product\TYPE_SERVICE.


The documentation for this class was generated from the following file: