33 require
'../../main.inc.php';
34 require_once DOL_DOCUMENT_ROOT.
'/core/lib/admin.lib.php';
35 require_once DOL_DOCUMENT_ROOT.
'/core/lib/accounting.lib.php';
36 require_once DOL_DOCUMENT_ROOT.
'/core/lib/date.lib.php';
39 $langs->loadLangs(array(
"compta",
"bills",
"admin",
"accountancy",
"other"));
42 if (!$user->hasRight(
'accounting',
'chartofaccount')) {
46 $action =
GETPOST(
'action',
'aZ09');
50 'ACCOUNTING_LENGTH_GACCOUNT',
51 'ACCOUNTING_LENGTH_AACCOUNT',
57 $list_binding = array(
58 'ACCOUNTING_DATE_START_BINDING',
59 'ACCOUNTING_DEFAULT_PERIOD_ON_TRANSFER'
69 if (in_array($action, array(
70 'setBANK_DISABLE_DIRECT_INPUT',
71 'setACCOUNTANCY_COMBO_FOR_AUX',
72 'setACCOUNTING_MANAGE_ZERO',
73 'setACCOUNTING_LIST_SORT_VENTILATION_TODO',
74 'setACCOUNTING_LIST_SORT_VENTILATION_DONE'))) {
75 $constname = preg_replace(
'/^set/',
'', $action);
76 $constvalue =
GETPOST(
'value',
'int');
77 $res =
dolibarr_set_const($db, $constname, $constvalue,
'yesno', 0,
'', $conf->entity);
89 if ($action ==
'update') {
93 foreach ($list as $constname) {
94 $constvalue =
GETPOST($constname,
'alpha');
95 if (!
dolibarr_set_const($db, $constname, $constvalue,
'chaine', 0,
'', $conf->entity)) {
103 foreach ($list_binding as $constname) {
104 $constvalue =
GETPOST($constname,
'alpha');
106 if ($constname ==
'ACCOUNTING_DATE_START_BINDING') {
110 if (!
dolibarr_set_const($db, $constname, $constvalue,
'chaine', 0,
'', $conf->entity)) {
124 if ($action ==
'setlistsorttodo') {
125 $setlistsorttodo =
GETPOST(
'value',
'int');
126 $res =
dolibarr_set_const($db,
"ACCOUNTING_LIST_SORT_VENTILATION_TODO", $setlistsorttodo,
'yesno', 0,
'', $conf->entity);
138 if ($action ==
'setlistsortdone') {
139 $setlistsortdone =
GETPOST(
'value',
'int');
140 $res =
dolibarr_set_const($db,
"ACCOUNTING_LIST_SORT_VENTILATION_DONE", $setlistsortdone,
'yesno', 0,
'', $conf->entity);
152 if ($action ==
'setmanagezero') {
153 $setmanagezero =
GETPOST(
'value',
'int');
154 $res =
dolibarr_set_const($db,
"ACCOUNTING_MANAGE_ZERO", $setmanagezero,
'yesno', 0,
'', $conf->entity);
166 if ($action ==
'setdisabledirectinput') {
167 $setdisabledirectinput =
GETPOST(
'value',
'int');
168 $res =
dolibarr_set_const($db,
"BANK_DISABLE_DIRECT_INPUT", $setdisabledirectinput,
'yesno', 0,
'', $conf->entity);
180 if ($action ==
'setenabledraftexport') {
181 $setenabledraftexport =
GETPOST(
'value',
'int');
182 $res =
dolibarr_set_const($db,
"ACCOUNTING_ENABLE_EXPORT_DRAFT_JOURNAL", $setenabledraftexport,
'yesno', 0,
'', $conf->entity);
194 if ($action ==
'setenablesubsidiarylist') {
195 $setenablesubsidiarylist =
GETPOST(
'value',
'int');
196 $res =
dolibarr_set_const($db,
"ACCOUNTANCY_COMBO_FOR_AUX", $setenablesubsidiarylist,
'yesno', 0,
'', $conf->entity);
208 if ($action ==
'setdisablebindingonsales') {
209 $setdisablebindingonsales =
GETPOST(
'value',
'int');
210 $res =
dolibarr_set_const($db,
"ACCOUNTING_DISABLE_BINDING_ON_SALES", $setdisablebindingonsales,
'yesno', 0,
'', $conf->entity);
222 if ($action ==
'setdisablebindingonpurchases') {
223 $setdisablebindingonpurchases =
GETPOST(
'value',
'int');
224 $res =
dolibarr_set_const($db,
"ACCOUNTING_DISABLE_BINDING_ON_PURCHASES", $setdisablebindingonpurchases,
'yesno', 0,
'', $conf->entity);
236 if ($action ==
'setdisablebindingonexpensereports') {
237 $setdisablebindingonexpensereports =
GETPOST(
'value',
'int');
238 $res =
dolibarr_set_const($db,
"ACCOUNTING_DISABLE_BINDING_ON_EXPENSEREPORTS", $setdisablebindingonexpensereports,
'yesno', 0,
'', $conf->entity);
250 if ($action ==
'setenablelettering') {
251 $setenablelettering =
GETPOST(
'value',
'int');
252 $res =
dolibarr_set_const($db,
"ACCOUNTING_ENABLE_LETTERING", $setenablelettering,
'yesno', 0,
'', $conf->entity);
264 if ($action ==
'setenableautolettering') {
265 $setenableautolettering =
GETPOST(
'value',
'int');
266 $res =
dolibarr_set_const($db,
"ACCOUNTING_ENABLE_AUTOLETTERING", $setenableautolettering,
'yesno', 0,
'', $conf->entity);
285 $title = $langs->trans(
'ConfigAccountingExpert');
294 if (!empty($conf->global->FACTURE_DEPOSITS_ARE_JUST_PAYMENTS)) {
295 print
'<div class="info">' . $langs->trans(
"ConstantIsOn",
"FACTURE_DEPOSITS_ARE_JUST_PAYMENTS") .
'</div>';
297 if (!empty($conf->global->FACTURE_SUPPLIER_DEPOSITS_ARE_JUST_PAYMENTS)) {
298 print
'<div class="info">' . $langs->trans(
"ConstantIsOn",
"FACTURE_SUPPLIER_DEPOSITS_ARE_JUST_PAYMENTS") .
'</div>';
300 if (!empty($conf->global->ACCOUNTANCY_USE_PRODUCT_ACCOUNT_ON_THIRDPARTY)) {
301 print
'<div class="info">' . $langs->trans(
"ConstantIsOn",
"ACCOUNTANCY_USE_PRODUCT_ACCOUNT_ON_THIRDPARTY") .
'</div>';
303 if (!empty($conf->global->MAIN_COMPANY_PERENTITY_SHARED)) {
304 print
'<div class="info">' . $langs->trans(
"ConstantIsOn",
"MAIN_COMPANY_PERENTITY_SHARED") .
'</div>';
306 if (!empty($conf->global->MAIN_PRODUCT_PERENTITY_SHARED)) {
307 print
'<div class="info">' . $langs->trans(
"ConstantIsOn",
"MAIN_PRODUCT_PERENTITY_SHARED") .
'</div>';
311 print
'<form action="'.$_SERVER[
"PHP_SELF"].
'" method="post">';
312 print
'<input type="hidden" name="token" value="'.newToken().
'">';
313 print
'<input type="hidden" name="action" value="update">';
316 print
'<table class="noborder centpercent">';
317 print
'<tr class="liste_titre">';
318 print
'<td colspan="2">'.$langs->trans(
'Options').
'</td>';
338 print
'<tr class="oddeven">';
339 print
'<td>'.$langs->trans(
"BANK_DISABLE_DIRECT_INPUT").
'</td>';
340 if (!empty($conf->global->BANK_DISABLE_DIRECT_INPUT)) {
341 print
'<td class="right"><a class="reposition" href="'.$_SERVER[
'PHP_SELF'].
'?token='.
newToken().
'&action=setBANK_DISABLE_DIRECT_INPUT&value=0">';
342 print
img_picto($langs->trans(
"Activated"),
'switch_on');
345 print
'<td class="right"><a class="reposition" href="'.$_SERVER[
'PHP_SELF'].
'?token='.
newToken().
'&action=setBANK_DISABLE_DIRECT_INPUT&value=1">';
346 print
img_picto($langs->trans(
"Disabled"),
'switch_off');
351 print
'<tr class="oddeven">';
352 print
'<td>'.$langs->trans(
"ACCOUNTANCY_COMBO_FOR_AUX");
353 print
' - <span class="opacitymedium">'.$langs->trans(
"NotRecommended").
'</span>';
356 if (!empty($conf->global->ACCOUNTANCY_COMBO_FOR_AUX)) {
357 print
'<td class="right"><a class="reposition" href="'.$_SERVER[
'PHP_SELF'].
'?token='.
newToken().
'&action=setACCOUNTANCY_COMBO_FOR_AUX&value=0">';
358 print
img_picto($langs->trans(
"Activated"),
'switch_on');
361 print
'<td class="right"><a class="reposition" href="'.$_SERVER[
'PHP_SELF'].
'?token='.
newToken().
'&action=setACCOUNTANCY_COMBO_FOR_AUX&value=1">';
362 print
img_picto($langs->trans(
"Disabled"),
'switch_off');
367 print
'<tr class="oddeven">';
368 print
'<td>'.$langs->trans(
"ACCOUNTING_MANAGE_ZERO").
'</td>';
369 if (!empty($conf->global->ACCOUNTING_MANAGE_ZERO)) {
370 print
'<td class="right"><a class="reposition" href="'.$_SERVER[
'PHP_SELF'].
'?token='.
newToken().
'&action=setACCOUNTING_MANAGE_ZERO&value=0">';
371 print
img_picto($langs->trans(
"Activated"),
'switch_on');
374 print
'<td class="right"><a class="reposition" href="'.$_SERVER[
'PHP_SELF'].
'?token='.
newToken().
'&action=setACCOUNTING_MANAGE_ZERO&value=1">';
375 print
img_picto($langs->trans(
"Disabled"),
'switch_off');
381 foreach ($list as $key) {
382 print
'<tr class="oddeven value">';
384 if (!empty($conf->global->ACCOUNTING_MANAGE_ZERO) && ($key ==
'ACCOUNTING_LENGTH_GACCOUNT' || $key ==
'ACCOUNTING_LENGTH_AACCOUNT')) {
389 $label = $langs->trans($key);
390 print
'<td>'.$label.
'</td>';
392 print
'<td class="right">';
393 print
'<input type="text" class="maxwidth50 right" id="'.$key.
'" name="'.$key.
'" value="'.
getDolGlobalString($key).
'">';
402 print
'<table class="noborder centpercent">';
403 print
'<tr class="liste_titre">';
404 print
'<td colspan="2">'.$langs->trans(
'BindingOptions').
'</td>';
408 print
'<tr class="oddeven">';
409 print
'<td>'.$langs->trans(
"ACCOUNTING_LIST_SORT_VENTILATION_TODO").
'</td>';
410 if (!empty($conf->global->ACCOUNTING_LIST_SORT_VENTILATION_TODO)) {
411 print
'<td class="right"><a class="reposition" href="'.$_SERVER[
'PHP_SELF'].
'?token='.
newToken().
'&action=setACCOUNTING_LIST_SORT_VENTILATION_TODO&value=0">';
412 print
img_picto($langs->trans(
"Activated"),
'switch_on');
415 print
'<td class="right"><a class="reposition" href="'.$_SERVER[
'PHP_SELF'].
'?token='.
newToken().
'&action=setACCOUNTING_LIST_SORT_VENTILATION_TODO&value=1">';
416 print
img_picto($langs->trans(
"Disabled"),
'switch_off');
421 print
'<tr class="oddeven">';
422 print
'<td>'.$langs->trans(
"ACCOUNTING_LIST_SORT_VENTILATION_DONE").
'</td>';
423 if (!empty($conf->global->ACCOUNTING_LIST_SORT_VENTILATION_DONE)) {
424 print
'<td class="right"><a class="reposition" href="'.$_SERVER[
'PHP_SELF'].
'?token='.
newToken().
'&action=setACCOUNTING_LIST_SORT_VENTILATION_DONE&value=0">';
425 print
img_picto($langs->trans(
"Activated"),
'switch_on');
428 print
'<td class="right"><a class="reposition" href="'.$_SERVER[
'PHP_SELF'].
'?token='.
newToken().
'&action=setACCOUNTING_LIST_SORT_VENTILATION_DONE&value=1">';
429 print
img_picto($langs->trans(
"Disabled"),
'switch_off');
435 foreach ($list_binding as $key) {
436 print
'<tr class="oddeven value">';
439 $label = $langs->trans($key);
440 print
'<td>'.$label.
'</td>';
442 print
'<td class="right">';
443 if ($key ==
'ACCOUNTING_DATE_START_BINDING') {
444 print
$form->selectDate((!empty($conf->global->$key) ? $db->idate($conf->global->$key) : -1), $key, 0, 0, 1);
445 } elseif ($key ==
'ACCOUNTING_DEFAULT_PERIOD_ON_TRANSFER') {
446 $array = array(0=>$langs->trans(
"PreviousMonth"), 1=>$langs->trans(
"CurrentMonth"), 2=>$langs->trans(
"Fiscalyear"));
447 print
$form->selectarray($key, $array, (isset($conf->global->ACCOUNTING_DEFAULT_PERIOD_ON_TRANSFER) ? $conf->global->ACCOUNTING_DEFAULT_PERIOD_ON_TRANSFER : 0), 0, 0, 0,
'', 0, 0, 0,
'',
'onrightofpage');
449 print
'<input type="text" class="maxwidth100" id="'.$key.
'" name="'.$key.
'" value="'.
getDolGlobalString($key).
'">';
456 print
'<tr class="oddeven">';
457 print
'<td>'.$langs->trans(
"ACCOUNTING_DISABLE_BINDING_ON_SALES").
'</td>';
458 if (!empty($conf->global->ACCOUNTING_DISABLE_BINDING_ON_SALES)) {
459 print
'<td class="right"><a class="reposition" href="'.$_SERVER[
'PHP_SELF'].
'?token='.
newToken().
'&action=setdisablebindingonsales&value=0">';
460 print
img_picto($langs->trans(
"Activated"),
'switch_on',
'',
false, 0, 0,
'',
'warning');
463 print
'<td class="right"><a class="reposition" href="'.$_SERVER[
'PHP_SELF'].
'?token='.
newToken().
'&action=setdisablebindingonsales&value=1">';
464 print
img_picto($langs->trans(
"Disabled"),
'switch_off');
469 print
'<tr class="oddeven">';
470 print
'<td>'.$langs->trans(
"ACCOUNTING_DISABLE_BINDING_ON_PURCHASES").
'</td>';
471 if (!empty($conf->global->ACCOUNTING_DISABLE_BINDING_ON_PURCHASES)) {
472 print
'<td class="right"><a class="reposition" href="'.$_SERVER[
'PHP_SELF'].
'?token='.
newToken().
'&action=setdisablebindingonpurchases&value=0">';
473 print
img_picto($langs->trans(
"Activated"),
'switch_on',
'',
false, 0, 0,
'',
'warning');
476 print
'<td class="right"><a class="reposition" href="'.$_SERVER[
'PHP_SELF'].
'?token='.
newToken().
'&action=setdisablebindingonpurchases&value=1">';
477 print
img_picto($langs->trans(
"Disabled"),
'switch_off');
482 print
'<tr class="oddeven">';
483 print
'<td>'.$langs->trans(
"ACCOUNTING_DISABLE_BINDING_ON_EXPENSEREPORTS").
'</td>';
484 if (!empty($conf->global->ACCOUNTING_DISABLE_BINDING_ON_EXPENSEREPORTS)) {
485 print
'<td class="right"><a class="reposition" href="'.$_SERVER[
'PHP_SELF'].
'?token='.
newToken().
'&action=setdisablebindingonexpensereports&value=0">';
486 print
img_picto($langs->trans(
"Activated"),
'switch_on',
'',
false, 0, 0,
'',
'warning');
489 print
'<td class="right"><a class="reposition" href="'.$_SERVER[
'PHP_SELF'].
'?token='.
newToken().
'&action=setdisablebindingonexpensereports&value=1">';
490 print
img_picto($langs->trans(
"Disabled"),
'switch_off');
499 print
'<table class="noborder centpercent">';
500 print
'<tr class="liste_titre">';
501 print
'<td colspan="2">'.$langs->trans(
'Options').
' '.$langs->trans(
'Lettering').
'</td>';
504 print
'<tr class="oddeven">';
505 print
'<td>'.$langs->trans(
"ACCOUNTING_ENABLE_LETTERING").
'</td>';
506 if (!empty($conf->global->ACCOUNTING_ENABLE_LETTERING)) {
507 print
'<td class="right"><a class="reposition" href="'.$_SERVER[
'PHP_SELF'].
'?token='.
newToken().
'&action=setenablelettering&value=0">';
508 print
img_picto($langs->trans(
"Activated"),
'switch_on');
511 print
'<td class="right"><a class="reposition" href="'.$_SERVER[
'PHP_SELF'].
'?token='.
newToken().
'&action=setenablelettering&value=1">';
512 print
img_picto($langs->trans(
"Disabled"),
'switch_off');
517 if (!empty($conf->global->ACCOUNTING_ENABLE_LETTERING)) {
518 print
'<tr class="oddeven">';
519 print
'<td>' . $langs->trans(
"ACCOUNTING_ENABLE_AUTOLETTERING") .
'</td>';
520 if (!empty($conf->global->ACCOUNTING_ENABLE_AUTOLETTERING)) {
521 print
'<td class="right"><a class="reposition" href="' . $_SERVER[
'PHP_SELF'] .
'?token=' .
newToken() .
'&action=setenableautolettering&value=0">';
522 print
img_picto($langs->trans(
"Activated"),
'switch_on');
525 print
'<td class="right"><a class="reposition" href="' . $_SERVER[
'PHP_SELF'] .
'?token=' .
newToken() .
'&action=setenableautolettering&value=1">';
526 print
img_picto($langs->trans(
"Disabled"),
'switch_off');
534 print
'<div class="center"><input type="submit" class="button button-edit" name="button" value="'.$langs->trans(
'Modify').
'"></div>';