29require
'../../../main.inc.php';
30require_once DOL_DOCUMENT_ROOT.
'/core/lib/bank.lib.php';
31require_once DOL_DOCUMENT_ROOT.
'/core/lib/date.lib.php';
32require_once DOL_DOCUMENT_ROOT.
'/compta/bank/class/paymentvarious.class.php';
33require_once DOL_DOCUMENT_ROOT.
'/compta/bank/class/account.class.php';
34require_once DOL_DOCUMENT_ROOT.
'/core/class/html.formaccounting.class.php';
35require_once DOL_DOCUMENT_ROOT.
'/accountancy/class/accountingaccount.class.php';
36require_once DOL_DOCUMENT_ROOT.
'/accountancy/class/accountingjournal.class.php';
37if (isModEnabled(
'project')) {
38 require_once DOL_DOCUMENT_ROOT.
'/projet/class/project.class.php';
39 require_once DOL_DOCUMENT_ROOT.
'/core/class/html.formprojet.class.php';
43$langs->loadLangs(array(
"compta",
"banks",
"bills",
"users",
"accountancy",
"categories"));
47$action =
GETPOST(
'action',
'alpha');
49$cancel =
GETPOST(
'cancel',
'aZ09');
50$backtopage =
GETPOST(
'backtopage',
'alpha');
53$label =
GETPOST(
"label",
"alpha");
56$paymenttype =
GETPOST(
"paymenttype",
"aZ09");
57$accountancy_code =
GETPOST(
"accountancy_code",
"alpha");
60 $subledger_account =
GETPOST(
"subledger_account",
"alpha") > 0 ?
GETPOST(
"subledger_account",
"alpha") :
'';
62 $subledger_account =
GETPOST(
"subledger_account",
"alpha");
68 $socid = $user->socid;
75$hookmanager->initHooks(array(
'variouscard',
'globalcard'));
77$permissiontoadd = $user->hasRight(
'banque',
'modifier');
85$reshook = $hookmanager->executeHooks(
'doActions', $parameters,
$object, $action);
92 if ($action !=
'addlink' && $action !=
'setaccountancy_code' && $action !=
'setsubledger_account') {
93 $urltogo = $backtopage ? $backtopage :
dol_buildpath(
'/compta/bank/various_payment/list.php', 1);
94 header(
"Location: ".$urltogo);
97 if ($id > 0 || !empty($ref)) {
98 $ret =
$object->fetch($id, $ref);
104 if ($action ==
'classin' && $permissiontoadd) {
109 if ($action ==
'add') {
129 $object->fk_user_author = $user->id;
132 $object->accountancy_code =
GETPOST(
"accountancy_code") > 0 ?
GETPOST(
"accountancy_code",
"alpha") :
"";
133 $object->subledger_account = $subledger_account;
138 if (empty($datep) || empty($datev)) {
139 $langs->load(
'errors');
140 setEventMessages($langs->trans(
"ErrorFieldRequired", $langs->transnoentitiesnoconv(
"Date")),
null,
'errors');
144 $langs->load(
'errors');
145 setEventMessages($langs->trans(
"ErrorFieldRequired", $langs->transnoentitiesnoconv(
"Amount")),
null,
'errors');
148 if (isModEnabled(
"bank") && !
$object->accountid > 0) {
149 $langs->load(
'errors');
150 setEventMessages($langs->trans(
"ErrorFieldRequired", $langs->transnoentitiesnoconv(
"BankAccount")),
null,
'errors');
154 $langs->load(
'errors');
155 setEventMessages($langs->trans(
"ErrorFieldRequired", $langs->transnoentitiesnoconv(
"PaymentMode")),
null,
'errors');
158 if (isModEnabled(
'accounting') && !
$object->accountancy_code) {
159 $langs->load(
'errors');
160 setEventMessages($langs->trans(
"ErrorFieldRequired", $langs->transnoentitiesnoconv(
"AccountAccounting")),
null,
'errors');
164 $langs->load(
'errors');
165 setEventMessages($langs->trans(
"ErrorFieldRequired", $langs->transnoentitiesnoconv(
"Sens")),
null,
'errors');
175 $urltogo = ($backtopage ? $backtopage : DOL_URL_ROOT.
'/compta/bank/various_payment/list.php');
176 header(
"Location: ".$urltogo);
188 if ($action ==
'confirm_delete' && $confirm ==
'yes') {
198 $result = $accountline->fetch(
$object->fk_bank);
200 $result = $accountline->delete($user);
206 header(
"Location: ".DOL_URL_ROOT.
'/compta/bank/various_payment/list.php');
209 $object->error = $accountline->error;
218 setEventMessages(
'Error try do delete a line linked to a conciliated bank transaction',
null,
'errors');
222 if ($action ==
'setaccountancy_code') {
227 $object->accountancy_code =
GETPOST(
'accountancy_code',
'alphanohtml');
238 if ($action ==
'setsubledger_account') {
243 $object->subledger_account = $subledger_account;
256if ($action ==
'confirm_clone' && $confirm !=
'yes') {
260if ($action ==
'confirm_clone' && $confirm ==
'yes' && $permissiontoadd) {
271 if (
GETPOST(
'clone_label',
'alphanohtml')) {
279 if ($newdatepayment) {
280 $object->datep = $newdatepayment;
282 if (!empty($newdatevalue)) {
283 $object->datev = $newdatevalue;
285 $object->datev = $newdatepayment;
288 if (GETPOSTISSET(
"clone_sens")) {
292 if (GETPOSTISSET(
"clone_amount")) {
304 header(
"Location: ".$_SERVER[
"PHP_SELF"].
"?id=".$id);
328$form =
new Form($db);
329if (isModEnabled(
'accounting')) {
332if (isModEnabled(
'project')) {
345$title =
$object->ref.
" - ".$langs->trans(
'Card');
346if ($action ==
'create') {
347 $title = $langs->trans(
"NewVariousPayment");
349$help_url =
'EN:Module_Suppliers_Invoices|FR:Module_Fournisseurs_Factures|ES:Módulo_Facturas_de_proveedores|DE:Modul_Lieferantenrechnungen';
355require_once DOL_DOCUMENT_ROOT.
'/compta/bank/class/bankcateg.class.php';
358$arrayofbankcategs = $bankcateg->fetchAll();
360foreach ($arrayofbankcategs as $bankcategory) {
361 $options[$bankcategory->id] = $bankcategory->label;
365if ($action ==
'create') {
367 if (!empty($conf->use_javascript_ajax)) {
368 print
"\n".
'<script type="text/javascript">';
369 print
'$(document).ready(function () {
371 $("#selectpaymenttype").change(function() {
374 function setPaymentType()
376 console.log("setPaymentType");
377 var code = $("#selectpaymenttype option:selected").val();
378 if (code == \'CHQ\' || code == \'VIR\')
382 $(\'.fieldrequireddyn\').addClass(\'fieldrequired\');
384 if ($(\'#fieldchqemetteur\').val() == \'\')
386 var emetteur = jQuery(\'#thirdpartylabel\').val();
387 $(\'#fieldchqemetteur\').val(emetteur);
392 $(\'.fieldrequireddyn\').removeClass(\'fieldrequired\');
393 $(\'#fieldchqemetteur\').val(\'\');
400 print
' </script>'.
"\n";
403 print
'<form action="'.$_SERVER[
"PHP_SELF"].
'" method="POST">';
404 print
'<input type="hidden" name="token" value="'.newToken().
'">';
405 print
'<input type="hidden" name="backtopage" value="'.$backtopage.
'">';
406 print
'<input type="hidden" name="action" value="add">';
408 print
load_fiche_titre($langs->trans(
"NewVariousPayment"),
'',
'object_payment');
412 print
'<table class="border centpercent">';
415 print
'<tr><td class="titlefieldcreate">';
416 print $form->editfieldkey(
'DatePayment',
'datep',
'',
$object, 0,
'string',
'', 1).
'</td><td>';
417 print $form->selectDate((empty($datep) ? -1 : $datep),
"datep", 0, 0, 0,
'add', 1, 1);
422 print $form->editfieldkey(
'DateValue',
'datev',
'',
$object, 0).
'</td><td>';
423 print $form->selectDate((empty($datev) ? -1 : $datev),
"datev", 0, 0, 0,
'add', 1, 1);
428 print $form->editfieldkey(
'Label',
'label',
'',
$object, 0,
'string',
'', 1).
'</td><td>';
429 print
'<input name="label" id="label" class="minwidth300 maxwidth150onsmartphone" value="'.($label ? $label : $langs->trans(
"VariousPayment")).
'">';
434 print $form->editfieldkey(
'Amount',
'amount',
'',
$object, 0,
'string',
'', 1).
'</td><td>';
435 print
'<input name="amount" id="amount" class="minwidth50 maxwidth100" value="'.$amount.
'">';
439 if (isModEnabled(
"bank")) {
441 print $form->editfieldkey(
'BankAccount',
'selectaccountid',
'',
$object, 0,
'string',
'', 1).
'</td><td>';
442 print
img_picto(
'',
'bank_account',
'class="pictofixedwidth"');
443 print $form->select_comptes($accountid,
"accountid", 0,
'', 2,
'', 0,
'', 1);
448 print
'<tr><td><span class="fieldrequired">'.$langs->trans(
'PaymentMode').
'</span></td><td>';
449 $form->select_types_paiements($paymenttype,
'paymenttype',
'', 2);
454 if (isModEnabled(
"bank")) {
455 print
'<tr><td><label for="num_payment">'.$langs->trans(
'Numero');
456 print
' <em>('.$langs->trans(
"ChequeOrTransferNumber").
')</em>';
457 print
'</label></td>';
458 print
'<td><input name="num_payment" class="maxwidth150onsmartphone" id="num_payment" type="text" value="'.GETPOST(
"num_payment").
'"></td></tr>'.
"\n";
461 print
'<tr><td class="'.(GETPOST(
'paymenttype') ==
'CHQ' ?
'fieldrequired ' :
'').
'fieldrequireddyn"><label for="fieldchqemetteur">'.$langs->trans(
'CheckTransmitter');
462 print
' <em>('.$langs->trans(
"ChequeMaker").
')</em>';
463 print
'</label></td>';
464 print
'<td><input id="fieldchqemetteur" name="chqemetteur" size="30" type="text" value="'.GETPOST(
'chqemetteur',
'alphanohtml').
'"></td></tr>';
467 print
'<tr><td><label for="chqbank">'.$langs->trans(
'Bank');
468 print
' <em>('.$langs->trans(
"ChequeBank").
')</em>';
469 print
'</label></td>';
470 print
'<td><input id="chqbank" name="chqbank" size="30" type="text" value="'.GETPOST(
'chqbank',
'alphanohtml').
'"></td></tr>';
474 if (isModEnabled(
'accounting')) {
476 print
'<tr><td class="titlefieldcreate fieldrequired">'.$langs->trans(
"AccountAccounting").
'</td>';
478 print $formaccounting->select_account($accountancy_code,
'accountancy_code', 1,
null, 1, 1);
481 print
'<tr><td class="titlefieldcreate">'.$langs->trans(
"AccountAccounting").
'</td>';
482 print
'<td><input class="minwidth100 maxwidthonsmartphone" name="accountancy_code" value="'.$accountancy_code.
'">';
487 if (isModEnabled(
'accounting')) {
488 print
'<tr><td>'.$langs->trans(
"SubledgerAccount").
'</td>';
491 print $formaccounting->select_auxaccount($subledger_account,
'subledger_account', 1,
'');
493 print
'<input type="text" class="maxwidth200 maxwidthonsmartphone" name="subledger_account" value="'.$subledger_account.
'">';
497 print
'<tr><td>'.$langs->trans(
"SubledgerAccount").
'</td>';
498 print
'<td><input class="minwidth100 maxwidthonsmartphone" name="subledger_account" value="'.$subledger_account.
'">';
504 $labelsens = $form->textwithpicto($langs->trans(
'Sens'), $langs->trans(
"AccountingDirectionHelp"));
505 print $form->editfieldkey($labelsens,
'sens',
'',
$object, 0,
'string',
'', 1).
'</td><td>';
506 $sensarray = array(
'0' => $langs->trans(
"Debit"),
'1' => $langs->trans(
"Credit"));
507 print $form->selectarray(
'sens', $sensarray, $sens, 1, 0, 0,
'', 0, 0, 0,
'',
'minwidth100', 1);
511 if (isModEnabled(
'project')) {
515 $langs->load(
"projects");
517 print
'<tr><td>'.$langs->trans(
"Project").
'</td><td>';
518 print
img_picto(
'',
'bank_account',
'class="pictofixedwidth"');
519 print $formproject->select_projects(-1, $projectid,
'fk_project', 0, 0, 1, 1, 0, 0, 0,
'', 1);
524 $parameters = array();
525 $reshook = $hookmanager->executeHooks(
'formObjectOptions', $parameters,
$object, $action);
526 print $hookmanager->resPrint;
529 if (is_array($options) && count($options) && $conf->categorie->enabled) {
530 print
'<tr><td>'.$langs->trans(
"RubriquesTransactions").
'</td><td>';
531 print
img_picto(
'',
'category').Form::selectarray(
'category_transaction', $options,
GETPOST(
'category_transaction'), 1, 0, 0,
'', 0, 0, 0,
'',
'minwidth300', 1);
539 print $form->buttonsSaveCancel();
552 $alreadyaccounted =
$object->getVentilExportCompta();
557 if ($action ===
'clone') {
558 $set_value_help = $form->textwithpicto(
'', $langs->trans($langs->trans(
"AccountingDirectionHelp")));
559 $sensarray = array(
'0' => $langs->trans(
"Debit"),
'1' => $langs->trans(
"Credit"));
561 $formquestion = array(
562 array(
'type' =>
'text',
'name' =>
'clone_label',
'label' => $langs->trans(
"Label"),
'value' => $langs->trans(
"CopyOf").
' '.
$object->label),
563 array(
'type' =>
'date',
'tdclass' =>
'fieldrequired',
'name' =>
'clone_date_payment',
'label' => $langs->trans(
"DatePayment"),
'value' => -1),
564 array(
'type' =>
'date',
'name' =>
'clone_date_value',
'label' => $langs->trans(
"DateValue"),
'value' => -1),
565 array(
'type' =>
'other',
'tdclass' =>
'fieldrequired',
'name' =>
'clone_accountid',
'label' => $langs->trans(
"BankAccount"),
'value' => $form->select_comptes(
$object->fk_account,
"accountid", 0,
'', 1,
'', 0,
'minwidth200', 1)),
566 array(
'type' =>
'text',
'name' =>
'clone_amount',
'label' => $langs->trans(
"Amount"),
'value' =>
price(
$object->amount)),
567 array(
'type' =>
'select',
'name' =>
'clone_sens',
'label' => $langs->trans(
"Sens").
' '.$set_value_help,
'values' => $sensarray,
'default' =>
$object->sens),
570 print $form->formconfirm($_SERVER[
"PHP_SELF"].
'?id='.
$object->id, $langs->trans(
'ToClone'), $langs->trans(
'ConfirmCloneVariousPayment',
$object->ref),
'confirm_clone', $formquestion,
'yes', 1, 350);
574 if ($action ==
'delete') {
575 $text = $langs->trans(
'ConfirmDeleteVariousPayment');
576 print $form->formconfirm($_SERVER[
'PHP_SELF'].
'?id='.
$object->id, $langs->trans(
'DeleteVariousPayment'), $text,
'confirm_delete',
'',
'', 2);
581 $morehtmlref =
'<div class="refidno">';
583 if (isModEnabled(
'project')) {
584 $langs->load(
"projects");
586 if ($permissiontoadd) {
587 $morehtmlref .=
img_picto($langs->trans(
"Project"),
'project',
'class="pictofixedwidth"');
588 if ($action !=
'classify') {
589 $morehtmlref .=
'<a class="editfielda" href="'.$_SERVER[
'PHP_SELF'].
'?action=classify&token='.
newToken().
'&id='.
$object->id.
'">'.
img_edit($langs->transnoentitiesnoconv(
'SetProject')).
'</a> ';
591 if ($action ==
'classify') {
593 $morehtmlref .=
'<form method="post" action="'.$_SERVER[
'PHP_SELF'].
'?id='.
$object->id.
'">';
594 $morehtmlref .=
'<input type="hidden" name="action" value="classin">';
595 $morehtmlref .=
'<input type="hidden" name="token" value="'.newToken().
'">';
596 $morehtmlref .= $formproject->select_projects(-1,
$object->fk_project,
'projectid', 0, 0, 1, 1, 0, 0, 0,
'', 1, 0,
'maxwidth500 widthcentpercentminusxx');
597 $morehtmlref .=
'<input type="submit" class="button valignmiddle" value="'.$langs->trans(
"Modify").
'">';
598 $morehtmlref .=
'</form>';
600 $morehtmlref .= $form->form_project($_SERVER[
'PHP_SELF'].
'?id='.
$object->id, (property_exists(
$object,
'socid') ?
$object->socid : 0),
$object->fk_project, ($action ==
'classify' ?
'projectid' :
'none'), 0, 0, 0, 1,
'',
'maxwidth300');
603 if (!empty(
$object->fk_project)) {
605 $proj->fetch(
$object->fk_project);
606 $morehtmlref .= $proj->getNomUrl(1);
608 $morehtmlref .=
'<span class="opacitymedium"> - '.dol_escape_htmltag($proj->title).
'</span>';
614 $morehtmlref .=
'</div>';
615 $linkback =
'<a href="'.DOL_URL_ROOT.
'/compta/bank/various_payment/list.php?restore_lastsearch_values=1'.(!empty($socid) ?
'&socid='.$socid :
'').
'">'.$langs->trans(
"BackToList").
'</a>';
617 $morehtmlstatus =
'';
619 dol_banner_tab(
$object,
'id', $linkback, 1,
'rowid',
'ref', $morehtmlref,
'', 0,
'', $morehtmlstatus);
621 print
'<div class="fichecenter">';
622 print
'<div class="underbanner clearboth"></div>';
624 print
'<table class="border centpercent tableforfield">';
627 print
'<tr><td class="titlefield">'.$langs->trans(
"Label").
'</td><td>'.
$object->label.
'</td></tr>';
631 print
'<td>'.$langs->trans(
"DatePayment").
'</td><td>';
636 print
'<tr><td>'.$langs->trans(
"DateValue").
'</td><td>';
642 $sens = $langs->trans(
"Credit");
644 $sens = $langs->trans(
"Debit");
646 print
'<tr><td>'.$langs->trans(
"Sens").
'</td><td>'.$sens.
'</td></tr>';
648 print
'<tr><td>'.$langs->trans(
"Amount").
'</td><td><span class="amount">'.
price(
$object->amount, 0, $langs, 1, -1, -1, $conf->currency).
'</span></td></tr>';
652 if (isModEnabled(
'accounting')) {
653 print
'<tr><td class="nowrap">';
654 print $form->editfieldkey(
'AccountAccounting',
'accountancy_code',
$object->accountancy_code,
$object, (!$alreadyaccounted && $permissiontoadd),
'string',
'', 0);
656 if ($action ==
'editaccountancy_code' && (!$alreadyaccounted && $permissiontoadd)) {
658 print $formaccounting->formAccountingAccount($_SERVER[
'PHP_SELF'].
'?id='.
$object->id,
$object->accountancy_code,
'accountancy_code', 0, 1,
'', 1);
661 $accountingaccount->fetch(
'',
$object->accountancy_code, 1);
663 print $accountingaccount->getNomUrl(0, 1, 1,
'', 1);
667 print
'<tr><td class="nowrap">';
668 print $langs->trans(
"AccountAccounting");
670 print
$object->accountancy_code;
675 print
'<tr><td class="nowrap">';
676 print $form->editfieldkey(
'SubledgerAccount',
'subledger_account',
$object->subledger_account,
$object, (!$alreadyaccounted && $permissiontoadd),
'string',
'', 0);
678 if ($action ==
'editsubledger_account' && (!$alreadyaccounted && $permissiontoadd)) {
680 print $formaccounting->formAccountingAccount($_SERVER[
'PHP_SELF'] .
'?id=' .
$object->id,
$object->subledger_account,
'subledger_account', 1, 1,
'', 1);
682 print $form->editfieldval(
'SubledgerAccount',
'subledger_account',
$object->subledger_account,
$object, (!$alreadyaccounted && $permissiontoadd),
'string',
'',
null,
null,
'', 1,
'lengthAccounta');
689 $bankaccountnotfound = 0;
691 if (isModEnabled(
'bank')) {
693 print
'<td>'.$langs->trans(
'BankTransactionLine').
'</td>';
694 print
'<td colspan="3">';
697 $result = $bankline->fetch(
$object->fk_bank);
700 $bankaccountnotfound = 1;
702 print $bankline->getNomUrl(1, 0,
'showall');
705 $bankaccountnotfound = 1;
707 print
'<span class="opacitymedium">'.$langs->trans(
"NoRecordfound").
'</span>';
714 $parameters = array(
'socid' =>
$object->id);
715 include DOL_DOCUMENT_ROOT.
'/core/tpl/extrafields_view.tpl.php';
721 print
'<div class="clearboth"></div>';
729 print
'<div class="tabsAction">'.
"\n";
735 if ($permissiontoadd) {
736 print
'<div class="inline-block divButAction"><a class="butAction" href="'.dol_buildpath(
"/compta/bank/various_payment/card.php", 1).
'?id='.
$object->id.
'&action=clone">'.$langs->trans(
"ToClone").
"</a></div>";
740 if (empty(
$object->rappro) || $bankaccountnotfound) {
741 if ($permissiontoadd) {
742 if ($alreadyaccounted) {
743 print
'<div class="inline-block divButAction"><a class="butActionRefused classfortooltip" href="#" title="'.$langs->trans(
"Accounted").
'">'.$langs->trans(
"Delete").
'</a></div>';
745 print
'<div class="inline-block divButAction"><a class="butActionDelete" href="card.php?id='.$object->id.
'&action=delete&token='.
newToken().
'">'.$langs->trans(
"Delete").
'</a></div>';
748 print
'<div class="inline-block divButAction"><a class="butActionRefused classfortooltip" href="#" title="'.(dol_escape_htmltag($langs->trans(
"NotAllowed"))).
'">'.$langs->trans(
"Delete").
'</a></div>';
751 print
'<div class="inline-block divButAction"><a class="butActionRefused classfortooltip" href="#" title="'.$langs->trans(
"LinkedToAConciliatedTransaction").
'">'.$langs->trans(
"Delete").
'</a></div>';
if( $user->socid > 0) if(! $user->hasRight('accounting', 'chartofaccount')) $object
length_accounta($accounta)
Return Auxiliary accounting account of thirdparties with defined length.
if(!defined('NOREQUIRESOC')) if(!defined( 'NOREQUIRETRAN')) if(!defined('NOTOKENRENEWAL')) if(!defined( 'NOREQUIREMENU')) if(!defined('NOREQUIREHTML')) if(!defined( 'NOREQUIREAJAX')) llxHeader()
Empty header.
various_payment_prepare_head($object)
Prepare array with list of tabs.
Class to manage bank transaction lines.
Class to manage accounting accounts.
Class to manage bank categories.
Class to manage various payments.
Class to manage projects.
dol_mktime($hour, $minute, $second, $month, $day, $year, $gm='auto', $check=1)
Return a timestamp date built from detailed information (by default a local PHP server timestamp) Rep...
load_fiche_titre($title, $morehtmlright='', $picto='generic', $pictoisfullpath=0, $id='', $morecssontable='', $morehtmlcenter='')
Load a title with picto.
img_picto($titlealt, $picto, $moreatt='', $pictoisfullpath=0, $srconly=0, $notitle=0, $alt='', $morecss='', $marginleftonlyshort=2)
Show picto whatever it's its name (generic function)
GETPOSTINT($paramname, $method=0)
Return the value of a $_GET or $_POST supervariable, converted into integer.
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.
price2num($amount, $rounding='', $option=0)
Function that return a number with universal decimal format (decimal separator is '.
dol_get_fiche_end($notab=0)
Return tab footer of a card.
price($amount, $form=0, $outlangs='', $trunc=1, $rounding=-1, $forcerounding=-1, $currency_code='')
Function to format a value into an amount for visual output Function used into PDF and HTML pages.
dol_getIdFromCode($db, $key, $tablename, $fieldkey='code', $fieldid='id', $entityfilter=0, $filters='')
Return an id or code from a code or id.
dol_print_date($time, $format='', $tzoutput='auto', $outputlangs=null, $encodetooutput=false)
Output date in a string format according to outputlangs (or langs if not defined).
newToken()
Return the value of token currently saved into session with name 'newtoken'.
GETPOST($paramname, $check='alphanohtml', $method=0, $filter=null, $options=null, $noreplace=0)
Return value of a param into GET or POST supervariable.
GETPOSTFLOAT($paramname, $rounding='')
Return the value of a $_GET or $_POST supervariable, converted into float.
setEventMessages($mesg, $mesgs, $style='mesgs', $messagekey='', $noduplicate=0)
Set event messages in dol_events session object.
dol_buildpath($path, $type=0, $returnemptyifnotfound=0)
Return path of url or filesystem.
dol_print_error($db=null, $error='', $errors=null)
Displays error message system with all the information to facilitate the diagnosis and the escalation...
getDolGlobalString($key, $default='')
Return dolibarr global constant string value.
img_edit($titlealt='default', $float=0, $other='')
Show logo edit/modify fiche.
restrictedArea(User $user, $features, $object=0, $tableandshare='', $feature2='', $dbt_keyfield='fk_soc', $dbt_select='rowid', $isdraft=0, $mode=0)
Check permissions of a user to show a page and an object.