mirror of
https://github.com/Dolibarr/dolibarr.git
synced 2025-02-20 13:46:52 +01:00
Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into develop
This commit is contained in:
commit
c3f06059cb
|
|
@ -5298,12 +5298,6 @@ parameters:
|
|||
count: 1
|
||||
path: ../../../htdocs/compta/cashcontrol/report.php
|
||||
|
||||
-
|
||||
message: '#^Parameter \#2 \$addpercent of function vatrate expects bool, int given\.$#'
|
||||
identifier: argument.type
|
||||
count: 1
|
||||
path: ../../../htdocs/compta/cashcontrol/report.php
|
||||
|
||||
-
|
||||
message: '#^If condition is always true\.$#'
|
||||
identifier: if.alwaysTrue
|
||||
|
|
@ -11526,12 +11520,6 @@ parameters:
|
|||
count: 1
|
||||
path: ../../../htdocs/core/lib/order.lib.php
|
||||
|
||||
-
|
||||
message: '#^Parameter \#2 \$addpercent of function vatrate expects bool, int given\.$#'
|
||||
identifier: argument.type
|
||||
count: 3
|
||||
path: ../../../htdocs/core/lib/pdf.lib.php
|
||||
|
||||
-
|
||||
message: '#^Ternary operator condition is always false\.$#'
|
||||
identifier: ternary.alwaysFalse
|
||||
|
|
@ -12348,12 +12336,6 @@ parameters:
|
|||
count: 2
|
||||
path: ../../../htdocs/core/modules/commande/doc/doc_generic_order_odt.modules.php
|
||||
|
||||
-
|
||||
message: '#^Parameter \#2 \$addpercent of function vatrate expects bool, int given\.$#'
|
||||
identifier: argument.type
|
||||
count: 6
|
||||
path: ../../../htdocs/core/modules/commande/doc/pdf_einstein.modules.php
|
||||
|
||||
-
|
||||
message: '#^Parameter \#3 \$posy of method pdf_einstein\:\:_tableau_info\(\) expects int, float given\.$#'
|
||||
identifier: argument.type
|
||||
|
|
@ -12402,18 +12384,6 @@ parameters:
|
|||
count: 1
|
||||
path: ../../../htdocs/core/modules/commande/doc/pdf_eratosthene.modules.php
|
||||
|
||||
-
|
||||
message: '#^Parameter \#3 \$posy of method pdf_eratosthene\:\:drawInfoTable\(\) expects int, float given\.$#'
|
||||
identifier: argument.type
|
||||
count: 1
|
||||
path: ../../../htdocs/core/modules/commande/doc/pdf_eratosthene.modules.php
|
||||
|
||||
-
|
||||
message: '#^Parameter \#4 \$posy of method pdf_eratosthene\:\:drawTotalTable\(\) expects int, float given\.$#'
|
||||
identifier: argument.type
|
||||
count: 1
|
||||
path: ../../../htdocs/core/modules/commande/doc/pdf_eratosthene.modules.php
|
||||
|
||||
-
|
||||
message: '#^Property Commande\:\:\$availability \(string\) in isset\(\) is not nullable\.$#'
|
||||
identifier: isset.property
|
||||
|
|
@ -13026,24 +12996,12 @@ parameters:
|
|||
count: 1
|
||||
path: ../../../htdocs/core/modules/facture/doc/pdf_octopus.modules.php
|
||||
|
||||
-
|
||||
message: '#^Parameter \#2 \$addpercent of function vatrate expects bool, int given\.$#'
|
||||
identifier: argument.type
|
||||
count: 7
|
||||
path: ../../../htdocs/core/modules/facture/doc/pdf_octopus.modules.php
|
||||
|
||||
-
|
||||
message: '#^Parameter \#2 \$current_line of method pdf_octopus\:\:getInfosLineLastSituation\(\) expects FactureLigne, CommonInvoiceLine given\.$#'
|
||||
identifier: argument.type
|
||||
count: 1
|
||||
path: ../../../htdocs/core/modules/facture/doc/pdf_octopus.modules.php
|
||||
|
||||
-
|
||||
message: '#^Parameter \#3 \$posy of method pdf_octopus\:\:drawInfoTable\(\) expects int, float given\.$#'
|
||||
identifier: argument.type
|
||||
count: 1
|
||||
path: ../../../htdocs/core/modules/facture/doc/pdf_octopus.modules.php
|
||||
|
||||
-
|
||||
message: '#^Parameter \#3 \$tab_height of method pdf_octopus\:\:_tableFirstPage\(\) expects int, float given\.$#'
|
||||
identifier: argument.type
|
||||
|
|
@ -13056,12 +13014,6 @@ parameters:
|
|||
count: 3
|
||||
path: ../../../htdocs/core/modules/facture/doc/pdf_octopus.modules.php
|
||||
|
||||
-
|
||||
message: '#^Parameter \#4 \$posy of method pdf_octopus\:\:drawTotalTable\(\) expects int, float given\.$#'
|
||||
identifier: argument.type
|
||||
count: 1
|
||||
path: ../../../htdocs/core/modules/facture/doc/pdf_octopus.modules.php
|
||||
|
||||
-
|
||||
message: '#^Property CommonInvoice\:\:\$type \(int\) in isset\(\) is not nullable\.$#'
|
||||
identifier: isset.property
|
||||
|
|
@ -13224,24 +13176,6 @@ parameters:
|
|||
count: 1
|
||||
path: ../../../htdocs/core/modules/facture/doc/pdf_sponge.modules.php
|
||||
|
||||
-
|
||||
message: '#^Parameter \#2 \$addpercent of function vatrate expects bool, int given\.$#'
|
||||
identifier: argument.type
|
||||
count: 6
|
||||
path: ../../../htdocs/core/modules/facture/doc/pdf_sponge.modules.php
|
||||
|
||||
-
|
||||
message: '#^Parameter \#3 \$posy of method pdf_sponge\:\:drawInfoTable\(\) expects int, float given\.$#'
|
||||
identifier: argument.type
|
||||
count: 1
|
||||
path: ../../../htdocs/core/modules/facture/doc/pdf_sponge.modules.php
|
||||
|
||||
-
|
||||
message: '#^Parameter \#4 \$posy of method pdf_sponge\:\:drawTotalTable\(\) expects int, float given\.$#'
|
||||
identifier: argument.type
|
||||
count: 1
|
||||
path: ../../../htdocs/core/modules/facture/doc/pdf_sponge.modules.php
|
||||
|
||||
-
|
||||
message: '#^Property CommonInvoice\:\:\$type \(int\) in isset\(\) is not nullable\.$#'
|
||||
identifier: isset.property
|
||||
|
|
@ -13458,54 +13392,12 @@ parameters:
|
|||
count: 1
|
||||
path: ../../../htdocs/core/modules/fichinter/mod_pacific.php
|
||||
|
||||
-
|
||||
message: '#^Parameter \#3 \$tab_height of method pdf_standard_evaluation\:\:_tableau\(\) expects int, float given\.$#'
|
||||
identifier: argument.type
|
||||
count: 6
|
||||
path: ../../../htdocs/core/modules/hrm/doc/pdf_standard_evaluation.modules.php
|
||||
|
||||
-
|
||||
message: '#^Property CommonObject\:\:\$entity \(int\) in isset\(\) is not nullable\.$#'
|
||||
identifier: isset.property
|
||||
count: 2
|
||||
path: ../../../htdocs/core/modules/hrm/doc/pdf_standard_evaluation.modules.php
|
||||
|
||||
-
|
||||
message: '#^Property pdf_standard_evaluation\:\:\$posxnotes has no type specified\.$#'
|
||||
identifier: missingType.property
|
||||
count: 1
|
||||
path: ../../../htdocs/core/modules/hrm/doc/pdf_standard_evaluation.modules.php
|
||||
|
||||
-
|
||||
message: '#^Property pdf_standard_evaluation\:\:\$posxpiece has no type specified\.$#'
|
||||
identifier: missingType.property
|
||||
count: 1
|
||||
path: ../../../htdocs/core/modules/hrm/doc/pdf_standard_evaluation.modules.php
|
||||
|
||||
-
|
||||
message: '#^Property pdf_standard_evaluation\:\:\$posxrankemp has no type specified\.$#'
|
||||
identifier: missingType.property
|
||||
count: 1
|
||||
path: ../../../htdocs/core/modules/hrm/doc/pdf_standard_evaluation.modules.php
|
||||
|
||||
-
|
||||
message: '#^Property pdf_standard_evaluation\:\:\$posxrequiredrank has no type specified\.$#'
|
||||
identifier: missingType.property
|
||||
count: 1
|
||||
path: ../../../htdocs/core/modules/hrm/doc/pdf_standard_evaluation.modules.php
|
||||
|
||||
-
|
||||
message: '#^Property pdf_standard_evaluation\:\:\$posxresult has no type specified\.$#'
|
||||
identifier: missingType.property
|
||||
count: 1
|
||||
path: ../../../htdocs/core/modules/hrm/doc/pdf_standard_evaluation.modules.php
|
||||
|
||||
-
|
||||
message: '#^Property pdf_standard_evaluation\:\:\$posxskill has no type specified\.$#'
|
||||
identifier: missingType.property
|
||||
count: 1
|
||||
path: ../../../htdocs/core/modules/hrm/doc/pdf_standard_evaluation.modules.php
|
||||
|
||||
-
|
||||
message: '#^Ternary operator condition is always false\.$#'
|
||||
identifier: ternary.alwaysFalse
|
||||
|
|
@ -14664,12 +14556,6 @@ parameters:
|
|||
count: 1
|
||||
path: ../../../htdocs/core/modules/mrp/doc/pdf_vinci.modules.php
|
||||
|
||||
-
|
||||
message: '#^Parameter \#2 \$addpercent of function vatrate expects bool, int given\.$#'
|
||||
identifier: argument.type
|
||||
count: 3
|
||||
path: ../../../htdocs/core/modules/mrp/doc/pdf_vinci.modules.php
|
||||
|
||||
-
|
||||
message: '#^Parameter \#3 \$posy of method pdf_vinci\:\:_tableau_info\(\) expects int, float given\.$#'
|
||||
identifier: argument.type
|
||||
|
|
@ -15066,12 +14952,6 @@ parameters:
|
|||
count: 1
|
||||
path: ../../../htdocs/core/modules/propale/doc/pdf_azur.modules.php
|
||||
|
||||
-
|
||||
message: '#^Parameter \#2 \$addpercent of function vatrate expects bool, int given\.$#'
|
||||
identifier: argument.type
|
||||
count: 6
|
||||
path: ../../../htdocs/core/modules/propale/doc/pdf_azur.modules.php
|
||||
|
||||
-
|
||||
message: '#^Parameter \#3 \$posy of method pdf_azur\:\:_tableau_info\(\) expects int, float given\.$#'
|
||||
identifier: argument.type
|
||||
|
|
@ -15114,24 +14994,6 @@ parameters:
|
|||
count: 1
|
||||
path: ../../../htdocs/core/modules/propale/doc/pdf_cyan.modules.php
|
||||
|
||||
-
|
||||
message: '#^Parameter \#2 \$addpercent of function vatrate expects bool, int given\.$#'
|
||||
identifier: argument.type
|
||||
count: 5
|
||||
path: ../../../htdocs/core/modules/propale/doc/pdf_cyan.modules.php
|
||||
|
||||
-
|
||||
message: '#^Parameter \#3 \$posy of method pdf_cyan\:\:drawInfoTable\(\) expects int, float given\.$#'
|
||||
identifier: argument.type
|
||||
count: 1
|
||||
path: ../../../htdocs/core/modules/propale/doc/pdf_cyan.modules.php
|
||||
|
||||
-
|
||||
message: '#^Parameter \#4 \$posy of method pdf_cyan\:\:drawTotalTable\(\) expects int, float given\.$#'
|
||||
identifier: argument.type
|
||||
count: 1
|
||||
path: ../../../htdocs/core/modules/propale/doc/pdf_cyan.modules.php
|
||||
|
||||
-
|
||||
message: '#^Property CommonObject\:\:\$multicurrency_tx \(array\<float\>\|float\) in isset\(\) is not nullable\.$#'
|
||||
identifier: isset.property
|
||||
|
|
@ -15468,12 +15330,6 @@ parameters:
|
|||
count: 1
|
||||
path: ../../../htdocs/core/modules/stocktransfer/doc/pdf_eagle_proforma.modules.php
|
||||
|
||||
-
|
||||
message: '#^Parameter \#4 \$posy of method pdf_eagle_proforma\:\:drawTotalTable\(\) expects int, float given\.$#'
|
||||
identifier: argument.type
|
||||
count: 1
|
||||
path: ../../../htdocs/core/modules/stocktransfer/doc/pdf_eagle_proforma.modules.php
|
||||
|
||||
-
|
||||
message: '#^Property CommonDocGenerator\:\:\$cols \(array\<string, array\{rank\: int, width\: float\|int, status\: bool, title\: array\{textkey\: string, label\: string, align\: string, padding\: array\{float, float, float, float\}\}, content\: array\{align\: string, padding\: array\{float, float, float, float\}\}\}\>\) does not accept non\-empty\-array\<string, array\{rank\: 0, width\: false, status\: true, title\: array\{textkey\: ''Designation'', align\: ''L'', padding\: array\{0\.5, 1, 0\.5, 1\.5\}\}, content\: array\{align\: ''L'', padding\: array\{1, 0\.5, 1, 1\.5\}\}\}\|array\{rank\: int, width\: float\|int, status\: bool, title\: array\{textkey\: string, label\: string, align\: string, padding\: array\{float, float, float, float\}\}, content\: array\{align\: string, padding\: array\{float, float, float, float\}\}\}\>\.$#'
|
||||
identifier: assign.propertyType
|
||||
|
|
@ -15606,12 +15462,6 @@ parameters:
|
|||
count: 1
|
||||
path: ../../../htdocs/core/modules/supplier_invoice/doc/doc_generic_supplier_invoice_odt.modules.php
|
||||
|
||||
-
|
||||
message: '#^Parameter \#2 \$addpercent of function vatrate expects bool, int given\.$#'
|
||||
identifier: argument.type
|
||||
count: 3
|
||||
path: ../../../htdocs/core/modules/supplier_invoice/doc/pdf_canelle.modules.php
|
||||
|
||||
-
|
||||
message: '#^Parameter \#4 \$posy of method pdf_canelle\:\:_tableau_tot\(\) expects int, float given\.$#'
|
||||
identifier: argument.type
|
||||
|
|
@ -15690,12 +15540,6 @@ parameters:
|
|||
count: 1
|
||||
path: ../../../htdocs/core/modules/supplier_order/doc/pdf_cornas.modules.php
|
||||
|
||||
-
|
||||
message: '#^Parameter \#2 \$addpercent of function vatrate expects bool, int given\.$#'
|
||||
identifier: argument.type
|
||||
count: 3
|
||||
path: ../../../htdocs/core/modules/supplier_order/doc/pdf_cornas.modules.php
|
||||
|
||||
-
|
||||
message: '#^Parameter \#3 \$posy of method pdf_cornas\:\:_tableau_info\(\) expects int, float given\.$#'
|
||||
identifier: argument.type
|
||||
|
|
@ -15822,12 +15666,6 @@ parameters:
|
|||
count: 1
|
||||
path: ../../../htdocs/core/modules/supplier_order/doc/pdf_muscadet.modules.php
|
||||
|
||||
-
|
||||
message: '#^Parameter \#2 \$addpercent of function vatrate expects bool, int given\.$#'
|
||||
identifier: argument.type
|
||||
count: 3
|
||||
path: ../../../htdocs/core/modules/supplier_order/doc/pdf_muscadet.modules.php
|
||||
|
||||
-
|
||||
message: '#^Parameter \#3 \$posy of method pdf_muscadet\:\:_tableau_info\(\) expects int, float given\.$#'
|
||||
identifier: argument.type
|
||||
|
|
@ -15948,12 +15786,6 @@ parameters:
|
|||
count: 1
|
||||
path: ../../../htdocs/core/modules/supplier_proposal/doc/pdf_aurore.modules.php
|
||||
|
||||
-
|
||||
message: '#^Parameter \#2 \$addpercent of function vatrate expects bool, int given\.$#'
|
||||
identifier: argument.type
|
||||
count: 5
|
||||
path: ../../../htdocs/core/modules/supplier_proposal/doc/pdf_aurore.modules.php
|
||||
|
||||
-
|
||||
message: '#^Parameter \#5 \$w of function pdf_writelinedesc expects int, float given\.$#'
|
||||
identifier: argument.type
|
||||
|
|
@ -15978,12 +15810,6 @@ parameters:
|
|||
count: 1
|
||||
path: ../../../htdocs/core/modules/supplier_proposal/doc/pdf_zenith.modules.php
|
||||
|
||||
-
|
||||
message: '#^Parameter \#2 \$addpercent of function vatrate expects bool, int given\.$#'
|
||||
identifier: argument.type
|
||||
count: 3
|
||||
path: ../../../htdocs/core/modules/supplier_proposal/doc/pdf_zenith.modules.php
|
||||
|
||||
-
|
||||
message: '#^Parameter \#4 \$posy of method pdf_zenith\:\:_tableau_tot\(\) expects int, float given\.$#'
|
||||
identifier: argument.type
|
||||
|
|
@ -31344,12 +31170,6 @@ parameters:
|
|||
count: 1
|
||||
path: ../../../htdocs/takepos/printbox.php
|
||||
|
||||
-
|
||||
message: '#^Parameter \#2 \$addpercent of function vatrate expects bool, int given\.$#'
|
||||
identifier: argument.type
|
||||
count: 1
|
||||
path: ../../../htdocs/takepos/receipt.php
|
||||
|
||||
-
|
||||
message: '#^Right side of && is always true\.$#'
|
||||
identifier: booleanAnd.rightAlwaysTrue
|
||||
|
|
@ -31506,60 +31326,6 @@ parameters:
|
|||
count: 1
|
||||
path: ../../../htdocs/theme/eldy/style.css.php
|
||||
|
||||
-
|
||||
message: '#^Variable \$badgeDanger might not be defined\.$#'
|
||||
identifier: variable.undefined
|
||||
count: 3
|
||||
path: ../../../htdocs/theme/md/badges.inc.php
|
||||
|
||||
-
|
||||
message: '#^Variable \$badgeDark might not be defined\.$#'
|
||||
identifier: variable.undefined
|
||||
count: 3
|
||||
path: ../../../htdocs/theme/md/badges.inc.php
|
||||
|
||||
-
|
||||
message: '#^Variable \$badgeInfo might not be defined\.$#'
|
||||
identifier: variable.undefined
|
||||
count: 3
|
||||
path: ../../../htdocs/theme/md/badges.inc.php
|
||||
|
||||
-
|
||||
message: '#^Variable \$badgeLight might not be defined\.$#'
|
||||
identifier: variable.undefined
|
||||
count: 3
|
||||
path: ../../../htdocs/theme/md/badges.inc.php
|
||||
|
||||
-
|
||||
message: '#^Variable \$badgePrimary might not be defined\.$#'
|
||||
identifier: variable.undefined
|
||||
count: 3
|
||||
path: ../../../htdocs/theme/md/badges.inc.php
|
||||
|
||||
-
|
||||
message: '#^Variable \$badgeSecondary might not be defined\.$#'
|
||||
identifier: variable.undefined
|
||||
count: 4
|
||||
path: ../../../htdocs/theme/md/badges.inc.php
|
||||
|
||||
-
|
||||
message: '#^Variable \$badgeSuccess might not be defined\.$#'
|
||||
identifier: variable.undefined
|
||||
count: 3
|
||||
path: ../../../htdocs/theme/md/badges.inc.php
|
||||
|
||||
-
|
||||
message: '#^Variable \$badgeWarning might not be defined\.$#'
|
||||
identifier: variable.undefined
|
||||
count: 3
|
||||
path: ../../../htdocs/theme/md/badges.inc.php
|
||||
|
||||
-
|
||||
message: '#^Variable \$colorblind_deuteranopes_badgeWarning might not be defined\.$#'
|
||||
identifier: variable.undefined
|
||||
count: 3
|
||||
path: ../../../htdocs/theme/md/badges.inc.php
|
||||
|
||||
-
|
||||
message: '#^Variable \$fontlist might not be defined\.$#'
|
||||
identifier: variable.undefined
|
||||
|
|
|
|||
|
|
@ -4,11 +4,10 @@
|
|||
* Copyright (C) 2004-2020 Laurent Destailleur <eldy@users.sourceforge.net>
|
||||
* Copyright (C) 2005-2012 Regis Houssin <regis.houssin@inodbox.com>
|
||||
* Copyright (C) 2019 Nicolas ZABOURI <info@inovea-conseil.com>
|
||||
* Copyright (C) 2021-2023 Frédéric France <frederic.france@netlgic.fr>
|
||||
* Copyright (C) 2021-2025 Frédéric France <frederic.france@free.fr>
|
||||
* Copyright (C) 2021-2023 Waël Almoman <info@almoman.com>
|
||||
* Copyright (C) 2024 MDW <mdeweerd@users.noreply.github.com>
|
||||
* Copyright (C) 2024 Alexandre Spangaro <alexandre@inovea-conseil.com>
|
||||
* Copyright (C) 2024 Frédéric France <frederic.france@free.fr>
|
||||
*
|
||||
* 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
|
||||
|
|
|
|||
|
|
@ -1,8 +1,8 @@
|
|||
<?php
|
||||
/* Copyright (C) 2015 Jean-François Ferry <jfefe@aternatik.fr>
|
||||
* Copyright (C) 2016 Laurent Destailleur <eldy@users.sourceforge.net>
|
||||
* Copyright (C) 2020 Frédéric France <frederic.france@netlogic.fr>
|
||||
* Copyright (C) 2024 MDW <mdeweerd@users.noreply.github.com>
|
||||
/* Copyright (C) 2015 Jean-François Ferry <jfefe@aternatik.fr>
|
||||
* Copyright (C) 2016 Laurent Destailleur <eldy@users.sourceforge.net>
|
||||
* Copyright (C) 2020-2025 Frédéric France <frederic.france@free.fr>
|
||||
* Copyright (C) 2024 MDW <mdeweerd@users.noreply.github.com>
|
||||
*
|
||||
* 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
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
<?php
|
||||
/* Copyright (C) 2014 Florian Henry <florian.henry@open-concept.pro>
|
||||
* Copyright (C) 2019 Frédéric France <frederic.france@netlogic.fr>
|
||||
* Copyright (C) 2024 MDW <mdeweerd@users.noreply.github.com>
|
||||
* Copyright (C) 2019-2025 Frédéric France <frederic.france@free.fr>
|
||||
* Copyright (C) 2024 MDW <mdeweerd@users.noreply.github.com>
|
||||
*
|
||||
* 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
|
||||
|
|
|
|||
|
|
@ -9,7 +9,7 @@
|
|||
* Copyright (C) 2017 Alexandre Spangaro <aspangaro@open-dsi.fr>
|
||||
* Copyright (C) 2018 Andreu Bisquerra <jove@bisquerra.com>
|
||||
* Copyright (C) 2024 MDW <mdeweerd@users.noreply.github.com>
|
||||
* Copyright (C) 2024 Frédéric France <frederic.france@free.fr>
|
||||
* Copyright (C) 2024-2025 Frédéric France <frederic.france@free.fr>
|
||||
*
|
||||
* 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
|
||||
|
|
@ -450,7 +450,7 @@ if ($resql) {
|
|||
if (!empty($totalvatperrate) && is_array($totalvatperrate)) {
|
||||
print '<br><br><div class="small inline-block">'.$langs->trans("VATRate").'</div>';
|
||||
foreach ($totalvatperrate as $keyrate => $valuerate) {
|
||||
print '<br><div class="small">'.$langs->trans("VATRate").' '.vatrate($keyrate, 1).' : <div class="inline-block amount width100"></div><div class="inline-block amount width100">'.price($valuerate).'</div></div>';
|
||||
print '<br><div class="small">'.$langs->trans("VATRate").' '.vatrate($keyrate, true).' : <div class="inline-block amount width100"></div><div class="inline-block amount width100">'.price($valuerate).'</div></div>';
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -1,9 +1,9 @@
|
|||
<?php
|
||||
/* Module descriptor for ticket system
|
||||
* Copyright (C) 2013-2016 Jean-François FERRY <hello@librethic.io>
|
||||
* 2016 Christophe Battarel <christophe@altairis.fr>
|
||||
* Copyright (C) 2019-2021 Frédéric France <frederic.france@netlogic.fr>
|
||||
* Copyright (C) 2024 MDW <mdeweerd@users.noreply.github.com>
|
||||
* Copyright (C) 2016 Christophe Battarel <christophe@altairis.fr>
|
||||
* Copyright (C) 2019-2025 Frédéric France <frederic.france@free.fr>
|
||||
* Copyright (C) 2024 MDW <mdeweerd@users.noreply.github.com>
|
||||
*
|
||||
* 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
|
||||
|
|
|
|||
|
|
@ -1,9 +1,9 @@
|
|||
<?php
|
||||
/* Module descriptor for ticket system
|
||||
* Copyright (C) 2013-2016 Jean-François FERRY <hello@librethic.io>
|
||||
* 2016 Christophe Battarel <christophe@altairis.fr>
|
||||
* Copyright (C) 2019-2021 Frédéric France <frederic.france@netlogic.fr>
|
||||
* Copyright (C) 2024 MDW <mdeweerd@users.noreply.github.com>
|
||||
* Copyright (C) 2016 Christophe Battarel <christophe@altairis.fr>
|
||||
* Copyright (C) 2019-2025 Frédéric France <frederic.france@free.fr>
|
||||
* Copyright (C) 2024 MDW <mdeweerd@users.noreply.github.com>
|
||||
*
|
||||
* 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
|
||||
|
|
|
|||
|
|
@ -1,9 +1,9 @@
|
|||
<?php
|
||||
/* Module descriptor for ticket system
|
||||
* Copyright (C) 2013-2016 Jean-François FERRY <hello@librethic.io>
|
||||
* 2016 Christophe Battarel <christophe@altairis.fr>
|
||||
* Copyright (C) 2019-2021 Frédéric France <frederic.france@netlogic.fr>
|
||||
* Copyright (C) 2024 MDW <mdeweerd@users.noreply.github.com>
|
||||
* Copyright (C) 2016 Christophe Battarel <christophe@altairis.fr>
|
||||
* Copyright (C) 2019-2025 Frédéric France <frederic.france@free.fr>
|
||||
* Copyright (C) 2024 MDW <mdeweerd@users.noreply.github.com>
|
||||
*
|
||||
* 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
|
||||
|
|
|
|||
|
|
@ -1,9 +1,9 @@
|
|||
<?php
|
||||
/*
|
||||
* Copyright (C) 2013-2016 Jean-François FERRY <hello@librethic.io>
|
||||
* Copyright (C) 2016 Christophe Battarel <christophe@altairis.fr>
|
||||
* Copyright (C) 2018-2023 Frédéric France <frederic.france@netlogic.fr>
|
||||
* Copyright (C) 2024 MDW <mdeweerd@users.noreply.github.com>
|
||||
* Copyright (C) 2013-2016 Jean-François FERRY <hello@librethic.io>
|
||||
* Copyright (C) 2016 Christophe Battarel <christophe@altairis.fr>
|
||||
* Copyright (C) 2018-2025 Frédéric France <frederic.france@free.fr>
|
||||
* Copyright (C) 2024 MDW <mdeweerd@users.noreply.github.com>
|
||||
*
|
||||
* 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
|
||||
|
|
|
|||
|
|
@ -1081,6 +1081,42 @@ abstract class CommonDocGenerator
|
|||
$array_shipment['order_ref_customer'] = $object->commande->ref_customer;
|
||||
}
|
||||
|
||||
// Load dim data
|
||||
$tmparray = $object->getTotalWeightVolume();
|
||||
$totalWeight = $tmparray['weight'];
|
||||
$totalVolume = $tmparray['volume'];
|
||||
$totalOrdered = $tmparray['ordered'];
|
||||
$totalToShip = $tmparray['toship'];
|
||||
|
||||
// Set trueVolume and volume_units not currently stored into database
|
||||
if ($object->trueWidth && $object->trueHeight && $object->trueDepth) {
|
||||
$object->trueVolume = $object->trueWidth * $object->trueHeight * $object->trueDepth;
|
||||
$object->volume_units = $object->size_units * 3;
|
||||
}
|
||||
|
||||
$array_shipment[$array_key.'_total_ordered'] = (string) $totalOrdered;
|
||||
$array_shipment[$array_key.'_total_toship'] = (string) $totalToShip;
|
||||
|
||||
if ($object->trueWeight) {
|
||||
$array_shipment[$array_key.'_total_weight'] = (empty($totalWeight)) ? '' : showDimensionInBestUnit($object->trueWeight, $object->weight_units, "weight", $outputlangs);
|
||||
} elseif (!empty($totalWeight)) {
|
||||
$array_shipment[$array_key.'_total_weight'] = showDimensionInBestUnit($totalWeight, 0, "weight", $outputlangs, -1, 'no', 1);
|
||||
} else {
|
||||
$array_shipment[$array_key.'_total_weight'] = "";
|
||||
}
|
||||
|
||||
if (!empty($object->trueVolume)) {
|
||||
if ($object->volume_units < 50) {
|
||||
$array_shipment[$array_key.'_total_volume'] = (empty($totalVolume)) ? '' : showDimensionInBestUnit($object->trueVolume, $object->volume_units, "volume", $outputlangs);
|
||||
} else {
|
||||
$array_shipment[$array_key.'_total_volume'] = (empty($totalVolume)) ? '' : price($object->trueVolume, 0, $outputlangs, 0, 0).' '.measuringUnitString(0, "volume", $object->volume_units);
|
||||
}
|
||||
} elseif (!empty($totalVolume)) {
|
||||
$array_shipment[$array_key.'_total_volume'] = showDimensionInBestUnit($totalVolume, 0, "volume", $outputlangs, -1, 'no', 1);
|
||||
} else {
|
||||
$array_shipment[$array_key.'_total_volume'] = "";
|
||||
}
|
||||
|
||||
return $array_shipment;
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
<?php
|
||||
/* Copyright (C) 2011 Regis Houssin <regis.houssin@inodbox.com>
|
||||
* Copyright (C) 2022 Frédéric France <frederic.france@netlogic.fr>
|
||||
* Copyright (C) 2024 MDW <mdeweerd@users.noreply.github.com>
|
||||
/* Copyright (C) 2011 Regis Houssin <regis.houssin@inodbox.com>
|
||||
* Copyright (C) 2022-2025 Frédéric France <frederic.france@free.fr>
|
||||
* Copyright (C) 2024 MDW <mdeweerd@users.noreply.github.com>
|
||||
*
|
||||
* 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
|
||||
|
|
|
|||
|
|
@ -13,7 +13,7 @@
|
|||
* Copyright (C) 2019 Lenin Rivas <lenin.rivas@servcom-it.com>
|
||||
* Copyright (C) 2020 Nicolas ZABOURI <info@inovea-conseil.com>
|
||||
* Copyright (C) 2021-2022 Anthony Berton <anthony.berton@bb2a.fr>
|
||||
* Copyright (C) 2023-2024 Frédéric France <frederic.france@free.fr>
|
||||
* Copyright (C) 2023-2025 Frédéric France <frederic.france@free.fr>
|
||||
* Copyright (C) 2024 MDW <mdeweerd@users.noreply.github.com>
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
|
|
@ -1959,7 +1959,7 @@ function pdf_getlinevatrate($object, $i, $outputlangs, $hidedetails = 0)
|
|||
if (empty($hidedetails) || $hidedetails > 1) {
|
||||
$tmpresult = '';
|
||||
|
||||
$tmpresult .= vatrate($object->lines[$i]->tva_tx, 0, $object->lines[$i]->info_bits, -1);
|
||||
$tmpresult .= vatrate($object->lines[$i]->tva_tx, false, $object->lines[$i]->info_bits, -1);
|
||||
if (!getDolGlobalString('MAIN_PDF_MAIN_HIDE_SECOND_TAX')) {
|
||||
if ($object->lines[$i]->total_localtax1 != 0) {
|
||||
if (preg_replace('/[\s0%]/', '', $tmpresult)) {
|
||||
|
|
@ -1967,7 +1967,7 @@ function pdf_getlinevatrate($object, $i, $outputlangs, $hidedetails = 0)
|
|||
} else {
|
||||
$tmpresult = '';
|
||||
}
|
||||
$tmpresult .= vatrate((string) abs($object->lines[$i]->localtax1_tx), 0);
|
||||
$tmpresult .= vatrate((string) abs($object->lines[$i]->localtax1_tx), false);
|
||||
}
|
||||
}
|
||||
if (!getDolGlobalString('MAIN_PDF_MAIN_HIDE_THIRD_TAX')) {
|
||||
|
|
@ -1977,7 +1977,7 @@ function pdf_getlinevatrate($object, $i, $outputlangs, $hidedetails = 0)
|
|||
} else {
|
||||
$tmpresult = '';
|
||||
}
|
||||
$tmpresult .= vatrate((string) abs($object->lines[$i]->localtax2_tx), 0);
|
||||
$tmpresult .= vatrate((string) abs($object->lines[$i]->localtax2_tx), false);
|
||||
}
|
||||
}
|
||||
$tmpresult .= '%';
|
||||
|
|
|
|||
|
|
@ -1,9 +1,9 @@
|
|||
<?php
|
||||
/**
|
||||
* Copyright (C) 2015 Charlie BENKE <charlie@patas-monkey.com>
|
||||
* Copyright (C) 2019 Alexandre Spangaro <aspangaro@open-dsi.fr>
|
||||
* Copyright (C) 2015 Charlie BENKE <charlie@patas-monkey.com>
|
||||
* Copyright (C) 2019 Alexandre Spangaro <aspangaro@open-dsi.fr>
|
||||
* Copyright (C) 2021 Gauthier VERDOL <gauthier.verdol@atm-consulting.fr>
|
||||
* Copyright (C) 2023 Frédéric France <frederic.france@netlogic.fr>
|
||||
* Copyright (C) 2023-2025 Frédéric France <frederic.france@free.fr>
|
||||
* Copyright (C) 2024 MDW <mdeweerd@users.noreply.github.com>
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
<?php
|
||||
/* Copyright (C) 2006-2010 Laurent Destailleur <eldy@users.sourceforge.net>
|
||||
* Copyright (C) 2005-2012 Regis Houssin <regis.houssin@inodbox.com>
|
||||
* Copyright (C) 2022 Frédéric France <frederic.france@netlogic.fr>
|
||||
/* Copyright (C) 2006-2010 Laurent Destailleur <eldy@users.sourceforge.net>
|
||||
* Copyright (C) 2005-2012 Regis Houssin <regis.houssin@inodbox.com>
|
||||
* Copyright (C) 2022-2025 Frédéric France <frederic.france@free.fr>
|
||||
* Copyright (C) 2024 MDW <mdeweerd@users.noreply.github.com>
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
|
|
|
|||
|
|
@ -7,7 +7,7 @@
|
|||
* Copyright (C) 2012 Cedric Salvador <csalvador@gpcsolutions.fr>
|
||||
* Copyright (C) 2015 Marcos García <marcosgdf@gmail.com>
|
||||
* Copyright (C) 2017-2018 Ferran Marcet <fmarcet@2byte.es>
|
||||
* Copyright (C) 2018-2024 Frédéric France <frederic.france@free.fr>
|
||||
* Copyright (C) 2018-2025 Frédéric France <frederic.france@free.fr>
|
||||
* Copyright (C) 2024 MDW <mdeweerd@users.noreply.github.com>
|
||||
* Copyright (C) 2024 Nick Fragoulis
|
||||
* Copyright (C) 2024 Alexandre Spangaro <alexandre@inovea-conseil.com>
|
||||
|
|
@ -1008,7 +1008,7 @@ class pdf_einstein extends ModelePDFCommandes
|
|||
if (getDolGlobalString('PDF_LOCALTAX1_LABEL_IS_CODE_OR_RATE') == 'nocodenorate') {
|
||||
$totalvat .= $tvacompl;
|
||||
} else {
|
||||
$totalvat .= vatrate((string) abs((float) $tvakey), 1).$tvacompl;
|
||||
$totalvat .= vatrate((string) abs((float) $tvakey), true).$tvacompl;
|
||||
}
|
||||
|
||||
$pdf->MultiCell($col2x - $col1x, $tab2_hl, $totalvat, 0, 'L', 1);
|
||||
|
|
@ -1044,7 +1044,7 @@ class pdf_einstein extends ModelePDFCommandes
|
|||
if (getDolGlobalString('PDF_LOCALTAX2_LABEL_IS_CODE_OR_RATE') == 'nocodenorate') {
|
||||
$totalvat .= $tvacompl;
|
||||
} else {
|
||||
$totalvat .= vatrate((string) abs((float) $tvakey), 1).$tvacompl;
|
||||
$totalvat .= vatrate((string) abs((float) $tvakey), true).$tvacompl;
|
||||
}
|
||||
|
||||
$pdf->MultiCell($col2x - $col1x, $tab2_hl, $totalvat, 0, 'L', 1);
|
||||
|
|
@ -1073,13 +1073,13 @@ class pdf_einstein extends ModelePDFCommandes
|
|||
$totalvat = $outputlangs->transcountrynoentities("TotalVAT", $mysoc->country_code).(is_object($outputlangsbis) ? ' / '.$outputlangsbis->transcountrynoentities("TotalVAT", $mysoc->country_code) : '');
|
||||
$totalvat .= ' ';
|
||||
if (getDolGlobalString('PDF_VAT_LABEL_IS_CODE_OR_RATE') == 'rateonly') {
|
||||
$totalvat .= vatrate($tvaval['vatrate'], 1).$tvacompl;
|
||||
$totalvat .= vatrate($tvaval['vatrate'], true).$tvacompl;
|
||||
} elseif (getDolGlobalString('PDF_VAT_LABEL_IS_CODE_OR_RATE') == 'codeonly') {
|
||||
$totalvat .= $tvaval['vatcode'].$tvacompl;
|
||||
} elseif (getDolGlobalString('PDF_VAT_LABEL_IS_CODE_OR_RATE') == 'nocodenorate') {
|
||||
$totalvat .= $tvacompl;
|
||||
} else {
|
||||
$totalvat .= vatrate($tvaval['vatrate'], 1).($tvaval['vatcode'] ? ' ('.$tvaval['vatcode'].')' : '').$tvacompl;
|
||||
$totalvat .= vatrate($tvaval['vatrate'], true).($tvaval['vatcode'] ? ' ('.$tvaval['vatcode'].')' : '').$tvacompl;
|
||||
}
|
||||
$pdf->MultiCell($col2x - $col1x, $tab2_hl, $totalvat, 0, 'L', 1);
|
||||
|
||||
|
|
@ -1114,7 +1114,7 @@ class pdf_einstein extends ModelePDFCommandes
|
|||
if (getDolGlobalString('PDF_LOCALTAX1_LABEL_IS_CODE_OR_RATE') == 'nocodenorate') {
|
||||
$totalvat .= $tvacompl;
|
||||
} else {
|
||||
$totalvat .= vatrate((string) abs((float) $tvakey), 1).$tvacompl;
|
||||
$totalvat .= vatrate((string) abs((float) $tvakey), true).$tvacompl;
|
||||
}
|
||||
|
||||
$pdf->MultiCell($col2x - $col1x, $tab2_hl, $totalvat, 0, 'L', 1);
|
||||
|
|
@ -1154,7 +1154,7 @@ class pdf_einstein extends ModelePDFCommandes
|
|||
if (getDolGlobalString('PDF_LOCALTAX2_LABEL_IS_CODE_OR_RATE') == 'nocodenorate') {
|
||||
$totalvat .= $tvacompl;
|
||||
} else {
|
||||
$totalvat .= vatrate((string) abs((float) $tvakey), 1).$tvacompl;
|
||||
$totalvat .= vatrate((string) abs((float) $tvakey), true).$tvacompl;
|
||||
}
|
||||
|
||||
$pdf->MultiCell($col2x - $col1x, $tab2_hl, $totalvat, 0, 'L', 1);
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@
|
|||
* Copyright (C) 2015 Marcos García <marcosgdf@gmail.com>
|
||||
* Copyright (C) 2017 Ferran Marcet <fmarcet@2byte.es>
|
||||
* Copyright (C) 2021-2024 Anthony Berton <anthony.berton@bb2a.fr>
|
||||
* Copyright (C) 2018-2024 Frédéric France <frederic.france@free.fr>
|
||||
* Copyright (C) 2018-2025 Frédéric France <frederic.france@free.fr>
|
||||
* Copyright (C) 2024 MDW <mdeweerd@users.noreply.github.com>
|
||||
* Copyright (C) 2024 Nick Fragoulis
|
||||
* Copyright (C) 2024 Joachim Kueter <git-jk@bloxera.com>
|
||||
|
|
@ -910,7 +910,7 @@ class pdf_eratosthene extends ModelePDFCommandes
|
|||
*
|
||||
* @param TCPDF $pdf Object PDF
|
||||
* @param Commande $object Object order
|
||||
* @param int $posy Position y in PDF
|
||||
* @param float $posy Position y in PDF
|
||||
* @param Translate $outputlangs Object langs for output
|
||||
* @return int Return integer <0 if KO, >0 if OK
|
||||
*/
|
||||
|
|
@ -924,9 +924,9 @@ class pdf_eratosthene extends ModelePDFCommandes
|
|||
*
|
||||
* @param TCPDF $pdf Object PDF
|
||||
* @param Commande $object Object to show
|
||||
* @param int $posy Y
|
||||
* @param float $posy Y
|
||||
* @param Translate $outputlangs Langs object
|
||||
* @return int Pos y
|
||||
* @return float Pos y
|
||||
*/
|
||||
protected function drawInfoTable(&$pdf, $object, $posy, $outputlangs)
|
||||
{
|
||||
|
|
@ -1105,11 +1105,11 @@ class pdf_eratosthene extends ModelePDFCommandes
|
|||
*
|
||||
* @param TCPDF $pdf Object PDF
|
||||
* @param Commande $object Object to show
|
||||
* @param int $deja_regle Montant deja regle
|
||||
* @param int $posy Position depart
|
||||
* @param float $deja_regle Montant deja regle
|
||||
* @param float $posy Position depart
|
||||
* @param Translate $outputlangs Object langs
|
||||
* @param Translate $outputlangsbis Object lang for output bis
|
||||
* @return int Position pour suite
|
||||
* @return float Position pour suite
|
||||
*/
|
||||
protected function drawTotalTable(&$pdf, $object, $deja_regle, $posy, $outputlangs, $outputlangsbis = null)
|
||||
{
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@
|
|||
* Copyright (C) 2012-2014 Raphaël Doursenaud <rdoursenaud@gpcsolutions.fr>
|
||||
* Copyright (C) 2015 Marcos Garcia <marcosgdf@gmail.com>
|
||||
* Copyright (C) 2017 Ferran Marcet <fmarcet@2byte.es>
|
||||
* Copyright (C) 2018-2024 Frédéric France <frederic.france@free.fr>
|
||||
* Copyright (C) 2018-2025 Frédéric France <frederic.france@free.fr>
|
||||
* Copyright (C) 2022 Anthony Berton <anthony.berton@bb2a.fr>
|
||||
* Copyright (C) 2022-2024 Alexandre Spangaro <alexandre@inovea-conseil.com>
|
||||
* Copyright (C) 2022-2024 Eric Seigne <eric.seigne@cap-rel.fr>
|
||||
|
|
@ -1178,9 +1178,9 @@ class pdf_octopus extends ModelePDFFactures
|
|||
*
|
||||
* @param TCPDI|TCPDF $pdf Object PDF
|
||||
* @param Facture $object Object invoice
|
||||
* @param int $posy Position y in PDF
|
||||
* @param float $posy Position y in PDF
|
||||
* @param Translate $outputlangs Object langs for output
|
||||
* @return int Return integer <0 if KO, >0 if OK
|
||||
* @return int|float Return integer <0 if KO, >0 if OK
|
||||
*/
|
||||
public function drawPaymentsTable(&$pdf, $object, $posy, $outputlangs)
|
||||
{
|
||||
|
|
@ -1322,10 +1322,10 @@ class pdf_octopus extends ModelePDFFactures
|
|||
*
|
||||
* @param TCPDI|TCPDF $pdf Object PDF
|
||||
* @param Facture $object Object to show
|
||||
* @param int $posy Y
|
||||
* @param float $posy Y
|
||||
* @param Translate $outputlangs Langs object
|
||||
* @param Translate $outputlangsbis Object lang for output bis
|
||||
* @return int Pos y
|
||||
* @return float Pos y
|
||||
*/
|
||||
protected function drawInfoTable(&$pdf, $object, $posy, $outputlangs, $outputlangsbis)
|
||||
{
|
||||
|
|
@ -1626,11 +1626,11 @@ class pdf_octopus extends ModelePDFFactures
|
|||
*
|
||||
* @param TCPDI|TCPDF $pdf Object PDF
|
||||
* @param Facture $object Object invoice
|
||||
* @param int $deja_regle Amount already paid (in the currency of invoice)
|
||||
* @param int $posy Position depart
|
||||
* @param float $deja_regle Amount already paid (in the currency of invoice)
|
||||
* @param float $posy Position depart
|
||||
* @param Translate $outputlangs Object langs
|
||||
* @param Translate $outputlangsbis Object lang for output bis
|
||||
* @return int Position pour suite
|
||||
* @return float Position pour suite
|
||||
*/
|
||||
protected function drawTotalTable(&$pdf, $object, $deja_regle, $posy, $outputlangs, $outputlangsbis)
|
||||
{
|
||||
|
|
@ -1735,7 +1735,7 @@ class pdf_octopus extends ModelePDFFactures
|
|||
if (getDolGlobalString('PDF_LOCALTAX1_LABEL_IS_CODE_OR_RATE') == 'nocodenorate') {
|
||||
$totalvat .= $tvacompl;
|
||||
} else {
|
||||
$totalvat .= vatrate((string) abs((float) $tvakey), 1).$tvacompl;
|
||||
$totalvat .= vatrate((string) abs((float) $tvakey), true).$tvacompl;
|
||||
}
|
||||
|
||||
$pdf->MultiCell($col2x - $col1x, $tab2_hl, $totalvat, 0, 'L', 1);
|
||||
|
|
@ -1772,7 +1772,7 @@ class pdf_octopus extends ModelePDFFactures
|
|||
if (getDolGlobalString('PDF_LOCALTAX2_LABEL_IS_CODE_OR_RATE') == 'nocodenorate') {
|
||||
$totalvat .= $tvacompl;
|
||||
} else {
|
||||
$totalvat .= vatrate((string) abs((float) $tvakey), 1).$tvacompl;
|
||||
$totalvat .= vatrate((string) abs((float) $tvakey), true).$tvacompl;
|
||||
}
|
||||
|
||||
$pdf->MultiCell($col2x - $col1x, $tab2_hl, $totalvat, 0, 'L', 1);
|
||||
|
|
@ -1818,13 +1818,13 @@ class pdf_octopus extends ModelePDFFactures
|
|||
$totalvat = $outputlangs->transcountrynoentities("TotalVAT", $mysoc->country_code).(is_object($outputlangsbis) ? ' / '.$outputlangsbis->transcountrynoentities("TotalVAT", $mysoc->country_code) : '');
|
||||
$totalvat .= ' ';
|
||||
if (getDolGlobalString('PDF_VAT_LABEL_IS_CODE_OR_RATE') == 'rateonly') {
|
||||
$totalvat .= vatrate($tvaval['vatrate'], 1).$tvacompl;
|
||||
$totalvat .= vatrate($tvaval['vatrate'], true).$tvacompl;
|
||||
} elseif (getDolGlobalString('PDF_VAT_LABEL_IS_CODE_OR_RATE') == 'codeonly') {
|
||||
$totalvat .= $tvaval['vatcode'].$tvacompl;
|
||||
} elseif (getDolGlobalString('PDF_VAT_LABEL_IS_CODE_OR_RATE') == 'nocodenorate') {
|
||||
$totalvat .= $tvacompl;
|
||||
} else {
|
||||
$totalvat .= vatrate($tvaval['vatrate'], 1).($tvaval['vatcode'] ? ' ('.$tvaval['vatcode'].')' : '').$tvacompl;
|
||||
$totalvat .= vatrate($tvaval['vatrate'], true).($tvaval['vatcode'] ? ' ('.$tvaval['vatcode'].')' : '').$tvacompl;
|
||||
}
|
||||
$pdf->MultiCell($col2x - $col1x, $tab2_hl, $totalvat, 0, 'L', 1);
|
||||
|
||||
|
|
@ -1858,7 +1858,7 @@ class pdf_octopus extends ModelePDFFactures
|
|||
if (getDolGlobalString('PDF_LOCALTAX1_LABEL_IS_CODE_OR_RATE') == 'nocodenorate') {
|
||||
$totalvat .= $tvacompl;
|
||||
} else {
|
||||
$totalvat .= vatrate((string) abs((float) $tvakey), 1).$tvacompl;
|
||||
$totalvat .= vatrate((string) abs((float) $tvakey), true).$tvacompl;
|
||||
}
|
||||
|
||||
$pdf->MultiCell($col2x - $col1x, $tab2_hl, $totalvat, 0, 'L', 1);
|
||||
|
|
@ -1896,7 +1896,7 @@ class pdf_octopus extends ModelePDFFactures
|
|||
if (getDolGlobalString('PDF_LOCALTAX2_LABEL_IS_CODE_OR_RATE') == 'nocodenorate') {
|
||||
$totalvat .= $tvacompl;
|
||||
} else {
|
||||
$totalvat .= vatrate((string) abs((float) $tvakey), 1).$tvacompl;
|
||||
$totalvat .= vatrate((string) abs((float) $tvakey), true).$tvacompl;
|
||||
}
|
||||
|
||||
$pdf->MultiCell($col2x - $col1x, $tab2_hl, $totalvat, 0, 'L', 1);
|
||||
|
|
@ -3645,7 +3645,7 @@ class pdf_octopus extends ModelePDFFactures
|
|||
$tvacompl = " (".$outputlangs->transnoentities("NonPercuRecuperable").")";
|
||||
}
|
||||
$totalvat = $outputlangs->transcountrynoentities("TotalVAT", $mysoc->country_code).' ';
|
||||
$totalvat .= vatrate($tvakey, 1).$tvacompl;
|
||||
$totalvat .= vatrate($tvakey, true).$tvacompl;
|
||||
$pdf->MultiCell($width, $height, $totalvat, 0, 'L', 1);
|
||||
|
||||
$pdf->SetXY($posx + $width, $posy + $height * $index);
|
||||
|
|
|
|||
|
|
@ -8,12 +8,12 @@
|
|||
* Copyright (C) 2012-2014 Raphaël Doursenaud <rdoursenaud@gpcsolutions.fr>
|
||||
* Copyright (C) 2015 Marcos García <marcosgdf@gmail.com>
|
||||
* Copyright (C) 2017 Ferran Marcet <fmarcet@2byte.es>
|
||||
* Copyright (C) 2018-2024 Frédéric France <frederic.france@free.fr>
|
||||
* Copyright (C) 2018-2024 Anthony Berton <anthony.berton@bb2a.fr>
|
||||
* Copyright (C) 2018-2025 Frédéric France <frederic.france@free.fr>
|
||||
* Copyright (C) 2018-2024 Anthony Berton <anthony.berton@bb2a.fr>
|
||||
* Copyright (C) 2022-2024 Alexandre Spangaro <alexandre@inovea-conseil.com>
|
||||
* Copyright (C) 2024 MDW <mdeweerd@users.noreply.github.com>
|
||||
* Copyright (C) 2024 Nick Fragoulis
|
||||
* Copyright (C) 2024 Franck Moreau
|
||||
* Copyright (C) 2024 MDW <mdeweerd@users.noreply.github.com>
|
||||
* Copyright (C) 2024 Nick Fragoulis
|
||||
* Copyright (C) 2024 Franck Moreau
|
||||
*
|
||||
* 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
|
||||
|
|
@ -1111,9 +1111,9 @@ class pdf_sponge extends ModelePDFFactures
|
|||
*
|
||||
* @param TCPDF $pdf Object PDF
|
||||
* @param Facture $object Object invoice
|
||||
* @param int $posy Position y in PDF
|
||||
* @param float $posy Position y in PDF
|
||||
* @param Translate $outputlangs Object langs for output
|
||||
* @return int Return integer <0 if KO, >0 if OK
|
||||
* @return float Return integer <0 if KO, >0 if OK
|
||||
*/
|
||||
public function drawPaymentsTable(&$pdf, $object, $posy, $outputlangs)
|
||||
{
|
||||
|
|
@ -1253,10 +1253,10 @@ class pdf_sponge extends ModelePDFFactures
|
|||
*
|
||||
* @param TCPDF $pdf Object PDF
|
||||
* @param Facture $object Object to show
|
||||
* @param int $posy Y
|
||||
* @param float $posy Y
|
||||
* @param Translate $outputlangs Langs object
|
||||
* @param Translate $outputlangsbis Object lang for output bis
|
||||
* @return int Pos y
|
||||
* @return float Pos y
|
||||
*/
|
||||
protected function drawInfoTable(&$pdf, $object, $posy, $outputlangs, $outputlangsbis)
|
||||
{
|
||||
|
|
@ -1568,11 +1568,11 @@ class pdf_sponge extends ModelePDFFactures
|
|||
*
|
||||
* @param TCPDF $pdf Object PDF
|
||||
* @param Facture $object Object invoice
|
||||
* @param int $deja_regle Amount already paid (in the currency of invoice)
|
||||
* @param int $posy Position depart
|
||||
* @param float $deja_regle Amount already paid (in the currency of invoice)
|
||||
* @param float $posy Position depart
|
||||
* @param Translate $outputlangs Object langs
|
||||
* @param Translate $outputlangsbis Object lang for output bis
|
||||
* @return int Position pour suite
|
||||
* @return float Position pour suite
|
||||
*/
|
||||
protected function drawTotalTable(&$pdf, $object, $deja_regle, $posy, $outputlangs, $outputlangsbis)
|
||||
{
|
||||
|
|
@ -1828,7 +1828,7 @@ class pdf_sponge extends ModelePDFFactures
|
|||
if (getDolGlobalString('PDF_LOCALTAX1_LABEL_IS_CODE_OR_RATE') == 'nocodenorate') {
|
||||
$totalvat .= $tvacompl;
|
||||
} else {
|
||||
$totalvat .= vatrate((string) abs((float) $tvakey), 1).$tvacompl;
|
||||
$totalvat .= vatrate((string) abs((float) $tvakey), true).$tvacompl;
|
||||
}
|
||||
|
||||
$pdf->MultiCell($col2x - $col1x, $tab2_hl, $totalvat, 0, 'L', 1);
|
||||
|
|
@ -1865,7 +1865,7 @@ class pdf_sponge extends ModelePDFFactures
|
|||
if (getDolGlobalString('PDF_LOCALTAX2_LABEL_IS_CODE_OR_RATE') == 'nocodenorate') {
|
||||
$totalvat .= $tvacompl;
|
||||
} else {
|
||||
$totalvat .= vatrate((string) abs((float) $tvakey), 1).$tvacompl;
|
||||
$totalvat .= vatrate((string) abs((float) $tvakey), true).$tvacompl;
|
||||
}
|
||||
|
||||
$pdf->MultiCell($col2x - $col1x, $tab2_hl, $totalvat, 0, 'L', 1);
|
||||
|
|
@ -1919,13 +1919,13 @@ class pdf_sponge extends ModelePDFFactures
|
|||
$totalvat = $outputlangs->transcountrynoentities("TotalVAT", $mysoc->country_code).(is_object($outputlangsbis) ? ' / '.$outputlangsbis->transcountrynoentities("TotalVAT", $mysoc->country_code) : '');
|
||||
$totalvat .= ' ';
|
||||
if (getDolGlobalString('PDF_VAT_LABEL_IS_CODE_OR_RATE') == 'rateonly') {
|
||||
$totalvat .= vatrate($tvaval['vatrate'], 1).$tvacompl;
|
||||
$totalvat .= vatrate($tvaval['vatrate'], true).$tvacompl;
|
||||
} elseif (getDolGlobalString('PDF_VAT_LABEL_IS_CODE_OR_RATE') == 'codeonly') {
|
||||
$totalvat .= $tvaval['vatcode'].$tvacompl;
|
||||
} elseif (getDolGlobalString('PDF_VAT_LABEL_IS_CODE_OR_RATE') == 'nocodenorate') {
|
||||
$totalvat .= $tvacompl;
|
||||
} else {
|
||||
$totalvat .= vatrate($tvaval['vatrate'], 1).($tvaval['vatcode'] ? ' ('.$tvaval['vatcode'].')' : '').$tvacompl;
|
||||
$totalvat .= vatrate($tvaval['vatrate'], true).($tvaval['vatcode'] ? ' ('.$tvaval['vatcode'].')' : '').$tvacompl;
|
||||
}
|
||||
$pdf->MultiCell($col2x - $col1x, $tab2_hl, $totalvat, 0, 'L', 1);
|
||||
|
||||
|
|
@ -1959,7 +1959,7 @@ class pdf_sponge extends ModelePDFFactures
|
|||
if (getDolGlobalString('PDF_LOCALTAX1_LABEL_IS_CODE_OR_RATE') == 'nocodenorate') {
|
||||
$totalvat .= $tvacompl;
|
||||
} else {
|
||||
$totalvat .= vatrate((string) abs((float) $tvakey), 1).$tvacompl;
|
||||
$totalvat .= vatrate((string) abs((float) $tvakey), true).$tvacompl;
|
||||
}
|
||||
|
||||
$pdf->MultiCell($col2x - $col1x, $tab2_hl, $totalvat, 0, 'L', 1);
|
||||
|
|
@ -1997,7 +1997,7 @@ class pdf_sponge extends ModelePDFFactures
|
|||
if (getDolGlobalString('PDF_LOCALTAX2_LABEL_IS_CODE_OR_RATE') == 'nocodenorate') {
|
||||
$totalvat .= $tvacompl;
|
||||
} else {
|
||||
$totalvat .= vatrate((string) abs((float) $tvakey), 1).$tvacompl;
|
||||
$totalvat .= vatrate((string) abs((float) $tvakey), true).$tvacompl;
|
||||
}
|
||||
|
||||
$pdf->MultiCell($col2x - $col1x, $tab2_hl, $totalvat, 0, 'L', 1);
|
||||
|
|
|
|||
|
|
@ -2,7 +2,7 @@
|
|||
/* Copyright (C) 2015 Laurent Destailleur <eldy@users.sourceforge.net>
|
||||
* Copyright (C) 2015 Alexandre Spangaro <aspangaro@open-dsi.fr>
|
||||
* Copyright (C) 2016-2023 Philippe Grand <philippe.grand@atoo-net.com>
|
||||
* Copyright (C) 2018-2024 Frédéric France <frederic.france@free.fr>
|
||||
* Copyright (C) 2018-2025 Frédéric France <frederic.france@free.fr>
|
||||
* Copyright (C) 2018 Francis Appels <francis.appels@z-application.com>
|
||||
* Copyright (C) 2019 Markus Welters <markus@welters.de>
|
||||
* Copyright (C) 2019 Rafael Ingenleuf <ingenleuf@welters.de>
|
||||
|
|
@ -72,12 +72,39 @@ class pdf_standard_evaluation extends ModelePDFEvaluation
|
|||
*/
|
||||
public $version = 'dolibarr';
|
||||
|
||||
/**
|
||||
* @var float
|
||||
*/
|
||||
public $posxpiece;
|
||||
|
||||
/**
|
||||
* @var float
|
||||
*/
|
||||
public $posxskill;
|
||||
|
||||
/**
|
||||
* @var float
|
||||
*/
|
||||
public $posxrankemp;
|
||||
|
||||
/**
|
||||
* @var float
|
||||
*/
|
||||
public $posxrequiredrank;
|
||||
|
||||
/**
|
||||
* @var float
|
||||
*/
|
||||
public $posxresult;
|
||||
|
||||
/**
|
||||
* @var float
|
||||
*/
|
||||
public $postotalht;
|
||||
|
||||
/**
|
||||
* @var float
|
||||
*/
|
||||
public $posxnotes;
|
||||
|
||||
|
||||
|
|
@ -642,9 +669,9 @@ class pdf_standard_evaluation extends ModelePDFEvaluation
|
|||
* Show table for lines
|
||||
*
|
||||
* @param TCPDF $pdf Object PDF
|
||||
* @param int $tab_top Tab top
|
||||
* @param int $tab_height Tab height
|
||||
* @param int $nexY next y
|
||||
* @param float $tab_top Tab top
|
||||
* @param float $tab_height Tab height
|
||||
* @param float $nexY next y
|
||||
* @param Translate $outputlangs Output langs
|
||||
* @param int $hidetop 1=Hide top bar of array and title, 0=Hide nothing, -1=Hide only title
|
||||
* @param int $hidebottom Hide bottom bar of array
|
||||
|
|
|
|||
|
|
@ -5,7 +5,7 @@
|
|||
* Copyright (C) 2010-2014 Juanjo Menent <jmenent@2byte.es>
|
||||
* Copyright (C) 2015 Marcos García <marcosgdf@gmail.com>
|
||||
* Copyright (C) 2017 Ferran Marcet <fmarcet@2byte.es>
|
||||
* Copyright (C) 2018-2024 Frédéric France <frederic.france@free.fr>
|
||||
* Copyright (C) 2018-2025 Frédéric France <frederic.france@free.fr>
|
||||
* Copyright (C) 2024 MDW <mdeweerd@users.noreply.github.com>
|
||||
* Copyright (C) 2024 Josep Lluís Amador <joseplluis@lliuretic.cat>
|
||||
* Copyright (C) 2024 Nick Fragoulis
|
||||
|
|
@ -762,7 +762,7 @@ class pdf_vinci extends ModelePDFMo
|
|||
}
|
||||
|
||||
$totalvat = $outputlangs->transcountrynoentities("TotalVAT", $mysoc->country_code).' ';
|
||||
$totalvat .= vatrate($tvakey, 1).$tvacompl;
|
||||
$totalvat .= vatrate($tvakey, true).$tvacompl;
|
||||
$pdf->MultiCell($col2x - $col1x, $tab2_hl, $totalvat, 0, 'L', 1);
|
||||
|
||||
$pdf->SetXY($col2x, $tab2_top + $tab2_hl * $index);
|
||||
|
|
@ -816,7 +816,7 @@ class pdf_vinci extends ModelePDFMo
|
|||
$tvacompl = " (".$outputlangs->transnoentities("NonPercuRecuperable").")";
|
||||
}
|
||||
$totalvat = $outputlangs->transcountrynoentities("TotalLT1", $mysoc->country_code).' ';
|
||||
$totalvat .= vatrate((string) abs((float) $tvakey), 1).$tvacompl;
|
||||
$totalvat .= vatrate((string) abs((float) $tvakey), true).$tvacompl;
|
||||
$pdf->MultiCell($col2x - $col1x, $tab2_hl, $totalvat, 0, 'L', 1);
|
||||
|
||||
$pdf->SetXY($col2x, $tab2_top + $tab2_hl * $index);
|
||||
|
|
@ -846,7 +846,7 @@ class pdf_vinci extends ModelePDFMo
|
|||
$tvacompl = " (".$outputlangs->transnoentities("NonPercuRecuperable").")";
|
||||
}
|
||||
$totalvat = $outputlangs->transcountrynoentities("TotalLT2", $mysoc->country_code).' ';
|
||||
$totalvat .= vatrate((string) abs((float) $tvakey), 1).$tvacompl;
|
||||
$totalvat .= vatrate((string) abs((float) $tvakey), true).$tvacompl;
|
||||
$pdf->MultiCell($col2x - $col1x, $tab2_hl, $totalvat, 0, 'L', 1);
|
||||
|
||||
$pdf->SetXY($col2x, $tab2_top + $tab2_hl * $index);
|
||||
|
|
|
|||
|
|
@ -7,7 +7,7 @@
|
|||
* Copyright (C) 2012 Cedric Salvador <csalvador@gpcsolutions.fr>
|
||||
* Copyright (C) 2015 Marcos García <marcosgdf@gmail.com>
|
||||
* Copyright (C) 2017-2018 Ferran Marcet <fmarcet@2byte.es>
|
||||
* Copyright (C) 2018-2024 Frédéric France <frederic.france@free.fr>
|
||||
* Copyright (C) 2018-2025 Frédéric France <frederic.france@free.fr>
|
||||
* Copyright (C) 2019 Pierre Ardoin <mapiolca@me.com>
|
||||
* Copyright (C) 2021-2024 Anthony Berton <anthony.berton@bb2a.fr>
|
||||
* Copyright (C) 2024 MDW <mdeweerd@users.noreply.github.com>
|
||||
|
|
@ -1194,7 +1194,7 @@ class pdf_azur extends ModelePDFPropales
|
|||
if (getDolGlobalString('PDF_LOCALTAX1_LABEL_IS_CODE_OR_RATE') == 'nocodenorate') {
|
||||
$totalvat .= $tvacompl;
|
||||
} else {
|
||||
$totalvat .= vatrate((string) abs((float) $tvakey), 1).$tvacompl;
|
||||
$totalvat .= vatrate((string) abs((float) $tvakey), true).$tvacompl;
|
||||
}
|
||||
|
||||
$pdf->MultiCell($col2x - $col1x, $tab2_hl, $totalvat, 0, 'L', 1);
|
||||
|
|
@ -1230,7 +1230,7 @@ class pdf_azur extends ModelePDFPropales
|
|||
if (getDolGlobalString('PDF_LOCALTAX2_LABEL_IS_CODE_OR_RATE') == 'nocodenorate') {
|
||||
$totalvat .= $tvacompl;
|
||||
} else {
|
||||
$totalvat .= vatrate((string) abs((float) $tvakey), 1).$tvacompl;
|
||||
$totalvat .= vatrate((string) abs((float) $tvakey), true).$tvacompl;
|
||||
}
|
||||
|
||||
$pdf->MultiCell($col2x - $col1x, $tab2_hl, $totalvat, 0, 'L', 1);
|
||||
|
|
@ -1259,13 +1259,13 @@ class pdf_azur extends ModelePDFPropales
|
|||
$totalvat = $outputlangs->transcountrynoentities("TotalVAT", $mysoc->country_code).(is_object($outputlangsbis) ? ' / '.$outputlangsbis->transcountrynoentities("TotalVAT", $mysoc->country_code) : '');
|
||||
$totalvat .= ' ';
|
||||
if (getDolGlobalString('PDF_VAT_LABEL_IS_CODE_OR_RATE') == 'rateonly') {
|
||||
$totalvat .= vatrate($tvaval['vatrate'], 1).$tvacompl;
|
||||
$totalvat .= vatrate($tvaval['vatrate'], true).$tvacompl;
|
||||
} elseif (getDolGlobalString('PDF_VAT_LABEL_IS_CODE_OR_RATE') == 'codeonly') {
|
||||
$totalvat .= $tvaval['vatcode'].$tvacompl;
|
||||
} elseif (getDolGlobalString('PDF_VAT_LABEL_IS_CODE_OR_RATE') == 'nocodenorate') {
|
||||
$totalvat .= $tvacompl;
|
||||
} else {
|
||||
$totalvat .= vatrate($tvaval['vatrate'], 1).($tvaval['vatcode'] ? ' ('.$tvaval['vatcode'].')' : '').$tvacompl;
|
||||
$totalvat .= vatrate($tvaval['vatrate'], true).($tvaval['vatcode'] ? ' ('.$tvaval['vatcode'].')' : '').$tvacompl;
|
||||
}
|
||||
$pdf->MultiCell($col2x - $col1x, $tab2_hl, $totalvat, 0, 'L', 1);
|
||||
|
||||
|
|
@ -1297,7 +1297,7 @@ class pdf_azur extends ModelePDFPropales
|
|||
if (getDolGlobalString('PDF_LOCALTAX1_LABEL_IS_CODE_OR_RATE') == 'nocodenorate') {
|
||||
$totalvat .= $tvacompl;
|
||||
} else {
|
||||
$totalvat .= vatrate((string) abs((float) $tvakey), 1).$tvacompl;
|
||||
$totalvat .= vatrate((string) abs((float) $tvakey), true).$tvacompl;
|
||||
}
|
||||
|
||||
$pdf->MultiCell($col2x - $col1x, $tab2_hl, $totalvat, 0, 'L', 1);
|
||||
|
|
@ -1334,7 +1334,7 @@ class pdf_azur extends ModelePDFPropales
|
|||
if (getDolGlobalString('PDF_LOCALTAX2_LABEL_IS_CODE_OR_RATE') == 'nocodenorate') {
|
||||
$totalvat .= $tvacompl;
|
||||
} else {
|
||||
$totalvat .= vatrate((string) abs((float) $tvakey), 1).$tvacompl;
|
||||
$totalvat .= vatrate((string) abs((float) $tvakey), true).$tvacompl;
|
||||
}
|
||||
|
||||
$pdf->MultiCell($col2x - $col1x, $tab2_hl, $totalvat, 0, 'L', 1);
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@
|
|||
* Copyright (C) 2015 Marcos García <marcosgdf@gmail.com>
|
||||
* Copyright (C) 2017 Ferran Marcet <fmarcet@2byte.es>
|
||||
* Copyright (C) 2021-2024 Anthony Berton <anthony.berton@bb2a.fr>
|
||||
* Copyright (C) 2018-2024 Frédéric France <frederic.france@free.fr>
|
||||
* Copyright (C) 2018-2025 Frédéric France <frederic.france@free.fr>
|
||||
* Copyright (C) 2024 MDW <mdeweerd@users.noreply.github.com>
|
||||
* Copyright (C) 2024 Nick Fragoulis
|
||||
* Copyright (C) 2024 Alexandre Spangaro <alexandre@inovea-conseil.com>
|
||||
|
|
@ -1008,9 +1008,9 @@ class pdf_cyan extends ModelePDFPropales
|
|||
*
|
||||
* @param TCPDF $pdf Object PDF
|
||||
* @param Propal $object Object to show
|
||||
* @param int $posy Y
|
||||
* @param float $posy Y
|
||||
* @param Translate $outputlangs Langs object
|
||||
* @return int Pos y
|
||||
* @return float Pos y
|
||||
*/
|
||||
public function drawInfoTable(&$pdf, $object, $posy, $outputlangs)
|
||||
{
|
||||
|
|
@ -1191,11 +1191,11 @@ class pdf_cyan extends ModelePDFPropales
|
|||
*
|
||||
* @param TCPDF $pdf Object PDF
|
||||
* @param Propal $object Object proposal
|
||||
* @param int $deja_regle Amount already paid (in the currency of invoice)
|
||||
* @param int $posy Position depart
|
||||
* @param float $deja_regle Amount already paid (in the currency of invoice)
|
||||
* @param float $posy Position depart
|
||||
* @param Translate $outputlangs Object langs
|
||||
* @param Translate $outputlangsbis Object lang for output bis
|
||||
* @return int Position pour suite
|
||||
* @return float Position pour suite
|
||||
*/
|
||||
protected function drawTotalTable(&$pdf, $object, $deja_regle, $posy, $outputlangs, $outputlangsbis = null)
|
||||
{
|
||||
|
|
@ -1299,7 +1299,7 @@ class pdf_cyan extends ModelePDFPropales
|
|||
}
|
||||
$totalvat = $outputlangs->transcountrynoentities("TotalLT1", $mysoc->country_code).(is_object($outputlangsbis) ? ' / '.$outputlangsbis->transcountrynoentities("TotalLT1", $mysoc->country_code) : '');
|
||||
$totalvat .= ' ';
|
||||
$totalvat .= vatrate((string) abs((float) $tvakey), 1).$tvacompl;
|
||||
$totalvat .= vatrate((string) abs((float) $tvakey), true).$tvacompl;
|
||||
$pdf->MultiCell($col2x - $col1x, $tab2_hl, $totalvat, 0, 'L', 1);
|
||||
|
||||
$total_localtax = ((isModEnabled("multicurrency") && isset($object->multicurrency_tx) && $object->multicurrency_tx != 1) ? price2num($tvaval * $object->multicurrency_tx, 'MT') : $tvaval);
|
||||
|
|
@ -1332,7 +1332,7 @@ class pdf_cyan extends ModelePDFPropales
|
|||
}
|
||||
$totalvat = $outputlangs->transcountrynoentities("TotalLT2", $mysoc->country_code).(is_object($outputlangsbis) ? ' / '.$outputlangsbis->transcountrynoentities("TotalLT2", $mysoc->country_code) : '');
|
||||
$totalvat .= ' ';
|
||||
$totalvat .= vatrate((string) abs((float) $tvakey), 1).$tvacompl;
|
||||
$totalvat .= vatrate((string) abs((float) $tvakey), true).$tvacompl;
|
||||
$pdf->MultiCell($col2x - $col1x, $tab2_hl, $totalvat, 0, 'L', 1);
|
||||
|
||||
$total_localtax = ((isModEnabled("multicurrency") && isset($object->multicurrency_tx) && $object->multicurrency_tx != 1) ? price2num($tvaval * $object->multicurrency_tx, 'MT') : $tvaval);
|
||||
|
|
@ -1359,7 +1359,7 @@ class pdf_cyan extends ModelePDFPropales
|
|||
}
|
||||
$totalvat = $outputlangs->transcountrynoentities("TotalVAT", $mysoc->country_code).(is_object($outputlangsbis) ? ' / '.$outputlangsbis->transcountrynoentities("TotalVAT", $mysoc->country_code) : '');
|
||||
$totalvat .= ' ';
|
||||
$totalvat .= vatrate($tvakey, 1).$tvacompl;
|
||||
$totalvat .= vatrate($tvakey, true).$tvacompl;
|
||||
$pdf->MultiCell($col2x - $col1x, $tab2_hl, $totalvat, 0, 'L', 1);
|
||||
|
||||
$pdf->SetXY($col2x, $tab2_top + $tab2_hl * $index);
|
||||
|
|
@ -1390,7 +1390,7 @@ class pdf_cyan extends ModelePDFPropales
|
|||
$totalvat = $outputlangs->transcountrynoentities("TotalLT1", $mysoc->country_code).(is_object($outputlangsbis) ? ' / '.$outputlangsbis->transcountrynoentities("TotalLT1", $mysoc->country_code) : '');
|
||||
$totalvat .= ' ';
|
||||
|
||||
$totalvat .= vatrate((string) abs((float) $tvakey), 1).$tvacompl;
|
||||
$totalvat .= vatrate((string) abs((float) $tvakey), true).$tvacompl;
|
||||
$pdf->MultiCell($col2x - $col1x, $tab2_hl, $totalvat, 0, 'L', 1);
|
||||
|
||||
$total_localtax = ((isModEnabled("multicurrency") && isset($object->multicurrency_tx) && $object->multicurrency_tx != 1) ? price2num($tvaval * $object->multicurrency_tx, 'MT') : $tvaval);
|
||||
|
|
@ -1428,7 +1428,7 @@ class pdf_cyan extends ModelePDFPropales
|
|||
if (getDolGlobalString('PDF_LOCALTAX2_LABEL_IS_CODE_OR_RATE') == 'nocodenorate') {
|
||||
$totalvat .= $tvacompl;
|
||||
} else {
|
||||
$totalvat .= vatrate((string) abs((float) $tvakey), 1).$tvacompl;
|
||||
$totalvat .= vatrate((string) abs((float) $tvakey), true).$tvacompl;
|
||||
}
|
||||
|
||||
$pdf->MultiCell($col2x - $col1x, $tab2_hl, $totalvat, 0, 'L', 1);
|
||||
|
|
@ -1900,9 +1900,9 @@ class pdf_cyan extends ModelePDFPropales
|
|||
*
|
||||
* @param TCPDF $pdf Object PDF
|
||||
* @param Propal $object Object proposal
|
||||
* @param int $posy Position depart
|
||||
* @param float $posy Position depart
|
||||
* @param Translate $outputlangs Object langs
|
||||
* @return int Position pour suite
|
||||
* @return float Position pour suite
|
||||
*/
|
||||
protected function drawSignatureArea(&$pdf, $object, $posy, $outputlangs)
|
||||
{
|
||||
|
|
|
|||
|
|
@ -7,7 +7,7 @@
|
|||
* Copyright (C) 2012 Cedric Salvador <csalvador@gpcsolutions.fr>
|
||||
* Copyright (C) 2015 Marcos García <marcosgdf@gmail.com>
|
||||
* Copyright (C) 2017 Ferran Marcet <fmarcet@2byte.es>
|
||||
* Copyright (C) 2018-2024 Frédéric France <frederic.france@free.fr>
|
||||
* Copyright (C) 2018-2025 Frédéric France <frederic.france@free.fr>
|
||||
* Copyright (C) 2021 Gauthier VERDOL <gauthier.verdol@atm-consulting.fr>
|
||||
* Copyright (C) 2024 MDW <mdeweerd@users.noreply.github.com>
|
||||
* Copyright (C) 2024 Nick Fragoulis
|
||||
|
|
@ -1021,10 +1021,10 @@ class pdf_eagle_proforma extends ModelePDFStockTransfer
|
|||
*
|
||||
* @param TCPDF $pdf Object PDF
|
||||
* @param StockTransfer $object Object StockTransfer
|
||||
* @param int $deja_regle Montant deja regle
|
||||
* @param int $posy Position depart
|
||||
* @param float $deja_regle Montant deja regle
|
||||
* @param float $posy Position depart
|
||||
* @param Translate $outputlangs Object langs
|
||||
* @return int Position pour suite
|
||||
* @return float Position pour suite
|
||||
*/
|
||||
protected function drawTotalTable(&$pdf, $object, $deja_regle, $posy, $outputlangs)
|
||||
{
|
||||
|
|
|
|||
|
|
@ -2,7 +2,7 @@
|
|||
/* Copyright (C) 2010-2011 Juanjo Menent <jmenent@2byte.es>
|
||||
* Copyright (C) 2010-2014 Laurent Destailleur <eldy@users.sourceforge.net>
|
||||
* Copyright (C) 2015 Marcos García <marcosgdf@gmail.com>
|
||||
* Copyright (C) 2018-2024 Frédéric France <frederic.france@free.fr>
|
||||
* Copyright (C) 2018-2025 Frédéric France <frederic.france@free.fr>
|
||||
* Copyright (C) 2024 MDW <mdeweerd@users.noreply.github.com>
|
||||
* Copyright (C) 2024 Nick Fragoulis
|
||||
*
|
||||
|
|
@ -673,7 +673,7 @@ class pdf_canelle extends ModelePDFSuppliersInvoices
|
|||
}
|
||||
|
||||
$totalvat = $outputlangs->transcountrynoentities("TotalVAT", $mysoc->country_code).' ';
|
||||
$totalvat .= vatrate($tvakey, 1).$tvacompl;
|
||||
$totalvat .= vatrate($tvakey, true).$tvacompl;
|
||||
$pdf->MultiCell($col2x - $col1x, $tab2_hl, $totalvat, 0, 'L', 1);
|
||||
|
||||
$pdf->SetXY($col2x, $tab2_top + $tab2_hl * $index);
|
||||
|
|
@ -721,7 +721,7 @@ class pdf_canelle extends ModelePDFSuppliersInvoices
|
|||
$tvacompl = " (".$outputlangs->transnoentities("NonPercuRecuperable").")";
|
||||
}
|
||||
$totalvat = $outputlangs->transcountrynoentities("TotalLT1", $mysoc->country_code).' ';
|
||||
$totalvat .= vatrate((string) abs((float) $tvakey), 1).$tvacompl;
|
||||
$totalvat .= vatrate((string) abs((float) $tvakey), true).$tvacompl;
|
||||
$pdf->MultiCell($col2x - $col1x, $tab2_hl, $totalvat, 0, 'L', 1);
|
||||
|
||||
$pdf->SetXY($col2x, $tab2_top + $tab2_hl * $index);
|
||||
|
|
@ -746,7 +746,7 @@ class pdf_canelle extends ModelePDFSuppliersInvoices
|
|||
$tvacompl = " (".$outputlangs->transnoentities("NonPercuRecuperable").")";
|
||||
}
|
||||
$totalvat = $outputlangs->transcountrynoentities("TotalLT2", $mysoc->country_code).' ';
|
||||
$totalvat .= vatrate((string) abs((float) $tvakey), 1).$tvacompl;
|
||||
$totalvat .= vatrate((string) abs((float) $tvakey), true).$tvacompl;
|
||||
$pdf->MultiCell($col2x - $col1x, $tab2_hl, $totalvat, 0, 'L', 1);
|
||||
|
||||
$pdf->SetXY($col2x, $tab2_top + $tab2_hl * $index);
|
||||
|
|
|
|||
|
|
@ -5,7 +5,7 @@
|
|||
* Copyright (C) 2010-2014 Juanjo Menent <jmenent@2byte.es>
|
||||
* Copyright (C) 2015 Marcos García <marcosgdf@gmail.com>
|
||||
* Copyright (C) 2017 Ferran Marcet <fmarcet@2byte.es>
|
||||
* Copyright (C) 2018-2024 Frédéric France <frederic.france@free.fr>
|
||||
* Copyright (C) 2018-2025 Frédéric France <frederic.france@free.fr>
|
||||
* Copyright (C) 2023 William Mead <william.mead@manchenumerique.fr>
|
||||
* Copyright (C) 2024 MDW <mdeweerd@users.noreply.github.com>
|
||||
* Copyright (C) 2024 Nick Fragoulis
|
||||
|
|
@ -987,7 +987,7 @@ class pdf_cornas extends ModelePDFSuppliersOrders
|
|||
}
|
||||
|
||||
$totalvat = $outputlangs->transcountrynoentities("TotalVAT", $mysoc->country_code).' ';
|
||||
$totalvat .= vatrate($tvakey, 1).$tvacompl;
|
||||
$totalvat .= vatrate($tvakey, true).$tvacompl;
|
||||
$pdf->MultiCell($col2x - $col1x, $tab2_hl, $totalvat, 0, 'L', 1);
|
||||
|
||||
$pdf->SetXY($col2x, $tab2_top + $tab2_hl * $index);
|
||||
|
|
@ -1041,7 +1041,7 @@ class pdf_cornas extends ModelePDFSuppliersOrders
|
|||
$tvacompl = " (".$outputlangs->transnoentities("NonPercuRecuperable").")";
|
||||
}
|
||||
$totalvat = $outputlangs->transcountrynoentities("TotalLT1", $mysoc->country_code).' ';
|
||||
$totalvat .= vatrate((string) abs((float) $tvakey), 1).$tvacompl;
|
||||
$totalvat .= vatrate((string) abs((float) $tvakey), true).$tvacompl;
|
||||
$pdf->MultiCell($col2x - $col1x, $tab2_hl, $totalvat, 0, 'L', 1);
|
||||
|
||||
$pdf->SetXY($col2x, $tab2_top + $tab2_hl * $index);
|
||||
|
|
@ -1071,7 +1071,7 @@ class pdf_cornas extends ModelePDFSuppliersOrders
|
|||
$tvacompl = " (".$outputlangs->transnoentities("NonPercuRecuperable").")";
|
||||
}
|
||||
$totalvat = $outputlangs->transcountrynoentities("TotalLT2", $mysoc->country_code).' ';
|
||||
$totalvat .= vatrate((string) abs((float) $tvakey), 1).$tvacompl;
|
||||
$totalvat .= vatrate((string) abs((float) $tvakey), true).$tvacompl;
|
||||
$pdf->MultiCell($col2x - $col1x, $tab2_hl, $totalvat, 0, 'L', 1);
|
||||
|
||||
$pdf->SetXY($col2x, $tab2_top + $tab2_hl * $index);
|
||||
|
|
|
|||
|
|
@ -5,7 +5,7 @@
|
|||
* Copyright (C) 2010-2014 Juanjo Menent <jmenent@2byte.es>
|
||||
* Copyright (C) 2015 Marcos García <marcosgdf@gmail.com>
|
||||
* Copyright (C) 2017 Ferran Marcet <fmarcet@2byte.es>
|
||||
* Copyright (C) 2018-2024 Frédéric France <frederic.france@free.fr>
|
||||
* Copyright (C) 2018-2025 Frédéric France <frederic.france@free.fr>
|
||||
* Copyright (C) 2024 MDW <mdeweerd@users.noreply.github.com>
|
||||
* Copyright (C) 2024 Nick Fragoulis
|
||||
*
|
||||
|
|
@ -849,7 +849,7 @@ class pdf_muscadet extends ModelePDFSuppliersOrders
|
|||
}
|
||||
|
||||
$totalvat = $outputlangs->transcountrynoentities("TotalVAT", $mysoc->country_code).' ';
|
||||
$totalvat .= vatrate($tvakey, 1).$tvacompl;
|
||||
$totalvat .= vatrate($tvakey, true).$tvacompl;
|
||||
$pdf->MultiCell($col2x - $col1x, $tab2_hl, $totalvat, 0, 'L', 1);
|
||||
|
||||
$pdf->SetXY($col2x, $tab2_top + $tab2_hl * $index);
|
||||
|
|
@ -903,7 +903,7 @@ class pdf_muscadet extends ModelePDFSuppliersOrders
|
|||
$tvacompl = " (".$outputlangs->transnoentities("NonPercuRecuperable").")";
|
||||
}
|
||||
$totalvat = $outputlangs->transcountrynoentities("TotalLT1", $mysoc->country_code).' ';
|
||||
$totalvat .= vatrate((string) abs((float) $tvakey), 1).$tvacompl;
|
||||
$totalvat .= vatrate((string) abs((float) $tvakey), true).$tvacompl;
|
||||
$pdf->MultiCell($col2x - $col1x, $tab2_hl, $totalvat, 0, 'L', 1);
|
||||
|
||||
$pdf->SetXY($col2x, $tab2_top + $tab2_hl * $index);
|
||||
|
|
@ -933,7 +933,7 @@ class pdf_muscadet extends ModelePDFSuppliersOrders
|
|||
$tvacompl = " (".$outputlangs->transnoentities("NonPercuRecuperable").")";
|
||||
}
|
||||
$totalvat = $outputlangs->transcountrynoentities("TotalLT2", $mysoc->country_code).' ';
|
||||
$totalvat .= vatrate((string) abs((float) $tvakey), 1).$tvacompl;
|
||||
$totalvat .= vatrate((string) abs((float) $tvakey), true).$tvacompl;
|
||||
$pdf->MultiCell($col2x - $col1x, $tab2_hl, $totalvat, 0, 'L', 1);
|
||||
|
||||
$pdf->SetXY($col2x, $tab2_top + $tab2_hl * $index);
|
||||
|
|
|
|||
|
|
@ -5,7 +5,7 @@
|
|||
* Copyright (C) 2010-2014 Juanjo Menent <jmenent@2byte.es>
|
||||
* Copyright (C) 2012 Christophe Battarel <christophe.battarel@altairis.fr>
|
||||
* Copyright (C) 2017 Ferran Marcet <fmarcet@2byte.es>
|
||||
* Copyright (C) 2024 Frédéric France <frederic.france@free.fr>
|
||||
* Copyright (C) 2024-2025 Frédéric France <frederic.france@free.fr>
|
||||
* Copyright (C) 2024 MDW <mdeweerd@users.noreply.github.com>
|
||||
* Copyright (C) 2024 Nick Fragoulis
|
||||
*
|
||||
|
|
@ -940,7 +940,7 @@ class pdf_aurore extends ModelePDFSupplierProposal
|
|||
$tvacompl = " (".$outputlangs->transnoentities("NonPercuRecuperable").")";
|
||||
}
|
||||
$totalvat = $outputlangs->transcountrynoentities("TotalLT1", $mysoc->country_code).' ';
|
||||
$totalvat .= vatrate((string) abs((float) $tvakey), 1).$tvacompl;
|
||||
$totalvat .= vatrate((string) abs((float) $tvakey), true).$tvacompl;
|
||||
$pdf->MultiCell($col2x - $col1x, $tab2_hl, $totalvat, 0, 'L', 1);
|
||||
|
||||
$pdf->SetXY($col2x, $tab2_top + $tab2_hl * $index);
|
||||
|
|
@ -972,7 +972,7 @@ class pdf_aurore extends ModelePDFSupplierProposal
|
|||
$tvacompl = " (".$outputlangs->transnoentities("NonPercuRecuperable").")";
|
||||
}
|
||||
$totalvat = $outputlangs->transcountrynoentities("TotalLT2", $mysoc->country_code).' ';
|
||||
$totalvat .= vatrate((string) abs((float) $tvakey), 1).$tvacompl;
|
||||
$totalvat .= vatrate((string) abs((float) $tvakey), true).$tvacompl;
|
||||
$pdf->MultiCell($col2x - $col1x, $tab2_hl, $totalvat, 0, 'L', 1);
|
||||
|
||||
$pdf->SetXY($col2x, $tab2_top + $tab2_hl * $index);
|
||||
|
|
@ -995,7 +995,7 @@ class pdf_aurore extends ModelePDFSupplierProposal
|
|||
$tvacompl = " (".$outputlangs->transnoentities("NonPercuRecuperable").")";
|
||||
}
|
||||
$totalvat = $outputlangs->transcountrynoentities("TotalVAT", $mysoc->country_code).' ';
|
||||
$totalvat .= vatrate($tvakey, 1).$tvacompl;
|
||||
$totalvat .= vatrate($tvakey, true).$tvacompl;
|
||||
$pdf->MultiCell($col2x - $col1x, $tab2_hl, $totalvat, 0, 'L', 1);
|
||||
|
||||
$pdf->SetXY($col2x, $tab2_top + $tab2_hl * $index);
|
||||
|
|
@ -1025,7 +1025,7 @@ class pdf_aurore extends ModelePDFSupplierProposal
|
|||
}
|
||||
$totalvat = $outputlangs->transcountrynoentities("TotalLT1", $mysoc->country_code).' ';
|
||||
|
||||
$totalvat .= vatrate((string) abs((float) $tvakey), 1).$tvacompl;
|
||||
$totalvat .= vatrate((string) abs((float) $tvakey), true).$tvacompl;
|
||||
$pdf->MultiCell($col2x - $col1x, $tab2_hl, $totalvat, 0, 'L', 1);
|
||||
$pdf->SetXY($col2x, $tab2_top + $tab2_hl * $index);
|
||||
$pdf->MultiCell($largcol2, $tab2_hl, price($tvaval, 0, $outputlangs), 0, 'R', 1);
|
||||
|
|
@ -1056,7 +1056,7 @@ class pdf_aurore extends ModelePDFSupplierProposal
|
|||
}
|
||||
$totalvat = $outputlangs->transcountrynoentities("TotalLT2", $mysoc->country_code).' ';
|
||||
|
||||
$totalvat .= vatrate((string) abs((float) $tvakey), 1).$tvacompl;
|
||||
$totalvat .= vatrate((string) abs((float) $tvakey), true).$tvacompl;
|
||||
$pdf->MultiCell($col2x - $col1x, $tab2_hl, $totalvat, 0, 'L', 1);
|
||||
|
||||
$pdf->SetXY($col2x, $tab2_top + $tab2_hl * $index);
|
||||
|
|
|
|||
|
|
@ -5,7 +5,7 @@
|
|||
* Copyright (C) 2010-2014 Juanjo Menent <jmenent@2byte.es>
|
||||
* Copyright (C) 2015 Marcos García <marcosgdf@gmail.com>
|
||||
* Copyright (C) 2017 Ferran Marcet <fmarcet@2byte.es>
|
||||
* Copyright (C) 2018-2024 Frédéric France <frederic.france@free.fr>
|
||||
* Copyright (C) 2018-2025 Frédéric France <frederic.france@free.fr>
|
||||
* Copyright (C) 2024 MDW <mdeweerd@users.noreply.github.com>
|
||||
* Copyright (C) 2024 Nick Fragoulis
|
||||
*
|
||||
|
|
@ -970,7 +970,7 @@ class pdf_zenith extends ModelePDFSupplierProposal
|
|||
}
|
||||
|
||||
$totalvat = $outputlangs->transcountrynoentities("TotalVAT", $mysoc->country_code).' ';
|
||||
$totalvat .= vatrate($tvakey, 1).$tvacompl;
|
||||
$totalvat .= vatrate($tvakey, true).$tvacompl;
|
||||
$pdf->MultiCell($col2x - $col1x, $tab2_hl, $totalvat, 0, 'L', 1);
|
||||
|
||||
$pdf->SetXY($col2x, $tab2_top + $tab2_hl * $index);
|
||||
|
|
@ -1024,7 +1024,7 @@ class pdf_zenith extends ModelePDFSupplierProposal
|
|||
$tvacompl = " (".$outputlangs->transnoentities("NonPercuRecuperable").")";
|
||||
}
|
||||
$totalvat = $outputlangs->transcountrynoentities("TotalLT1", $mysoc->country_code).' ';
|
||||
$totalvat .= vatrate((string) abs((float) $tvakey), 1).$tvacompl;
|
||||
$totalvat .= vatrate((string) abs((float) $tvakey), true).$tvacompl;
|
||||
$pdf->MultiCell($col2x - $col1x, $tab2_hl, $totalvat, 0, 'L', 1);
|
||||
|
||||
$pdf->SetXY($col2x, $tab2_top + $tab2_hl * $index);
|
||||
|
|
@ -1054,7 +1054,7 @@ class pdf_zenith extends ModelePDFSupplierProposal
|
|||
$tvacompl = " (".$outputlangs->transnoentities("NonPercuRecuperable").")";
|
||||
}
|
||||
$totalvat = $outputlangs->transcountrynoentities("TotalLT2", $mysoc->country_code).' ';
|
||||
$totalvat .= vatrate((string) abs((float) $tvakey), 1).$tvacompl;
|
||||
$totalvat .= vatrate((string) abs((float) $tvakey), true).$tvacompl;
|
||||
$pdf->MultiCell($col2x - $col1x, $tab2_hl, $totalvat, 0, 'L', 1);
|
||||
|
||||
$pdf->SetXY($col2x, $tab2_top + $tab2_hl * $index);
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
<?php
|
||||
/* Copyright (C) 2017-2024 Laurent Destailleur <eldy@users.sourceforge.net>
|
||||
* Copyright (C) 2024 Frédéric France <frederic.france@free.fr>
|
||||
* Copyright (C) 2024-2025 Frédéric France <frederic.france@free.fr>
|
||||
*
|
||||
* 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
|
||||
|
|
@ -305,6 +305,6 @@ unset($dolibarr_main_db_port);
|
|||
unset($dolibarr_main_db_name);
|
||||
unset($dolibarr_main_db_user);
|
||||
unset($dolibarr_main_db_pass);
|
||||
unset($$dolibarr_main_db_type);
|
||||
unset($dolibarr_main_db_type);
|
||||
unset($dolibarr_main_document_root);
|
||||
unset($dolibarr_main_document_root_alt);
|
||||
|
|
|
|||
|
|
@ -6,7 +6,7 @@
|
|||
* Copyright (C) 2019 Josep Lluís Amador <joseplluis@lliuretic.cat>
|
||||
* Copyright (C) 2021 Nicolas ZABOURI <info@inovea-conseil.com>
|
||||
* Copyright (C) 2024 MDW <mdeweerd@users.noreply.github.com>
|
||||
* Copyright (C) 2024 Frédéric France <frederic.france@free.fr>
|
||||
* Copyright (C) 2024-2025 Frédéric France <frederic.france@free.fr>
|
||||
*
|
||||
* 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
|
||||
|
|
@ -281,7 +281,7 @@ if (getDolGlobalString('TAKEPOS_SHOW_DATE_OF_PRINING')) {
|
|||
?>
|
||||
<tr>
|
||||
<th align="right"><?php if ($gift != 1) {
|
||||
echo $langs->trans("VAT").' '.vatrate($key, 1);
|
||||
echo $langs->trans("VAT").' '.vatrate($key, true);
|
||||
} ?></th>
|
||||
<td align="right"><?php if ($gift != 1) {
|
||||
echo price($val, 1, '', 1, - 1, - 1, $conf->currency)."\n";
|
||||
|
|
|
|||
|
|
@ -1,11 +1,23 @@
|
|||
<?php
|
||||
/* Copyright (C) 2024 MDW <mdeweerd@users.noreply.github.com>
|
||||
* Copyright (C) 2025 Frédéric France <frederic.france@free.fr>
|
||||
*/
|
||||
if (!defined('ISLOADEDBYSTEELSHEET')) {
|
||||
die('Must be called by steelsheet');
|
||||
}
|
||||
|
||||
// From theme_vars.inc, must be included by steelsheet
|
||||
/**
|
||||
* @var string $badgePrimary
|
||||
* @var string $badgeSecondary
|
||||
* @var string $badgeSuccess
|
||||
* @var string $badgeDanger
|
||||
* @var string $badgeWarning
|
||||
* @var string $badgeInfo
|
||||
* @var string $badgeLight
|
||||
* @var string $badgeDark
|
||||
* @var string $colorblind_deuteranopes_badgeWarning
|
||||
*/
|
||||
'
|
||||
@phan-var-force string $badgePrimary
|
||||
@phan-var-force string $badgeSecondary
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user