dolibarr 18.0.6
pdf_other.php
1<?php
2/* Copyright (C) 2001-2005 Rodolphe Quiedeville <rodolphe@quiedeville.org>
3 * Copyright (C) 2004-2012 Laurent Destailleur <eldy@users.sourceforge.net>
4 * Copyright (C) 2005-2011 Regis Houssin <regis.houssin@inodbox.com>
5 * Copyright (C) 2012-2107 Juanjo Menent <jmenent@2byte.es>
6 * Copyright (C) 2019 Ferran Marcet <fmarcet@2byte.es>
7 * Copyright (C) 2021-2022 Anthony Berton <bertonanthony@gmail.com>
8 * Copyright (C) 2022 Alexandre Spangaro <aspangaro@open-dsi.fr>
9 *
10 * This program is free software; you can redistribute it and/or modify
11 * it under the terms of the GNU General Public License as published by
12 * the Free Software Foundation; either version 3 of the License, or
13 * (at your option) any later version.
14 *
15 * This program is distributed in the hope that it will be useful,
16 * but WITHOUT ANY WARRANTY; without even the implied warranty of
17 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18 * GNU General Public License for more details.
19 *
20 * You should have received a copy of the GNU General Public License
21 * along with this program. If not, see <https://www.gnu.org/licenses/>.
22 */
23
29// Load Dolibarr environment
30require '../main.inc.php';
31require_once DOL_DOCUMENT_ROOT.'/core/class/html.formother.class.php';
32require_once DOL_DOCUMENT_ROOT.'/core/class/html.formadmin.class.php';
33require_once DOL_DOCUMENT_ROOT.'/core/lib/usergroups.lib.php';
34require_once DOL_DOCUMENT_ROOT.'/core/lib/admin.lib.php';
35require_once DOL_DOCUMENT_ROOT.'/core/lib/functions2.lib.php';
36require_once DOL_DOCUMENT_ROOT.'/core/lib/pdf.lib.php';
37
38// Load translation files required by the page
39$langs->loadLangs(array('admin', 'bills', 'companies', 'languages', 'members', 'other', 'products', 'propal', 'receptions', 'stocks', 'trips'));
40
41if (!$user->admin) {
43}
44
45$action = GETPOST('action', 'aZ09');
46
47
48/*
49 * Actions
50 */
51
52if ($action == 'update') {
53 if (GETPOSTISSET('MAIN_PDF_PROPAL_USE_ELECTRONIC_SIGNING')) {
54 dolibarr_set_const($db, "MAIN_PDF_PROPAL_USE_ELECTRONIC_SIGNING", GETPOST("MAIN_PDF_PROPAL_USE_ELECTRONIC_SIGNING"), 'chaine', 0, '', $conf->entity);
55 }
56 if (GETPOSTISSET('PROPOSAL_PDF_HIDE_PAYMENTTERM')) {
57 dolibarr_set_const($db, "PROPOSAL_PDF_HIDE_PAYMENTTERM", GETPOST("PROPOSAL_PDF_HIDE_PAYMENTTERM"), 'chaine', 0, '', $conf->entity);
58 }
59 if (GETPOSTISSET('PROPOSAL_PDF_HIDE_PAYMENTMODE')) {
60 dolibarr_set_const($db, "PROPOSAL_PDF_HIDE_PAYMENTMODE", GETPOST("PROPOSAL_PDF_HIDE_PAYMENTMODE"), 'chaine', 0, '', $conf->entity);
61 }
62 if (GETPOSTISSET('MAIN_GENERATE_PROPOSALS_WITH_PICTURE')) {
63 dolibarr_set_const($db, "MAIN_GENERATE_PROPOSALS_WITH_PICTURE", GETPOST("MAIN_GENERATE_PROPOSALS_WITH_PICTURE"), 'chaine', 0, '', $conf->entity);
64 }
65 if (GETPOSTISSET('MAIN_DOCUMENTS_WITH_PICTURE_WIDTH')) {
66 dolibarr_set_const($db, "MAIN_DOCUMENTS_WITH_PICTURE_WIDTH", GETPOST("MAIN_DOCUMENTS_WITH_PICTURE_WIDTH", 'int'), 'chaine', 0, '', $conf->entity);
67 }
68 if (GETPOSTISSET('INVOICE_ADD_ZATCA_QR_CODE')) {
69 dolibarr_set_const($db, "INVOICE_ADD_ZATCA_QR_CODE", GETPOST("INVOICE_ADD_ZATCA_QR_CODE", 'int'), 'chaine', 0, '', $conf->entity);
70 dolibarr_del_const($db, "INVOICE_ADD_SWISS_QR_CODE", $conf->entity);
71 }
72 if (GETPOSTISSET('INVOICE_ADD_SWISS_QR_CODE')) {
73 dolibarr_set_const($db, "INVOICE_ADD_SWISS_QR_CODE", GETPOST("INVOICE_ADD_SWISS_QR_CODE", 'alpha'), 'chaine', 0, '', $conf->entity);
74 dolibarr_del_const($db, "INVOICE_ADD_ZATCA_QR_CODE", $conf->entity);
75 }
76 if (GETPOSTISSET('INVOICE_CATEGORY_OF_OPERATION')) {
77 dolibarr_set_const($db, "INVOICE_CATEGORY_OF_OPERATION", GETPOST("INVOICE_CATEGORY_OF_OPERATION", 'int'), 'chaine', 0, '', $conf->entity);
78 }
79 if (GETPOSTISSET('INVOICE_SHOW_SHIPPING_ADDRESS')) {
80 dolibarr_set_const($db, "INVOICE_SHOW_SHIPPING_ADDRESS", GETPOST("INVOICE_SHOW_SHIPPING_ADDRESS", 'int'), 'chaine', 0, '', $conf->entity);
81 dolibarr_del_const($db, "INVOICE_SHOW_SHIPPING_ADDRESS", $conf->entity);
82 }
83
84 setEventMessages($langs->trans("SetupSaved"), null, 'mesgs');
85
86 header("Location: ".$_SERVER["PHP_SELF"]."?mainmenu=home&leftmenu=setup");
87 exit;
88}
89
90
91
92/*
93 * View
94 */
95
96$wikihelp = 'EN:First_setup|FR:Premiers_param&eacute;trages|ES:Primeras_configuraciones';
97llxHeader('', $langs->trans("Setup"), $wikihelp);
98
99$form = new Form($db);
100$formother = new FormOther($db);
101$formadmin = new FormAdmin($db);
102
103print load_fiche_titre($langs->trans("PDF"), '', 'title_setup');
104
105$head = pdf_admin_prepare_head();
106
107print dol_get_fiche_head($head, 'other', '', -1, '');
108
109$tooltiptext = '';
110print '<span class="opacitymedium">'.$form->textwithpicto($langs->trans("PDFOtherDesc"), $tooltiptext)."</span><br>\n";
111print "<br>\n";
112
113print '<form method="post" action="'.$_SERVER["PHP_SELF"].'">';
114print '<input type="hidden" name="token" value="'.newToken().'">';
115print '<input type="hidden" name="action" value="update">';
116
117if (isModEnabled('propal')) {
118 print load_fiche_titre($langs->trans("Proposal"), '', 'proposal');
119
120 print '<div class="div-table-responsive-no-min">';
121 print '<table summary="more" class="noborder centpercent">';
122 print '<tr class="liste_titre"><td class="titlefieldmiddle">'.$langs->trans("Parameter").'</td><td width="200px">'.$langs->trans("Value").'</td></tr>';
123
124
125 print '<tr class="oddeven"><td>';
126 print $form->textwithpicto($langs->trans("MAIN_PDF_PROPAL_USE_ELECTRONIC_SIGNING"), '');
127 print '</td><td>';
128 if ($conf->use_javascript_ajax) {
129 print ajax_constantonoff('MAIN_PDF_PROPAL_USE_ELECTRONIC_SIGNING');
130 } else {
131 $arrval = array('0' => $langs->trans("No"), '1' => $langs->trans("Yes"));
132 print $form->selectarray("MAIN_PDF_PROPAL_USE_ELECTRONIC_SIGNING", $arrval, $conf->global->MAIN_PDF_PROPAL_USE_ELECTRONIC_SIGNING);
133 }
134 print '</td></tr>';
135
136 print '<tr class="oddeven"><td>';
137 print $form->textwithpicto($langs->trans("MAIN_GENERATE_PROPOSALS_WITH_PICTURE"), $langs->trans("RandomlySelectedIfSeveral"));
138 print '</td><td>';
139 if ($conf->use_javascript_ajax) {
140 print ajax_constantonoff('MAIN_GENERATE_PROPOSALS_WITH_PICTURE');
141 } else {
142 $arrval = array('0' => $langs->trans("No"), '1' => $langs->trans("Yes"));
143 print $form->selectarray("MAIN_GENERATE_PROPOSALS_WITH_PICTURE", $arrval, $conf->global->MAIN_GENERATE_PROPOSALS_WITH_PICTURE);
144 }
145 print '</td></tr>';
146
147 print '</table>';
148 print '</div>';
149}
150
151
152if (isModEnabled('facture')) {
153 print load_fiche_titre($langs->trans("Invoices"), '', 'bill');
154
155 print '<div class="div-table-responsive-no-min">';
156 print '<table summary="more" class="noborder centpercent">';
157 print '<tr class="liste_titre"><td class="titlefieldmiddle">'.$langs->trans("Parameters").'</td><td width="200px">'.$langs->trans("Value").'</td></tr>';
158
159 print '<tr class="oddeven"><td>';
160 print $form->textwithpicto($langs->trans("INVOICE_ADD_ZATCA_QR_CODE"), $langs->trans("INVOICE_ADD_ZATCA_QR_CODEMore"));
161 print '</td><td>';
162 if ($conf->use_javascript_ajax) {
163 print ajax_constantonoff('INVOICE_ADD_ZATCA_QR_CODE');
164 } else {
165 $arrval = array('0' => $langs->trans("No"), '1' => $langs->trans("Yes"));
166 print $form->selectarray("INVOICE_ADD_ZATCA_QR_CODE", $arrval, getDolGlobalString('INVOICE_ADD_ZATCA_QR_CODE'));
167 }
168 print '</td></tr>';
169
170 print '<tr class="oddeven"><td>';
171 if (getDolGlobalString('INVOICE_ADD_SWISS_QR_CODE') == 'bottom') {
172 print $form->textwithpicto($langs->trans("INVOICE_ADD_SWISS_QR_CODE"), $langs->trans("INVOICE_ADD_SWISS_QR_CODEMore"));
173 } else {
174 print $langs->trans("INVOICE_ADD_SWISS_QR_CODE");
175 }
176 print '</td><td>';
177 $arrval = array('0' => $langs->trans("No"), '1' => $langs->trans("Yes"));
178 if (getDolGlobalString('MAIN_FEATURES_LEVEL') >= 1) {
179 $arrval['bottom'] = $langs->trans("AtBottomOfPage").' ('.$langs->trans("Experimental").' - Need PHP 8.1+ and some PHP libs)';
180 }
181 print $form->selectarray("INVOICE_ADD_SWISS_QR_CODE", $arrval, getDolGlobalString('INVOICE_ADD_SWISS_QR_CODE'));
182 print '</td></tr>';
183
184 // Mention category of operations
185 // French Decret n°2099-1299 2022-10-07
186 print '<tr class="oddeven"><td>';
187 print $form->textwithpicto($langs->trans("InvoiceOptionCategoryOfOperations"), $langs->trans('InvoiceOptionCategoryOfOperationsHelp'), 1);
188 print '</td><td>';
189 $arrval = array('0'=>$langs->trans("No"),
190 '1'=>$langs->trans("InvoiceOptionCategoryOfOperationsYes1"),
191 '2'=>$langs->trans("InvoiceOptionCategoryOfOperationsYes2")
192 );
193 print $form->selectarray("INVOICE_CATEGORY_OF_OPERATION", $arrval, $conf->global->INVOICE_CATEGORY_OF_OPERATION, 0, 0, 0, '', 0, 0, 0, '', 'minwidth75imp');
194 print '</td></tr>';
195
196 print '<tr class="oddeven"><td>';
197 print $form->textwithpicto($langs->trans("INVOICE_SHOW_SHIPPING_ADDRESS"), $langs->trans("INVOICE_SHOW_SHIPPING_ADDRESSMore"));
198 print '</td><td>';
199 if ($conf->use_javascript_ajax) {
200 print ajax_constantonoff('INVOICE_SHOW_SHIPPING_ADDRESS');
201 } else {
202 $arrval = array('0' => $langs->trans("No"), '1' => $langs->trans("Yes"));
203 print $form->selectarray("INVOICE_SHOW_SHIPPING_ADDRESS", $arrval, $conf->global->INVOICE_SHOW_SHIPPING_ADDRESS);
204 }
205 print '</td></tr>';
206
207 print '</table>';
208 print '</div>';
209}
210
211
212
213if (isModEnabled('reception')) {
214 print load_fiche_titre($langs->trans("Receptions"), '', 'reception');
215
216 print '<div class="div-table-responsive-no-min">';
217 print '<table summary="more" class="noborder centpercent">';
218 print '<tr class="liste_titre"><td class="titlefieldmiddle">'.$langs->trans("Parameters").'</td><td width="200px">'.$langs->trans("Value").'</td></tr>';
219
220 print '<tr class="oddeven"><td>';
221 print $langs->trans("RECEPTION_PDF_HIDE_ORDERED");
222 print '</td><td>';
223 if ($conf->use_javascript_ajax) {
224 print ajax_constantonoff('RECEPTION_PDF_HIDE_ORDERED');
225 } else {
226 $arrval = array('0' => $langs->trans("No"), '1' => $langs->trans("Yes"));
227 print $form->selectarray("RECEPTION_PDF_HIDE_ORDERED", $arrval, $conf->global->RECEPTION_PDF_HIDE_ORDERED);
228 }
229 print '</td></tr>';
230
231 print '<tr class="oddeven"><td>';
232 print $langs->trans("MAIN_PDF_RECEPTION_DISPLAY_AMOUNT_HT");
233 print '</td><td>';
234 if ($conf->use_javascript_ajax) {
235 print ajax_constantonoff('MAIN_PDF_RECEPTION_DISPLAY_AMOUNT_HT');
236 } else {
237 $arrval = array('0' => $langs->trans("No"), '1' => $langs->trans("Yes"));
238 print $form->selectarray("MAIN_PDF_RECEPTION_DISPLAY_AMOUNT_HT", $arrval, $conf->global->MAIN_PDF_RECEPTION_DISPLAY_AMOUNT_HT);
239 }
240 print '</td></tr>';
241
242 print '</table>';
243 print '</div>';
244}
245
246
247print '<br><div class="center">';
248print '<input class="button button-save" type="submit" name="save" value="'.$langs->trans("Save").'">';
249print '</div>';
250
251print '</form>';
252
253
254// End of page
255llxFooter();
256$db->close();
dolibarr_set_const($db, $name, $value, $type='chaine', $visible=0, $note='', $entity=1)
Insert a parameter (key,value) into database (delete old key then insert it again).
dolibarr_del_const($db, $name, $entity=1)
Delete a constant.
if(!defined('NOREQUIRESOC')) if(!defined( 'NOREQUIRETRAN')) if(!defined('NOTOKENRENEWAL')) if(!defined( 'NOREQUIREMENU')) if(!defined('NOREQUIREHTML')) if(!defined( 'NOREQUIREAJAX')) llxHeader()
Empty header.
Definition wrapper.php:56
llxFooter()
Empty footer.
Definition wrapper.php:70
Class to generate html code for admin pages.
Class to manage generation of HTML components Only common components must be here.
Classe permettant la generation de composants html autre Only common components are here.
load_fiche_titre($titre, $morehtmlright='', $picto='generic', $pictoisfullpath=0, $id='', $morecssontable='', $morehtmlcenter='')
Load a title with picto.
dol_get_fiche_head($links=array(), $active='', $title='', $notab=0, $picto='', $pictoisfullpath=0, $morehtmlright='', $morecss='', $limittoshow=0, $moretabssuffix='', $dragdropfile=0)
Show tabs of a record.
GETPOST($paramname, $check='alphanohtml', $method=0, $filter=null, $options=null, $noreplace=0)
Return value of a param into GET or POST supervariable.
setEventMessages($mesg, $mesgs, $style='mesgs', $messagekey='', $noduplicate=0)
Set event messages in dol_events session object.
getDolGlobalString($key, $default='')
Return dolibarr global constant string value.
pdf_admin_prepare_head()
Return array head with list of tabs to view object informations.
Definition pdf.lib.php:47
accessforbidden($message='', $printheader=1, $printfooter=1, $showonlymessage=0, $params=null)
Show a message to say access is forbidden and stop program.