31require
'../main.inc.php';
32require_once DOL_DOCUMENT_ROOT.
'/core/lib/admin.lib.php';
33require_once DOL_DOCUMENT_ROOT.
'/core/lib/company.lib.php';
34require_once DOL_DOCUMENT_ROOT.
'/core/lib/date.lib.php';
35require_once DOL_DOCUMENT_ROOT.
'/core/lib/images.lib.php';
36require_once DOL_DOCUMENT_ROOT.
'/core/lib/files.lib.php';
37require_once DOL_DOCUMENT_ROOT.
'/core/lib/functions2.lib.php';
38require_once DOL_DOCUMENT_ROOT.
'/core/class/html.formother.class.php';
39require_once DOL_DOCUMENT_ROOT.
'/core/class/html.formcompany.class.php';
41$action =
GETPOST(
'action',
'aZ09');
42$contextpage =
GETPOST(
'contextpage',
'aZ') ?
GETPOST(
'contextpage',
'aZ') :
'admincompany';
45$langs->loadLangs(array(
'admin',
'companies',
'bills'));
54$hookmanager->initHooks(array(
'admincompany',
'globaladmin'));
62$reshook = $hookmanager->executeHooks(
'doActions', $parameters, $object, $action);
67if (($action ==
'update' && !
GETPOST(
"cancel",
'alpha'))
68|| ($action ==
'updateedit')) {
70 if (!empty($tmparray[
'id'])) {
71 if ($tmparray[
'code'] ==
'FR' && $tmparray[
'id'] != $mysoc->country_id) {
73 $res =
dolibarr_set_const($db,
"MAIN_PROFID1_IN_ADDRESS", 1,
'chaine', 0,
'', $conf->entity);
76 $mysoc->country_id = $tmparray[
'id'];
77 $mysoc->country_code = $tmparray[
'code'];
78 $mysoc->country_label = $tmparray[
'label'];
80 $s = $mysoc->country_id.
':'.$mysoc->country_code.
':'.$mysoc->country_label;
81 dolibarr_set_const($db,
"MAIN_INFO_SOCIETE_COUNTRY", $s,
'chaine', 0,
'', $conf->entity);
86 $tmparray =
getState(
GETPOST(
'state_id',
'int'),
'all', $db, $langs, 0);
87 if (!empty($tmparray[
'id'])) {
88 $mysoc->state_id = $tmparray[
'id'];
89 $mysoc->state_code = $tmparray[
'code'];
90 $mysoc->state_label = $tmparray[
'label'];
92 $s = $mysoc->state_id.
':'.$mysoc->state_code.
':'.$mysoc->state_label;
93 dolibarr_set_const($db,
"MAIN_INFO_SOCIETE_STATE", $s,
'chaine', 0,
'', $conf->entity);
101 dolibarr_set_const($db,
"MAIN_INFO_SOCIETE_ADDRESS",
GETPOST(
"MAIN_INFO_SOCIETE_ADDRESS",
'alphanohtml'),
'chaine', 0,
'', $conf->entity);
102 dolibarr_set_const($db,
"MAIN_INFO_SOCIETE_TOWN",
GETPOST(
"MAIN_INFO_SOCIETE_TOWN",
'alphanohtml'),
'chaine', 0,
'', $conf->entity);
103 dolibarr_set_const($db,
"MAIN_INFO_SOCIETE_ZIP",
GETPOST(
"MAIN_INFO_SOCIETE_ZIP",
'alphanohtml'),
'chaine', 0,
'', $conf->entity);
104 dolibarr_set_const($db,
"MAIN_INFO_SOCIETE_REGION",
GETPOST(
"region_code",
'alphanohtml'),
'chaine', 0,
'', $conf->entity);
113 $dirforimage = $conf->mycompany->dir_output.
'/logos/';
115 $arrayofimages = array(
'logo',
'logo_squarred');
117 foreach ($arrayofimages as $varforimage) {
118 if ($_FILES[$varforimage][
"name"] && !preg_match(
'/(\.jpeg|\.jpg|\.png)$/i', $_FILES[$varforimage][
"name"])) {
119 $langs->load(
"errors");
127 if (preg_match(
'/([^\\/:]+)$/i', $_FILES[$varforimage][
"name"], $reg)) {
128 $original_file = $reg[1];
132 dol_syslog(
"Move file ".$_FILES[$varforimage][
"tmp_name"].
" to ".$dirforimage.$original_file);
133 if (!is_dir($dirforimage)) {
136 $result =
dol_move_uploaded_file($_FILES[$varforimage][
"tmp_name"], $dirforimage.$original_file, 1, 0, $_FILES[$varforimage][
'error']);
138 $constant =
"MAIN_INFO_SOCIETE_LOGO";
139 if ($varforimage ==
'logo_squarred') {
140 $constant =
"MAIN_INFO_SOCIETE_LOGO_SQUARRED";
151 $imgThumbSmall =
vignette($dirforimage.$original_file, $maxwidthsmall, $maxheightsmall,
'_small', $quality);
153 $imgThumbSmall = $reg[1];
154 dolibarr_set_const($db, $constant.
"_SMALL", $imgThumbSmall,
'chaine', 0,
'', $conf->entity);
160 $imgThumbMini =
vignette($dirforimage.$original_file, $maxwidthmini, $maxheightmini,
'_mini', $quality);
162 $imgThumbMini = $reg[1];
163 dolibarr_set_const($db, $constant.
"_MINI", $imgThumbMini,
'chaine', 0,
'', $conf->entity);
168 dol_syslog(
"ErrorImageFormatNotSupported", LOG_WARNING);
170 } elseif (preg_match(
'/^ErrorFileIsInfectedWithAVirus/', $result)) {
172 $langs->load(
"errors");
173 $tmparray = explode(
':', $result);
174 setEventMessages($langs->trans(
'ErrorFileIsInfectedWithAVirus', $tmparray[1]),
null,
'errors');
175 } elseif (preg_match(
'/^ErrorFileSizeTooLarge/', $result)) {
184 $langs->load(
"errors");
191 dolibarr_set_const($db,
"MAIN_INFO_SOCIETE_MANAGERS",
GETPOST(
"MAIN_INFO_SOCIETE_MANAGERS",
'alphanohtml'),
'chaine', 0,
'', $conf->entity);
194 dolibarr_set_const($db,
"MAIN_INFO_SOCIETE_FORME_JURIDIQUE",
GETPOST(
"forme_juridique_code",
'alphanohtml'),
'chaine', 0,
'', $conf->entity);
199 dolibarr_set_const($db,
"MAIN_INFO_PROFID5",
GETPOST(
"MAIN_INFO_PROFID5",
'alphanohtml'),
'chaine', 0,
'', $conf->entity);
200 dolibarr_set_const($db,
"MAIN_INFO_PROFID6",
GETPOST(
"MAIN_INFO_PROFID6",
'alphanohtml'),
'chaine', 0,
'', $conf->entity);
203 dolibarr_set_const($db,
"MAIN_INFO_SOCIETE_OBJECT",
GETPOST(
"socialobject",
'alphanohtml'),
'chaine', 0,
'', $conf->entity);
205 dolibarr_set_const($db,
"SOCIETE_FISCAL_MONTH_START",
GETPOST(
"SOCIETE_FISCAL_MONTH_START",
'int'),
'chaine', 0,
'', $conf->entity);
208 $usevat =
GETPOST(
"optiontva",
'aZ09');
209 $uselocaltax1 =
GETPOST(
"optionlocaltax1",
'aZ09');
210 $uselocaltax2 =
GETPOST(
"optionlocaltax2",
'aZ09');
211 if ($uselocaltax1 ==
'localtax1on' && !$usevat) {
212 setEventMessages($langs->trans(
"IfYouUseASecondTaxYouMustSetYouUseTheMainTax"),
null,
'errors');
215 if ($uselocaltax2 ==
'localtax2on' && !$usevat) {
216 setEventMessages($langs->trans(
"IfYouUseAThirdTaxYouMustSetYouUseTheMainTax"),
null,
'errors');
220 dolibarr_set_const($db,
"FACTURE_TVAOPTION", $usevat,
'chaine', 0,
'', $conf->entity);
221 dolibarr_set_const($db,
"FACTURE_LOCAL_TAX1_OPTION", $uselocaltax1,
'chaine', 0,
'', $conf->entity);
222 dolibarr_set_const($db,
"FACTURE_LOCAL_TAX2_OPTION", $uselocaltax2,
'chaine', 0,
'', $conf->entity);
224 if (
GETPOST(
"optionlocaltax1") ==
"localtax1on") {
225 if (!GETPOSTISSET(
'lt1')) {
226 dolibarr_set_const($db,
"MAIN_INFO_VALUE_LOCALTAX1", 0,
'chaine', 0,
'', $conf->entity);
232 if (
GETPOST(
"optionlocaltax2") ==
"localtax2on") {
233 if (!GETPOSTISSET(
'lt2')) {
234 dolibarr_set_const($db,
"MAIN_INFO_VALUE_LOCALTAX2", 0,
'chaine', 0,
'', $conf->entity);
253 if ($action !=
'updateedit' && !$error) {
254 header(
"Location: ".$_SERVER[
"PHP_SELF"]);
259if ($action ==
'addthumb' || $action ==
'addthumbsquarred') {
260 if (file_exists($conf->mycompany->dir_output.
'/logos/'.$_GET[
"file"])) {
265 $constant =
"MAIN_INFO_SOCIETE_LOGO";
266 if ($action ==
'addthumbsquarred') {
267 $constant =
"MAIN_INFO_SOCIETE_LOGO_SQUARRED";
276 $imgThumbSmall =
vignette($conf->mycompany->dir_output.
'/logos/'.$_GET[
"file"], $maxwidthsmall, $maxheightsmall,
'_small', $quality);
278 $imgThumbSmall = $reg[1];
279 dolibarr_set_const($db, $constant.
"_SMALL", $imgThumbSmall,
'chaine', 0,
'', $conf->entity);
285 $imgThumbMini =
vignette($conf->mycompany->dir_output.
'/logos/'.$_GET[
"file"], $maxwidthmini, $maxheightmini,
'_mini', $quality);
287 $imgThumbMini = $reg[1];
288 dolibarr_set_const($db, $constant.
"_MINI", $imgThumbMini,
'chaine', 0,
'', $conf->entity);
293 header(
"Location: ".$_SERVER[
"PHP_SELF"]);
297 $langs->load(
"errors");
299 dol_syslog($langs->transnoentities(
"ErrorBadImageFormat"), LOG_INFO);
303 $langs->load(
"errors");
305 dol_syslog($langs->transnoentities(
"ErrorFileDoesNotExists",
GETPOST(
"file")), LOG_WARNING);
310if ($action ==
'removelogo' || $action ==
'removelogosquarred') {
311 $constant =
"MAIN_INFO_SOCIETE_LOGO";
312 if ($action ==
'removelogosquarred') {
313 $constant =
"MAIN_INFO_SOCIETE_LOGO_SQUARRED";
316 require_once DOL_DOCUMENT_ROOT.
'/core/lib/files.lib.php';
318 $logofilename = $mysoc->logo;
319 $logofilenamebis = $mysoc->logo_squarred;
320 if ($action ==
'removelogosquarred') {
321 $logofilename = $mysoc->logo_squarred;
322 $logofilenamebis = $mysoc->logo;
325 $logofile = $conf->mycompany->dir_output.
'/logos/'.$logofilename;
326 if ($logofilename !=
'' && $logofilename != $logofilenamebis) {
330 if ($action ==
'removelogosquarred') {
331 $mysoc->logo_squarred =
'';
336 $logofilename = $mysoc->logo_small;
337 $logofilenamebis = $mysoc->logo_squarred_small;
338 if ($action ==
'removelogosquarred') {
339 $logofilename = $mysoc->logo_squarred_small;
340 $logofilenamebis = $mysoc->logo_small;
343 $logosmallfile = $conf->mycompany->dir_output.
'/logos/thumbs/'.$logofilename;
344 if ($logofilename !=
'' && $logofilename != $logofilenamebis) {
348 if ($action ==
'removelogosquarred') {
349 $mysoc->logo_squarred_small =
'';
351 $mysoc->logo_small =
'';
354 $logofilename = $mysoc->logo_mini;
355 $logofilenamebis = $mysoc->logo_squarred_mini;
356 if ($action ==
'removelogosquarred') {
357 $logofilename = $mysoc->logo_squarred_mini;
358 $logofilenamebis = $mysoc->logo_mini;
361 $logominifile = $conf->mycompany->dir_output.
'/logos/thumbs/'.$logofilename;
362 if ($logofilename !=
'' && $logofilename != $logofilenamebis) {
366 if ($action ==
'removelogosquarred') {
367 $mysoc->logo_squarred_mini =
'';
369 $mysoc->logo_mini =
'';
378$wikihelp =
'EN:First_setup|FR:Premiers_paramétrages|ES:Primeras_configuraciones';
379llxHeader(
'', $langs->trans(
"Setup"), $wikihelp);
381$form =
new Form($db);
385$countrynotdefined =
'<span class="error">'.$langs->trans(
"ErrorSetACountryFirst").
' <a href="#trzipbeforecountry">('.$langs->trans(
"SeeAbove").
')</a></span>';
387print
load_fiche_titre($langs->trans(
"CompanyFoundation"),
'',
'title_setup');
393print
'<span class="opacitymedium">'.$langs->trans(
"CompanyFundationDesc", $langs->transnoentities(
"Save")).
"</span><br>\n";
399if (!empty($conf->use_javascript_ajax)) {
400 print
"\n".
'<script type="text/javascript">';
401 print
'$(document).ready(function () {
402 $("#selectcountry_id").change(function() {
403 document.form_index.action.value="updateedit";
404 document.form_index.submit();
407 print
'</script>'.
"\n";
410print
'<form enctype="multipart/form-data" method="POST" action="'.$_SERVER[
"PHP_SELF"].
'" name="form_index">';
411print
'<input type="hidden" name="token" value="'.newToken().
'">';
412print
'<input type="hidden" name="action" value="update">';
414print
'<table class="noborder centpercent editmode">';
415print
'<tr class="liste_titre"><th class="titlefieldcreate wordbreak">'.$langs->trans(
"CompanyInfo").
'</th><th></th></tr>'.
"\n";
418print
'<tr class="oddeven"><td class="fieldrequired wordbreak"><label for="name">'.$langs->trans(
"CompanyName").
'</label></td><td>';
419print
'<input name="nom" id="name" class="minwidth200" value="'.dol_escape_htmltag((GETPOSTISSET(
'nom') ?
GETPOST(
'nom',
'alphanohtml') : (!empty($conf->global->MAIN_INFO_SOCIETE_NOM) ? $conf->global->MAIN_INFO_SOCIETE_NOM :
''))).
'"'.(empty($conf->global->MAIN_INFO_SOCIETE_NOM) ?
' autofocus="autofocus"' :
'').
'></td></tr>'.
"\n";
422print
'<tr class="oddeven"><td><label for="MAIN_INFO_SOCIETE_ADDRESS">'.$langs->trans(
"CompanyAddress").
'</label></td><td>';
423print
'<textarea name="MAIN_INFO_SOCIETE_ADDRESS" id="MAIN_INFO_SOCIETE_ADDRESS" class="quatrevingtpercent" rows="'.ROWS_3.
'">'.(GETPOSTISSET(
'MAIN_INFO_SOCIETE_ADDRESS') ?
GETPOST(
'MAIN_INFO_SOCIETE_ADDRESS',
'alphanohtml') : (!empty($conf->global->MAIN_INFO_SOCIETE_ADDRESS) ? $conf->global->MAIN_INFO_SOCIETE_ADDRESS :
'')).
'</textarea></td></tr>'.
"\n";
426print
'<tr class="oddeven" id="trzipbeforecountry"><td><label for="MAIN_INFO_SOCIETE_ZIP">'.$langs->trans(
"CompanyZip").
'</label></td><td>';
427print
'<input class="width100" name="MAIN_INFO_SOCIETE_ZIP" id="MAIN_INFO_SOCIETE_ZIP" value="'.dol_escape_htmltag((GETPOSTISSET(
'MAIN_INFO_SOCIETE_ZIP') ?
GETPOST(
'MAIN_INFO_SOCIETE_ZIP',
'alphanohtml') : (!empty($conf->global->MAIN_INFO_SOCIETE_ZIP) ? $conf->global->MAIN_INFO_SOCIETE_ZIP :
''))).
'"></td></tr>'.
"\n";
429print
'<tr class="oddeven" id="trtownbeforecountry"><td><label for="MAIN_INFO_SOCIETE_TOWN">'.$langs->trans(
"CompanyTown").
'</label></td><td>';
430print
'<input name="MAIN_INFO_SOCIETE_TOWN" class="minwidth200" id="MAIN_INFO_SOCIETE_TOWN" value="'.dol_escape_htmltag((GETPOSTISSET(
'MAIN_INFO_SOCIETE_TOWN') ?
GETPOST(
'MAIN_INFO_SOCIETE_TOWN',
'alphanohtml') : (!empty($conf->global->MAIN_INFO_SOCIETE_TOWN) ? $conf->global->MAIN_INFO_SOCIETE_TOWN :
''))).
'"></td></tr>'.
"\n";
433print
'<tr class="oddeven"><td class="fieldrequired"><label for="selectcountry_id">'.$langs->trans(
"Country").
'</label></td><td>';
434print
img_picto(
'',
'globe-americas',
'class="pictofixedwidth"');
435print $form->select_country($mysoc->country_id,
'country_id',
'', 0);
437 print
info_admin($langs->trans(
"YouCanChangeValuesForThisListFromDictionarySetup"), 1);
439print
'</td></tr>'.
"\n";
441print
'<tr class="oddeven"><td class="wordbreak"><label for="state_id">'.$langs->trans(
"State").
'</label></td><td>';
443if (!empty($conf->global->MAIN_INFO_SOCIETE_STATE)) {
444 $tmp = explode(
':', $conf->global->MAIN_INFO_SOCIETE_STATE);
447print
img_picto(
'',
'state',
'class="pictofixedwidth"');
448print $formcompany->select_state($state_id, $mysoc->country_code,
'state_id',
'maxwidth200onsmartphone minwidth300');
449print
'</td></tr>'.
"\n";
452print
'<tr class="oddeven"><td><label for="currency">'.$langs->trans(
"CompanyCurrency").
'</label></td><td>';
453print
img_picto(
'',
'multicurrency',
'class="pictofixedwidth"');
454print $form->selectCurrency($conf->currency,
"currency");
455print
'</td></tr>'.
"\n";
458print
'<tr class="oddeven"><td><label for="phone">'.$langs->trans(
"Phone").
'</label></td><td>';
459print
img_picto(
'',
'object_phoning',
'',
false, 0, 0,
'',
'pictofixedwidth');
460print
'<input class="maxwidth150 widthcentpercentminusx" name="tel" id="phone" value="'.dol_escape_htmltag((GETPOSTISSET(
'tel') ?
GETPOST(
'tel',
'alphanohtml') : (!empty($conf->global->MAIN_INFO_SOCIETE_TEL) ? $conf->global->MAIN_INFO_SOCIETE_TEL :
''))).
'"></td></tr>';
461print
'</td></tr>'.
"\n";
464print
'<tr class="oddeven"><td><label for="fax">'.$langs->trans(
"Fax").
'</label></td><td>';
465print
img_picto(
'',
'object_phoning_fax',
'',
false, 0, 0,
'',
'pictofixedwidth');
466print
'<input class="maxwidth150" name="fax" id="fax" value="'.dol_escape_htmltag((GETPOSTISSET(
'fax') ?
GETPOST(
'fax',
'alphanohtml') : (!empty($conf->global->MAIN_INFO_SOCIETE_FAX) ? $conf->global->MAIN_INFO_SOCIETE_FAX :
''))).
'"></td></tr>';
467print
'</td></tr>'.
"\n";
470print
'<tr class="oddeven"><td><label for="email">'.$langs->trans(
"EMail").
'</label></td><td>';
471print
img_picto(
'',
'object_email',
'',
false, 0, 0,
'',
'pictofixedwidth');
472print
'<input class="minwidth300 maxwidth500 widthcentpercentminusx" name="mail" id="email" value="'.dol_escape_htmltag((GETPOSTISSET(
'mail') ?
GETPOST(
'mail',
'alphanohtml') : (!empty($conf->global->MAIN_INFO_SOCIETE_MAIL) ? $conf->global->MAIN_INFO_SOCIETE_MAIL :
''))).
'"></td></tr>';
473print
'</td></tr>'.
"\n";
476print
'<tr class="oddeven"><td><label for="web">'.$langs->trans(
"Web").
'</label></td><td>';
477print
img_picto(
'',
'globe',
'',
false, 0, 0,
'',
'pictofixedwidth');
478print
'<input class="maxwidth300 widthcentpercentminusx" name="web" id="web" value="'.dol_escape_htmltag((GETPOSTISSET(
'web') ?
GETPOST(
'web',
'alphanohtml') : (!empty($conf->global->MAIN_INFO_SOCIETE_WEB) ? $conf->global->MAIN_INFO_SOCIETE_WEB :
''))).
'"></td></tr>';
479print
'</td></tr>'.
"\n";
482if (isModEnabled(
'barcode')) {
483 print
'<tr class="oddeven"><td>';
484 print
'<label for="barcode">'.$langs->trans(
"Gencod").
'</label></td><td>';
485 print
'<span class="fa fa-barcode pictofixedwidth"></span>';
486 print
'<input name="barcode" id="barcode" class="minwidth150 widthcentpercentminusx maxwidth300" value="'.dol_escape_htmltag((GETPOSTISSET(
'barcode') ?
GETPOST(
'barcode',
'alphanohtml') : (!empty($conf->global->MAIN_INFO_SOCIETE_GENCODE) ? $conf->global->MAIN_INFO_SOCIETE_GENCODE :
''))).
'"></td></tr>';
491$tooltiplogo = $langs->trans(
'AvailableFormats').
' : png, jpg, jpeg';
493$maxmin = $maxfilesizearray[
'maxmin'];
494$tooltiplogo .= ($maxmin > 0) ?
'<br>'.$langs->trans(
'MaxSize').
' : '.$maxmin.
' '.$langs->trans(
'Kb') :
'';
497print
'<tr class="oddeven"><td><label for="logo">'.$form->textwithpicto($langs->trans(
"Logo"), $tooltiplogo).
'</label></td><td>';
498print
'<div class="centpercent nobordernopadding valignmiddle "><div class="inline-block marginrightonly">';
500 print
'<input type="hidden" name="MAX_FILE_SIZE" value="'.($maxmin * 1024).
'">';
502print
'<input type="file" class="flat minwidth100 maxwidthinputfileonsmartphone" name="logo" id="logo" accept="image/*">';
504if (!empty($mysoc->logo_small)) {
505 if (file_exists($conf->mycompany->dir_output.
'/logos/thumbs/'.$mysoc->logo_small)) {
506 print
'<div class="inline-block valignmiddle">';
507 print
'<img style="max-height: 80px; max-width: 200px;" src="'.DOL_URL_ROOT.
'/viewimage.php?modulepart=mycompany&file='.urlencode(
'logos/thumbs/'.$mysoc->logo_small).
'">';
509 } elseif (!empty($mysoc->logo)) {
510 if (!file_exists($conf->mycompany->dir_output.
'/logos/thumbs/'.$mysoc->logo_mini)) {
511 $imgThumbMini =
vignette($conf->mycompany->dir_output.
'/logos/'.$mysoc->logo, $maxwidthmini, $maxheightmini,
'_mini', $quality);
513 $imgThumbSmall =
vignette($conf->mycompany->dir_output.
'/logos/'.$mysoc->logo, $maxwidthmini, $maxheightmini,
'_small', $quality);
514 print
'<div class="inline-block valignmiddle">';
515 print
'<img style="max-height: 80px; max-width: 200px;" src="'.DOL_URL_ROOT.
'/viewimage.php?modulepart=mycompany&file='.urlencode(
'logos/thumbs/'.basename($imgThumbSmall)).
'">';
518 print
'<div class="inline-block valignmiddle marginrightonly">';
519 print
'<a class="reposition" href="'.$_SERVER[
"PHP_SELF"].
'?action=removelogo&token='.newToken().
'">'.
img_delete($langs->trans(
"Delete"),
'',
'marginleftonly').
'</a>';
521} elseif (!empty($mysoc->logo)) {
522 if (file_exists($conf->mycompany->dir_output.
'/logos/'.$mysoc->logo)) {
523 print
'<div class="inline-block valignmiddle">';
524 print
'<img style="max-height: 80px" src="'.DOL_URL_ROOT.
'/viewimage.php?modulepart=mycompany&file='.urlencode(
'logos/'.$mysoc->logo).
'">';
526 print
'<div class="inline-block valignmiddle marginrightonly"><a class="reposition" href="'.$_SERVER[
"PHP_SELF"].
'?action=removelogo&token='.newToken().
'">'.
img_delete($langs->trans(
"Delete"),
'',
'marginleftonly').
'</a></div>';
528 print
'<div class="inline-block valignmiddle">';
529 print
'<img height="80" src="'.DOL_URL_ROOT.
'/public/theme/common/nophoto.png">';
537print
'<tr class="oddeven"><td><label for="logo_squarred">'.$form->textwithpicto($langs->trans(
"LogoSquarred"), $tooltiplogo).
'</label></td><td>';
538print
'<div class="centpercent nobordernopadding valignmiddle"><div class="inline-block marginrightonly">';
540$maxmin = $maxfilesizearray[
'maxmin'];
542 print
'<input type="hidden" name="MAX_FILE_SIZE" value="'.($maxmin * 1024).
'">';
544print
'<input type="file" class="flat minwidth100 maxwidthinputfileonsmartphone" name="logo_squarred" id="logo_squarred" accept="image/*">';
546if (!empty($mysoc->logo_squarred_small)) {
547 if (file_exists($conf->mycompany->dir_output.
'/logos/thumbs/'.$mysoc->logo_squarred_small)) {
548 print
'<div class="inline-block valignmiddle marginrightonly">';
549 print
'<img style="max-height: 80px" src="'.DOL_URL_ROOT.
'/viewimage.php?modulepart=mycompany&file='.urlencode(
'logos/thumbs/'.$mysoc->logo_squarred_small).
'">';
551 } elseif (!empty($mysoc->logo_squarred)) {
552 if (!file_exists($conf->mycompany->dir_output.
'/logos/thumbs/'.$mysoc->logo_squarred_mini)) {
553 $imgThumbMini =
vignette($conf->mycompany->dir_output.
'/logos/'.$mysoc->logo_squarred, $maxwidthmini, $maxheightmini,
'_mini', $quality);
555 $imgThumbSmall =
vignette($conf->mycompany->dir_output.
'/logos/'.$mysoc->logo_squarred, $maxwidthmini, $maxheightmini,
'_small', $quality);
556 print
'<div class="inline-block valignmiddle">';
557 print
'<img style="max-height: 80px" src="'.DOL_URL_ROOT.
'/viewimage.php?modulepart=mycompany&file='.urlencode(
'logos/thumbs/'.basename($imgThumbSmall)).
'">';
560 print
'<div class="inline-block valignmiddle marginrightonly"><a class="reposition" href="'.$_SERVER[
"PHP_SELF"].
'?action=removelogosquarred&token='.newToken().
'">'.
img_delete($langs->trans(
"Delete"),
'',
'marginleftonly').
'</a></div>';
561} elseif (!empty($mysoc->logo_squarred)) {
562 if (file_exists($conf->mycompany->dir_output.
'/logos/'.$mysoc->logo_squarred)) {
563 print
'<div class="inline-block valignmiddle">';
564 print
'<img style="max-height: 80px" src="'.DOL_URL_ROOT.
'/viewimage.php?modulepart=mycompany&file='.urlencode(
'logos/'.$mysoc->logo_squarred).
'">';
566 print
'<div class="inline-block valignmiddle marginrightonly"><a class="reposition" href="'.$_SERVER[
"PHP_SELF"].
'?action=removelogosquarred&token='.newToken().
'">'.
img_delete($langs->trans(
"Delete"),
'',
'marginleftonly').
'</a></div>';
568 print
'<div class="inline-block valignmiddle">';
569 print
'<img height="80" src="'.DOL_URL_ROOT.
'/public/theme/common/nophoto.png">';
577print
'<tr class="oddeven"><td class="tdtop"><label for="note">'.$langs->trans(
"Note").
'</label></td><td>';
578print
'<textarea class="flat quatrevingtpercent" name="note" id="note" rows="'.ROWS_5.
'">'.(GETPOSTISSET(
'note') ?
GETPOST(
'note',
'restricthtml') : (!empty($conf->global->MAIN_INFO_SOCIETE_NOTE) ? $conf->global->MAIN_INFO_SOCIETE_NOTE :
'')).
'</textarea></td></tr>';
588print
'<div class="div-table-responsive-no-min">';
589print
'<table class="noborder centpercent editmode">';
590print
'<tr class="liste_titre"><td class="titlefieldcreate wordbreak">'.$langs->trans(
"CompanyIds").
'</td><td></td></tr>';
592$langs->load(
"companies");
595print
'<tr class="oddeven"><td><label for="director">'.$langs->trans(
"ManagingDirectors").
'</label></td><td>';
596print
'<input name="MAIN_INFO_SOCIETE_MANAGERS" id="directors" class="minwidth300" value="'.dol_escape_htmltag((GETPOSTISSET(
'MAIN_INFO_SOCIETE_MANAGERS') ?
GETPOST(
'MAIN_INFO_SOCIETE_MANAGERS',
'alphanohtml') : (!empty($conf->global->MAIN_INFO_SOCIETE_MANAGERS) ? $conf->global->MAIN_INFO_SOCIETE_MANAGERS :
''))).
'"></td></tr>';
599print
'<tr class="oddeven"><td>';
600print $form->textwithpicto($langs->trans(
"GDPRContact"), $langs->trans(
"GDPRContactDesc"));
602print
'<input name="MAIN_INFO_GDPR" id="infodirector" class="minwidth300" value="'.dol_escape_htmltag((GETPOSTISSET(
"MAIN_INFO_GDPR") ?
GETPOST(
"MAIN_INFO_GDPR",
'alphanohtml') : (!empty($conf->global->MAIN_INFO_GDPR) ? $conf->global->MAIN_INFO_GDPR :
''))).
'"></td></tr>';
605print
'<tr class="oddeven"><td><label for="capital">'.$langs->trans(
"Capital").
'</label></td><td>';
606print
'<input name="capital" id="capital" class="maxwidth100" value="'.dol_escape_htmltag((GETPOSTISSET(
'capital') ?
GETPOST(
'capital',
'alphanohtml') : (!empty($conf->global->MAIN_INFO_CAPITAL) ? $conf->global->MAIN_INFO_CAPITAL :
''))).
'"></td></tr>';
609print
'<tr class="oddeven"><td><label for="forme_juridique_code">'.$langs->trans(
"JuridicalStatus").
'</label></td><td>';
610if ($mysoc->country_code) {
611 print $formcompany->select_juridicalstatus($conf->global->MAIN_INFO_SOCIETE_FORME_JURIDIQUE, $mysoc->country_code,
'',
'forme_juridique_code');
613 print $countrynotdefined;
618if ($langs->transcountry(
"ProfId1", $mysoc->country_code) !=
'-') {
619 print
'<tr class="oddeven"><td><label for="profid1">'.$langs->transcountry(
"ProfId1", $mysoc->country_code).
'</label></td><td>';
620 if (!empty($mysoc->country_code)) {
621 print
'<input name="siren" id="profid1" class="minwidth200" value="'.dol_escape_htmltag(!empty($conf->global->MAIN_INFO_SIREN) ? $conf->global->MAIN_INFO_SIREN :
'').
'">';
623 print $countrynotdefined;
629if ($langs->transcountry(
"ProfId2", $mysoc->country_code) !=
'-') {
630 print
'<tr class="oddeven"><td><label for="profid2">'.$langs->transcountry(
"ProfId2", $mysoc->country_code).
'</label></td><td>';
631 if (!empty($mysoc->country_code)) {
632 print
'<input name="siret" id="profid2" class="minwidth200" value="'.dol_escape_htmltag(!empty($conf->global->MAIN_INFO_SIRET) ? $conf->global->MAIN_INFO_SIRET :
'').
'">';
634 print $countrynotdefined;
640if ($langs->transcountry(
"ProfId3", $mysoc->country_code) !=
'-') {
641 print
'<tr class="oddeven"><td><label for="profid3">'.$langs->transcountry(
"ProfId3", $mysoc->country_code).
'</label></td><td>';
642 if (!empty($mysoc->country_code)) {
643 print
'<input name="ape" id="profid3" class="minwidth200" value="'.dol_escape_htmltag(!empty($conf->global->MAIN_INFO_APE) ? $conf->global->MAIN_INFO_APE :
'').
'">';
645 print $countrynotdefined;
651if ($langs->transcountry(
"ProfId4", $mysoc->country_code) !=
'-') {
652 print
'<tr class="oddeven"><td><label for="profid4">'.$langs->transcountry(
"ProfId4", $mysoc->country_code).
'</label></td><td>';
653 if (!empty($mysoc->country_code)) {
654 print
'<input name="rcs" id="profid4" class="minwidth200" value="'.dol_escape_htmltag(!empty($conf->global->MAIN_INFO_RCS) ? $conf->global->MAIN_INFO_RCS :
'').
'">';
656 print $countrynotdefined;
662if ($langs->transcountry(
"ProfId5", $mysoc->country_code) !=
'-') {
663 print
'<tr class="oddeven"><td><label for="profid5">'.$langs->transcountry(
"ProfId5", $mysoc->country_code).
'</label></td><td>';
664 if (!empty($mysoc->country_code)) {
665 print
'<input name="MAIN_INFO_PROFID5" id="profid5" class="minwidth200" value="'.dol_escape_htmltag(!empty($conf->global->MAIN_INFO_PROFID5) ? $conf->global->MAIN_INFO_PROFID5 :
'').
'">';
667 print $countrynotdefined;
673if ($langs->transcountry(
"ProfId6", $mysoc->country_code) !=
'-') {
674 print
'<tr class="oddeven"><td><label for="profid6">'.$langs->transcountry(
"ProfId6", $mysoc->country_code).
'</label></td><td>';
675 if (!empty($mysoc->country_code)) {
676 print
'<input name="MAIN_INFO_PROFID6" id="profid6" class="minwidth200" value="'.dol_escape_htmltag(!empty($conf->global->MAIN_INFO_PROFID6) ? $conf->global->MAIN_INFO_PROFID6 :
'').
'">';
678 print $countrynotdefined;
684print
'<tr class="oddeven"><td><label for="intra_vat">'.$langs->trans(
"VATIntra").
'</label></td><td>';
685print
'<input name="tva" id="intra_vat" class="minwidth200" value="'.dol_escape_htmltag(!empty($conf->global->MAIN_INFO_TVAINTRA) ? $conf->global->MAIN_INFO_TVAINTRA :
'').
'">';
689print
'<tr class="oddeven"><td><label for="socialobject">'.$langs->trans(
"CompanyObject").
'</label></td><td>';
690print
'<textarea class="flat quatrevingtpercent" name="socialobject" id="socialobject" rows="'.ROWS_5.
'">'.(!empty($conf->global->MAIN_INFO_SOCIETE_OBJECT) ? $conf->global->MAIN_INFO_SOCIETE_OBJECT :
'').
'</textarea></td></tr>';
699print
'<table class="noborder centpercent editmode">';
700print
'<tr class="liste_titre">';
701print
'<td class="titlefieldcreate">'.$langs->trans(
"FiscalYearInformation").
'</td><td></td>';
704print
'<tr class="oddeven"><td><label for="SOCIETE_FISCAL_MONTH_START">'.$langs->trans(
"FiscalMonthStart").
'</label></td><td>';
705print $formother->select_month(!empty($conf->global->SOCIETE_FISCAL_MONTH_START) ? $conf->global->SOCIETE_FISCAL_MONTH_START :
'',
'SOCIETE_FISCAL_MONTH_START', 0, 1,
'maxwidth100').
'</td></tr>';
712print
load_fiche_titre($langs->trans(
"TypeOfSaleTaxes"),
'',
'object_payment');
714print
'<table class="noborder centpercent editmode">';
715print
'<tr class="liste_titre">';
716print
'<td class="titlefieldcreate">'.$langs->trans(
"VATManagement").
'</td><td></td>';
717print
'<td class="right"> </td>';
721print
'<tr class="oddeven"><td><label><input type="radio" name="optiontva" id="use_vat" value="1"'.(empty($conf->global->FACTURE_TVAOPTION) ?
"" :
" checked").
"> ".$langs->trans(
"VATIsUsed").
"</label></td>";
722print
'<td colspan="2">';
724if ($mysoc->country_code ==
'FR') {
725 $tooltiphelp =
'<i>'.$langs->trans(
"Example").
': '.$langs->trans(
"VATIsUsedExampleFR").
"</i>";
727print
'<label for="use_vat">'.$form->textwithpicto($langs->trans(
"VATIsUsedDesc"), $tooltiphelp).
"</label>";
731print
'<tr class="oddeven"><td width="140"><label><input type="radio" name="optiontva" id="no_vat" value="0"'.(empty($conf->global->FACTURE_TVAOPTION) ?
" checked" :
"").
"> ".$langs->trans(
"VATIsNotUsed").
"</label></td>";
732print
'<td colspan="2">';
734if ($mysoc->country_code ==
'FR') {
735 $tooltiphelp =
"<i>".$langs->trans(
"Example").
': '.$langs->trans(
"VATIsNotUsedExampleFR").
"</i>\n";
737print
'<label for="no_vat">'.$form->textwithpicto($langs->trans(
"VATIsNotUsedDesc"), $tooltiphelp).
"</label>";
744print
'<table class="noborder centpercent editmode">';
745print
'<tr class="liste_titre">';
746print
'<td class="titlefieldcreate">'.$form->textwithpicto($langs->transcountry(
"LocalTax1Management", $mysoc->country_code), $langs->transcountry(
"LocalTax1IsUsedDesc", $mysoc->country_code)).
'</td><td></td>';
747print
'<td class="right"> </td>';
750if ($mysoc->useLocalTax(1)) {
752 print
'<tr class="oddeven"><td><input type="radio" name="optionlocaltax1" id="lt1" value="localtax1on"'.(($conf->global->FACTURE_LOCAL_TAX1_OPTION ==
'1' || $conf->global->FACTURE_LOCAL_TAX1_OPTION ==
"localtax1on") ?
" checked" :
"").
'> <label for="lt1">'.$langs->transcountry(
"LocalTax1IsUsed", $mysoc->country_code).
"</label></td>";
753 print
'<td colspan="2">';
754 print
'<div class="nobordernopadding">';
755 $tooltiphelp = $langs->transcountry(
"LocalTax1IsUsedExample", $mysoc->country_code);
756 $tooltiphelp = ($tooltiphelp !=
"LocalTax1IsUsedExample" ?
"<i>".$langs->trans(
"Example").
': '.$langs->transcountry(
"LocalTax1IsUsedExample", $mysoc->country_code).
"</i>\n" :
"");
757 print $form->textwithpicto($langs->transcountry(
"LocalTax1IsUsedDesc", $mysoc->country_code), $tooltiphelp);
759 print
'<br><label for="lt1">'.$langs->trans(
"LTRate").
'</label>: ';
760 $formcompany->select_localtax(1, $conf->global->MAIN_INFO_VALUE_LOCALTAX1,
"lt1");
763 $opcions = array($langs->trans(
"CalcLocaltax1").
' '.$langs->trans(
"CalcLocaltax1Desc"), $langs->trans(
"CalcLocaltax2").
' - '.$langs->trans(
"CalcLocaltax2Desc"), $langs->trans(
"CalcLocaltax3").
' - '.$langs->trans(
"CalcLocaltax3Desc"));
765 print
'<br><label for="clt1">'.$langs->trans(
"CalcLocaltax").
'</label>: ';
766 print $form->selectarray(
"clt1", $opcions,
getDolGlobalString(
'MAIN_INFO_LOCALTAX_CALC1'));
768 print
"</td></tr>\n";
770 print
'<tr class="oddeven"><td><input type="radio" name="optionlocaltax1" id="nolt1" value="localtax1off"'.((empty($conf->global->FACTURE_LOCAL_TAX1_OPTION) || $conf->global->FACTURE_LOCAL_TAX1_OPTION ==
"localtax1off") ?
" checked" :
"").
'> <label for="nolt1">'.$langs->transcountry(
"LocalTax1IsNotUsed", $mysoc->country_code).
"</label></td>";
771 print
'<td colspan="2">';
772 $tooltiphelp = $langs->transcountry(
"LocalTax1IsNotUsedExample", $mysoc->country_code);
773 $tooltiphelp = ($tooltiphelp !=
"LocalTax1IsNotUsedExample" ?
"<i>".$langs->trans(
"Example").
': '.$langs->transcountry(
"LocalTax1IsNotUsedExample", $mysoc->country_code).
"</i>\n" :
"");
774 print $form->textwithpicto($langs->transcountry(
"LocalTax1IsNotUsedDesc", $mysoc->country_code), $tooltiphelp);
775 print
"</td></tr>\n";
777 if (empty($mysoc->country_code)) {
778 print
'<tr class="oddeven nohover"><td class="">'.$countrynotdefined.
'</td><td></td><td></td></tr>';
780 print
'<tr class="oddeven nohover"><td class="" colspan="3"><span class="opacitymedium">'.$langs->trans(
"NoLocalTaxXForThisCountry", $langs->transnoentitiesnoconv(
"Setup"), $langs->transnoentitiesnoconv(
"Dictionaries"), $langs->transnoentitiesnoconv(
"DictionaryVAT"), $langs->transnoentitiesnoconv(
"LocalTax1Management")).
'</span></td></tr>';
788print
'<table class="noborder centpercent editmode">';
789print
'<tr class="liste_titre">';
790print
'<td class="titlefieldcreate">'.$form->textwithpicto($langs->transcountry(
"LocalTax2Management", $mysoc->country_code), $langs->transcountry(
"LocalTax2IsUsedDesc", $mysoc->country_code)).
'</td><td></td>';
791print
'<td class="right"> </td>';
794if ($mysoc->useLocalTax(2)) {
796 print
'<tr class="oddeven"><td><input type="radio" name="optionlocaltax2" id="lt2" value="localtax2on"'.(($conf->global->FACTURE_LOCAL_TAX2_OPTION ==
'1' || $conf->global->FACTURE_LOCAL_TAX2_OPTION ==
"localtax2on") ?
" checked" :
"").
'> <label for="lt2">'.$langs->transcountry(
"LocalTax2IsUsed", $mysoc->country_code).
"</label></td>";
797 print
'<td colspan="2">';
798 print
'<div class="nobordernopadding">';
799 print
'<label for="lt2">'.$langs->transcountry(
"LocalTax2IsUsedDesc", $mysoc->country_code).
"</label>";
800 $tooltiphelp = $langs->transcountry(
"LocalTax2IsUsedExample", $mysoc->country_code);
801 $tooltiphelp = ($tooltiphelp !=
"LocalTax2IsUsedExample" ?
"<i>".$langs->trans(
"Example").
': '.$langs->transcountry(
"LocalTax2IsUsedExample", $mysoc->country_code).
"</i>\n" :
"");
803 print
'<br><label for="lt2">'.$langs->trans(
"LTRate").
'</label>: ';
804 $formcompany->select_localtax(2, $conf->global->MAIN_INFO_VALUE_LOCALTAX2,
"lt2");
806 print
'<br><label for="clt2">'.$langs->trans(
"CalcLocaltax").
'</label>: ';
807 print $form->selectarray(
"clt2", $opcions,
getDolGlobalString(
'MAIN_INFO_LOCALTAX_CALC2'));
809 print
"</td></tr>\n";
811 print
'<tr class="oddeven"><td><input type="radio" name="optionlocaltax2" id="nolt2" value="localtax2off"'.((empty($conf->global->FACTURE_LOCAL_TAX2_OPTION) || $conf->global->FACTURE_LOCAL_TAX2_OPTION ==
"localtax2off") ?
" checked" :
"").
'> <label for="nolt2">'.$langs->transcountry(
"LocalTax2IsNotUsed", $mysoc->country_code).
"</label></td>";
812 print
'<td colspan="2">';
814 $tooltiphelp = $langs->transcountry(
"LocalTax2IsNotUsedExample", $mysoc->country_code);
815 $tooltiphelp = ($tooltiphelp !=
"LocalTax2IsNotUsedExample" ?
"<i>".$langs->trans(
"Example").
': '.$langs->transcountry(
"LocalTax2IsNotUsedExample", $mysoc->country_code).
"</i>\n" :
"");
816 print
"<label for=\"nolt2\">".$form->textwithpicto($langs->transcountry(
"LocalTax2IsNotUsedDesc", $mysoc->country_code), $tooltiphelp).
"</label>";
818 print
"</td></tr>\n";
820 if (empty($mysoc->country_code)) {
821 print
'<tr class="oddeven nohover"><td class="">'.$countrynotdefined.
'</td><td></td><td></td></tr>';
823 print
'<tr class="oddeven nohover"><td class="" colspan="3"><span class="opacitymedium">'.$langs->trans(
"NoLocalTaxXForThisCountry", $langs->transnoentitiesnoconv(
"Setup"), $langs->transnoentitiesnoconv(
"Dictionaries"), $langs->transnoentitiesnoconv(
"DictionaryVAT"), $langs->transnoentitiesnoconv(
"LocalTax2Management")).
'</span></td></tr>';
832print
'<table class="noborder centpercent editmode">';
833print
'<tr class="liste_titre">';
834print
'<td>'.$form->textwithpicto($langs->trans(
"RevenueStamp"), $langs->trans(
"RevenueStampDesc")).
'</td><td></td>';
835print
'<td class="right"> </td>';
837if ($mysoc->useRevenueStamp()) {
839 print
'<tr class="oddeven"><td>';
840 print $langs->trans(
"UseRevenueStamp");
842 print
'<td colspan="2">';
843 print $langs->trans(
"UseRevenueStampExample", $langs->transnoentitiesnoconv(
"Setup"), $langs->transnoentitiesnoconv(
"Dictionaries"), $langs->transnoentitiesnoconv(
"DictionaryRevenueStamp"));
844 print
"</td></tr>\n";
846 if (empty($mysoc->country_code)) {
847 print
'<tr class="oddeven nohover"><td class="">'.$countrynotdefined.
'</td><td></td><td></td></tr>';
849 print
'<tr class="oddeven nohover"><td class="" colspan="3"><span class="opacitymedium">'.$langs->trans(
"NoLocalTaxXForThisCountry", $langs->transnoentitiesnoconv(
"Setup"), $langs->transnoentitiesnoconv(
"Dictionaries"), $langs->transnoentitiesnoconv(
"DictionaryRevenueStamp"), $langs->transnoentitiesnoconv(
"RevenueStamp")).
'</span></td></tr>';
855print $form->buttonsSaveCancel(
"Save",
'');
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.
activateModulesRequiredByCountry($country_code)
Activate external modules mandatory when country is country_code.
company_admin_prepare_head()
Return array head with list of tabs to view object informations.
if(!defined('NOREQUIRESOC')) if(!defined( 'NOREQUIRETRAN')) if(!defined('NOTOKENRENEWAL')) if(!defined( 'NOREQUIREMENU')) if(!defined('NOREQUIREHTML')) if(!defined( 'NOREQUIREAJAX')) llxHeader()
Empty header.
getCountry($searchkey, $withcode='', $dbtouse=0, $outputlangs='', $entconv=1, $searchlabel='')
Return country label, code or id from an id, code or label.
getState($id, $withcode='', $dbtouse=0, $withregion=0, $outputlangs='', $entconv=1)
Return state translated from an id.
dol_delete_file($file, $disableglob=0, $nophperrors=0, $nohook=0, $object=null, $allowdotdot=false, $indexdatabase=1, $nolog=0)
Remove a file or several files with a mask.
dol_move_uploaded_file($src_file, $dest_file, $allowoverwrite, $disablevirusscan=0, $uploaderrorcode=0, $nohook=0, $varfiles='addedfile', $upload_dir='')
Make control on an uploaded file from an GUI page and move it to final destination.
isOnlyOneLocalTax($local)
Return true if LocalTax (1 or 2) is unique.
load_fiche_titre($titre, $morehtmlright='', $picto='generic', $pictoisfullpath=0, $id='', $morecssontable='', $morehtmlcenter='')
Load a title with picto.
img_delete($titlealt='default', $other='class="pictodelete"', $morecss='')
Show delete logo.
GETPOSTINT($paramname, $method=0)
Return value of a param into GET or POST supervariable.
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.
img_picto($titlealt, $picto, $moreatt='', $pictoisfullpath=false, $srconly=0, $notitle=0, $alt='', $morecss='', $marginleftonlyshort=2)
Show picto whatever it's its name (generic function)
GETPOST($paramname, $check='alphanohtml', $method=0, $filter=null, $options=null, $noreplace=0)
Return value of a param into GET or POST supervariable.
info_admin($text, $infoonimgalt=0, $nodiv=0, $admin='1', $morecss='hideonsmartphone', $textfordropdown='')
Show information for admin users or standard users.
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.
dol_syslog($message, $level=LOG_INFO, $ident=0, $suffixinfilename='', $restricttologhandler='', $logcontext=null)
Write log message into outputs.
dol_mkdir($dir, $dataroot='', $newmask='')
Creation of a directory (this can create recursive subdir)
vignette($file, $maxWidth=160, $maxHeight=120, $extName='_small', $quality=50, $outdir='thumbs', $targetformat=0)
Create a thumbnail from an image file (Supported extensions are gif, jpg, png and bmp).
image_format_supported($file, $acceptsvg=0)
Return if a filename is file name of a supported image format.
getMaxFileSizeArray()
Return the max allowed for file upload.
accessforbidden($message='', $printheader=1, $printfooter=1, $showonlymessage=0, $params=null)
Show a message to say access is forbidden and stop program.