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.
'/core/lib/accounting.lib.php';
33require_once DOL_DOCUMENT_ROOT.
'/compta/bank/class/paymentvarious.class.php';
34require_once DOL_DOCUMENT_ROOT.
'/compta/bank/class/account.class.php';
35require_once DOL_DOCUMENT_ROOT.
'/core/class/html.formaccounting.class.php';
36require_once DOL_DOCUMENT_ROOT.
'/accountancy/class/accountingaccount.class.php';
37require_once DOL_DOCUMENT_ROOT.
'/accountancy/class/accountingjournal.class.php';
38if (isModEnabled(
'project')) {
39 require_once DOL_DOCUMENT_ROOT.
'/projet/class/project.class.php';
40 require_once DOL_DOCUMENT_ROOT.
'/core/class/html.formprojet.class.php';
44$langs->loadLangs(array(
"compta",
"banks",
"bills",
"users",
"accountancy",
"categories"));
48$action =
GETPOST(
'action',
'alpha');
50$cancel =
GETPOST(
'cancel',
'aZ09');
51$backtopage =
GETPOST(
'backtopage',
'alpha');
54$label =
GETPOST(
"label",
"alpha");
57$paymenttype =
GETPOST(
"paymenttype",
"aZ09");
58$accountancy_code =
GETPOST(
"accountancy_code",
"alpha");
61 $subledger_account =
GETPOST(
"subledger_account",
"alpha") > 0 ?
GETPOST(
"subledger_account",
"alpha") :
'';
63 $subledger_account =
GETPOST(
"subledger_account",
"alpha");
69 $socid = $user->socid;
76$hookmanager->initHooks(array(
'variouscard',
'globalcard'));
78$permissiontoadd = $user->hasRight(
'banque',
'modifier');
86$reshook = $hookmanager->executeHooks(
'doActions', $parameters,
$object, $action);
93 if ($action !=
'addlink' && $action !=
'setaccountancy_code' && $action !=
'setsubledger_account') {
94 $urltogo = $backtopage ? $backtopage :
dol_buildpath(
'/compta/bank/various_payment/list.php', 1);
95 header(
"Location: ".$urltogo);
98 if ($id > 0 || !empty($ref)) {
99 $ret =
$object->fetch($id, $ref);
105 if ($action ==
'classin' && $permissiontoadd) {
110 if ($action ==
'add') {
130 $object->fk_user_author = $user->id;
133 $object->accountancy_code =
GETPOST(
"accountancy_code") > 0 ?
GETPOST(
"accountancy_code",
"alpha") :
"";
134 $object->subledger_account = $subledger_account;
139 if (empty($datep) || empty($datev)) {
140 $langs->load(
'errors');
141 setEventMessages($langs->trans(
"ErrorFieldRequired", $langs->transnoentitiesnoconv(
"Date")),
null,
'errors');
145 $langs->load(
'errors');
146 setEventMessages($langs->trans(
"ErrorFieldRequired", $langs->transnoentitiesnoconv(
"Amount")),
null,
'errors');
149 if (isModEnabled(
"bank") && !
$object->accountid > 0) {
150 $langs->load(
'errors');
151 setEventMessages($langs->trans(
"ErrorFieldRequired", $langs->transnoentitiesnoconv(
"BankAccount")),
null,
'errors');
155 $langs->load(
'errors');
156 setEventMessages($langs->trans(
"ErrorFieldRequired", $langs->transnoentitiesnoconv(
"PaymentMode")),
null,
'errors');
159 if (isModEnabled(
'accounting') && !
$object->accountancy_code) {
160 $langs->load(
'errors');
161 setEventMessages($langs->trans(
"ErrorFieldRequired", $langs->transnoentitiesnoconv(
"AccountAccounting")),
null,
'errors');
165 $langs->load(
'errors');
166 setEventMessages($langs->trans(
"ErrorFieldRequired", $langs->transnoentitiesnoconv(
"Sens")),
null,
'errors');
176 $urltogo = ($backtopage ? $backtopage : DOL_URL_ROOT.
'/compta/bank/various_payment/list.php');
177 header(
"Location: ".$urltogo);
189 if ($action ==
'confirm_delete' && $confirm ==
'yes') {
199 $result = $accountline->fetch(
$object->fk_bank);
201 $result = $accountline->delete($user);
207 header(
"Location: ".DOL_URL_ROOT.
'/compta/bank/various_payment/list.php');
210 $object->error = $accountline->error;
219 setEventMessages(
'Error try do delete a line linked to a conciliated bank transaction',
null,
'errors');
223 if ($action ==
'setaccountancy_code') {
228 $object->accountancy_code =
GETPOST(
'accountancy_code',
'alphanohtml');
239 if ($action ==
'setsubledger_account') {
244 $object->subledger_account = $subledger_account;
257if ($action ==
'confirm_clone' && $confirm !=
'yes') {
261if ($action ==
'confirm_clone' && $confirm ==
'yes' && $permissiontoadd) {
272 if (
GETPOST(
'clone_label',
'alphanohtml')) {
280 if ($newdatepayment) {
281 $object->datep = $newdatepayment;
283 if (!empty($newdatevalue)) {
284 $object->datev = $newdatevalue;
286 $object->datev = $newdatepayment;
289 if (GETPOSTISSET(
"clone_sens")) {
293 if (GETPOSTISSET(
"clone_amount")) {
305 header(
"Location: ".$_SERVER[
"PHP_SELF"].
"?id=".$id);
329$form =
new Form($db);
330if (isModEnabled(
'accounting')) {
333if (isModEnabled(
'project')) {
346$title =
$object->ref.
" - ".$langs->trans(
'Card');
347if ($action ==
'create') {
348 $title = $langs->trans(
"NewVariousPayment");
350$help_url =
'EN:Module_Suppliers_Invoices|FR:Module_Fournisseurs_Factures|ES:Módulo_Facturas_de_proveedores|DE:Modul_Lieferantenrechnungen';
356require_once DOL_DOCUMENT_ROOT.
'/compta/bank/class/bankcateg.class.php';
359$arrayofbankcategs = $bankcateg->fetchAll();
361foreach ($arrayofbankcategs as $bankcategory) {
362 $options[$bankcategory->id] = $bankcategory->label;
366if ($action ==
'create') {
368 if (!empty($conf->use_javascript_ajax)) {
369 print
"\n".
'<script type="text/javascript">';
370 print
'$(document).ready(function () {
372 $("#selectpaymenttype").change(function() {
375 function setPaymentType()
377 console.log("setPaymentType");
378 var code = $("#selectpaymenttype option:selected").val();
379 if (code == \'CHQ\' || code == \'VIR\')
383 $(\'.fieldrequireddyn\').addClass(\'fieldrequired\');
385 if ($(\'#fieldchqemetteur\').val() == \'\')
387 var emetteur = jQuery(\'#thirdpartylabel\').val();
388 $(\'#fieldchqemetteur\').val(emetteur);
393 $(\'.fieldrequireddyn\').removeClass(\'fieldrequired\');
394 $(\'#fieldchqemetteur\').val(\'\');
401 print
' </script>'.
"\n";
404 print
'<form action="'.$_SERVER[
"PHP_SELF"].
'" method="POST">';
405 print
'<input type="hidden" name="token" value="'.newToken().
'">';
406 print
'<input type="hidden" name="backtopage" value="'.$backtopage.
'">';
407 print
'<input type="hidden" name="action" value="add">';
409 print
load_fiche_titre($langs->trans(
"NewVariousPayment"),
'',
'object_payment');
413 print
'<table class="border centpercent">';
416 print
'<tr><td class="titlefieldcreate">';
417 print $form->editfieldkey(
'DatePayment',
'datep',
'',
$object, 0,
'string',
'', 1).
'</td><td>';
418 print $form->selectDate((empty($datep) ? -1 : $datep),
"datep", 0, 0, 0,
'add', 1, 1);
423 print $form->editfieldkey(
'DateValue',
'datev',
'',
$object, 0).
'</td><td>';
424 print $form->selectDate((empty($datev) ? -1 : $datev),
"datev", 0, 0, 0,
'add', 1, 1);
429 print $form->editfieldkey(
'Label',
'label',
'',
$object, 0,
'string',
'', 1).
'</td><td>';
430 print
'<input name="label" id="label" class="minwidth300 maxwidth150onsmartphone" value="'.($label ? $label : $langs->trans(
"VariousPayment")).
'">';
435 print $form->editfieldkey(
'Amount',
'amount',
'',
$object, 0,
'string',
'', 1).
'</td><td>';
436 print
'<input name="amount" id="amount" class="minwidth50 maxwidth100" value="'.$amount.
'">';
440 if (isModEnabled(
"bank")) {
442 print $form->editfieldkey(
'BankAccount',
'selectaccountid',
'',
$object, 0,
'string',
'', 1).
'</td><td>';
443 print
img_picto(
'',
'bank_account',
'class="pictofixedwidth"');
444 print $form->select_comptes($accountid,
"accountid", 0,
'', 2,
'', 0,
'', 1);
449 print
'<tr><td><span class="fieldrequired">'.$langs->trans(
'PaymentMode').
'</span></td><td>';
450 $form->select_types_paiements($paymenttype,
'paymenttype',
'', 2);
455 if (isModEnabled(
"bank")) {
456 print
'<tr><td><label for="num_payment">'.$langs->trans(
'Numero');
457 print
' <em>('.$langs->trans(
"ChequeOrTransferNumber").
')</em>';
458 print
'</label></td>';
459 print
'<td><input name="num_payment" class="maxwidth150onsmartphone" id="num_payment" type="text" value="'.GETPOST(
"num_payment").
'"></td></tr>'.
"\n";
462 print
'<tr><td class="'.(GETPOST(
'paymenttype') ==
'CHQ' ?
'fieldrequired ' :
'').
'fieldrequireddyn"><label for="fieldchqemetteur">'.$langs->trans(
'CheckTransmitter');
463 print
' <em>('.$langs->trans(
"ChequeMaker").
')</em>';
464 print
'</label></td>';
465 print
'<td><input id="fieldchqemetteur" name="chqemetteur" size="30" type="text" value="'.GETPOST(
'chqemetteur',
'alphanohtml').
'"></td></tr>';
468 print
'<tr><td><label for="chqbank">'.$langs->trans(
'Bank');
469 print
' <em>('.$langs->trans(
"ChequeBank").
')</em>';
470 print
'</label></td>';
471 print
'<td><input id="chqbank" name="chqbank" size="30" type="text" value="'.GETPOST(
'chqbank',
'alphanohtml').
'"></td></tr>';
475 if (isModEnabled(
'accounting')) {
477 print
'<tr><td class="titlefieldcreate fieldrequired">'.$langs->trans(
"AccountAccounting").
'</td>';
479 print $formaccounting->select_account($accountancy_code,
'accountancy_code', 1,
null, 1, 1);
482 print
'<tr><td class="titlefieldcreate">'.$langs->trans(
"AccountAccounting").
'</td>';
483 print
'<td><input class="minwidth100 maxwidthonsmartphone" name="accountancy_code" value="'.$accountancy_code.
'">';
488 if (isModEnabled(
'accounting')) {
489 print
'<tr><td>'.$langs->trans(
"SubledgerAccount").
'</td>';
492 print $formaccounting->select_auxaccount($subledger_account,
'subledger_account', 1,
'');
494 print
'<input type="text" class="maxwidth200 maxwidthonsmartphone" name="subledger_account" value="'.$subledger_account.
'">';
498 print
'<tr><td>'.$langs->trans(
"SubledgerAccount").
'</td>';
499 print
'<td><input class="minwidth100 maxwidthonsmartphone" name="subledger_account" value="'.$subledger_account.
'">';
505 $labelsens = $form->textwithpicto($langs->trans(
'Sens'), $langs->trans(
"AccountingDirectionHelp"));
506 print $form->editfieldkey($labelsens,
'sens',
'',
$object, 0,
'string',
'', 1).
'</td><td>';
507 $sensarray = array(
'0' => $langs->trans(
"Debit"),
'1' => $langs->trans(
"Credit"));
508 print $form->selectarray(
'sens', $sensarray, $sens, 1, 0, 0,
'', 0, 0, 0,
'',
'minwidth100', 1);
512 if (isModEnabled(
'project')) {
516 $langs->load(
"projects");
518 print
'<tr><td>'.$langs->trans(
"Project").
'</td><td>';
519 print
img_picto(
'',
'bank_account',
'class="pictofixedwidth"');
520 print $formproject->select_projects(-1, $projectid,
'fk_project', 0, 0, 1, 1, 0, 0, 0,
'', 1);
525 $parameters = array();
526 $reshook = $hookmanager->executeHooks(
'formObjectOptions', $parameters,
$object, $action);
527 print $hookmanager->resPrint;
530 if (is_array($options) && count($options) && $conf->categorie->enabled) {
531 print
'<tr><td>'.$langs->trans(
"RubriquesTransactions").
'</td><td>';
532 print
img_picto(
'',
'category').Form::selectarray(
'category_transaction', $options,
GETPOST(
'category_transaction'), 1, 0, 0,
'', 0, 0, 0,
'',
'minwidth300', 1);
540 print $form->buttonsSaveCancel();
553 $alreadyaccounted =
$object->getVentilExportCompta();
558 if ($action ===
'clone') {
559 $set_value_help = $form->textwithpicto(
'', $langs->trans($langs->trans(
"AccountingDirectionHelp")));
560 $sensarray = array(
'0' => $langs->trans(
"Debit"),
'1' => $langs->trans(
"Credit"));
562 $formquestion = array(
563 array(
'type' =>
'text',
'name' =>
'clone_label',
'label' => $langs->trans(
"Label"),
'value' => $langs->trans(
"CopyOf").
' '.
$object->label),
564 array(
'type' =>
'date',
'tdclass' =>
'fieldrequired',
'name' =>
'clone_date_payment',
'label' => $langs->trans(
"DatePayment"),
'value' => -1),
565 array(
'type' =>
'date',
'name' =>
'clone_date_value',
'label' => $langs->trans(
"DateValue"),
'value' => -1),
566 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)),
567 array(
'type' =>
'text',
'name' =>
'clone_amount',
'label' => $langs->trans(
"Amount"),
'value' =>
price(
$object->amount)),
568 array(
'type' =>
'select',
'name' =>
'clone_sens',
'label' => $langs->trans(
"Sens").
' '.$set_value_help,
'values' => $sensarray,
'default' =>
$object->sens),
571 print $form->formconfirm($_SERVER[
"PHP_SELF"].
'?id='.
$object->id, $langs->trans(
'ToClone'), $langs->trans(
'ConfirmCloneVariousPayment',
$object->ref),
'confirm_clone', $formquestion,
'yes', 1, 350);
575 if ($action ==
'delete') {
576 $text = $langs->trans(
'ConfirmDeleteVariousPayment');
577 print $form->formconfirm($_SERVER[
'PHP_SELF'].
'?id='.
$object->id, $langs->trans(
'DeleteVariousPayment'), $text,
'confirm_delete',
'',
'', 2);
582 $morehtmlref =
'<div class="refidno">';
584 if (isModEnabled(
'project')) {
585 $langs->load(
"projects");
587 if ($permissiontoadd) {
588 $morehtmlref .=
img_picto($langs->trans(
"Project"),
'project',
'class="pictofixedwidth"');
589 if ($action !=
'classify') {
590 $morehtmlref .=
'<a class="editfielda" href="'.$_SERVER[
'PHP_SELF'].
'?action=classify&token='.
newToken().
'&id='.
$object->id.
'">'.
img_edit($langs->transnoentitiesnoconv(
'SetProject')).
'</a> ';
592 if ($action ==
'classify') {
594 $morehtmlref .=
'<form method="post" action="'.$_SERVER[
'PHP_SELF'].
'?id='.
$object->id.
'">';
595 $morehtmlref .=
'<input type="hidden" name="action" value="classin">';
596 $morehtmlref .=
'<input type="hidden" name="token" value="'.newToken().
'">';
597 $morehtmlref .= $formproject->select_projects(-1,
$object->fk_project,
'projectid', 0, 0, 1, 1, 0, 0, 0,
'', 1, 0,
'maxwidth500 widthcentpercentminusxx');
598 $morehtmlref .=
'<input type="submit" class="button valignmiddle" value="'.$langs->trans(
"Modify").
'">';
599 $morehtmlref .=
'</form>';
601 $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');
604 if (!empty(
$object->fk_project)) {
606 $proj->fetch(
$object->fk_project);
607 $morehtmlref .= $proj->getNomUrl(1);
609 $morehtmlref .=
'<span class="opacitymedium"> - '.dol_escape_htmltag($proj->title).
'</span>';
615 $morehtmlref .=
'</div>';
616 $linkback =
'<a href="'.DOL_URL_ROOT.
'/compta/bank/various_payment/list.php?restore_lastsearch_values=1'.(!empty($socid) ?
'&socid='.$socid :
'').
'">'.$langs->trans(
"BackToList").
'</a>';
618 $morehtmlstatus =
'';
620 dol_banner_tab(
$object,
'id', $linkback, 1,
'rowid',
'ref', $morehtmlref,
'', 0,
'', $morehtmlstatus);
622 print
'<div class="fichecenter">';
623 print
'<div class="underbanner clearboth"></div>';
625 print
'<table class="border centpercent tableforfield">';
628 print
'<tr><td class="titlefield">'.$langs->trans(
"Label").
'</td><td>'.
$object->label.
'</td></tr>';
632 print
'<td>'.$langs->trans(
"DatePayment").
'</td><td>';
637 print
'<tr><td>'.$langs->trans(
"DateValue").
'</td><td>';
643 $sens = $langs->trans(
"Credit");
645 $sens = $langs->trans(
"Debit");
647 print
'<tr><td>'.$langs->trans(
"Sens").
'</td><td>'.$sens.
'</td></tr>';
649 print
'<tr><td>'.$langs->trans(
"Amount").
'</td><td><span class="amount">'.
price(
$object->amount, 0, $langs, 1, -1, -1, $conf->currency).
'</span></td></tr>';
653 if (isModEnabled(
'accounting')) {
654 print
'<tr><td class="nowrap">';
655 print $form->editfieldkey(
'AccountAccounting',
'accountancy_code',
$object->accountancy_code,
$object, (!$alreadyaccounted && $permissiontoadd),
'string',
'', 0);
657 if ($action ==
'editaccountancy_code' && (!$alreadyaccounted && $permissiontoadd)) {
659 print $formaccounting->formAccountingAccount($_SERVER[
'PHP_SELF'].
'?id='.
$object->id,
$object->accountancy_code,
'accountancy_code', 0, 1,
'', 1);
662 $accountingaccount->fetch(
'',
$object->accountancy_code, 1);
664 print $accountingaccount->getNomUrl(0, 1, 1,
'', 1);
668 print
'<tr><td class="nowrap">';
669 print $langs->trans(
"AccountAccounting");
671 print
$object->accountancy_code;
676 print
'<tr><td class="nowrap">';
677 print $form->editfieldkey(
'SubledgerAccount',
'subledger_account',
$object->subledger_account,
$object, (!$alreadyaccounted && $permissiontoadd),
'string',
'', 0);
679 if ($action ==
'editsubledger_account' && (!$alreadyaccounted && $permissiontoadd)) {
681 print $formaccounting->formAccountingAccount($_SERVER[
'PHP_SELF'] .
'?id=' .
$object->id,
$object->subledger_account,
'subledger_account', 1, 1,
'', 1);
683 print $form->editfieldval(
'SubledgerAccount',
'subledger_account',
$object->subledger_account,
$object, (!$alreadyaccounted && $permissiontoadd),
'string',
'',
null,
null,
'', 1,
'lengthAccounta');
690 $bankaccountnotfound = 0;
692 if (isModEnabled(
'bank')) {
694 print
'<td>'.$langs->trans(
'BankTransactionLine').
'</td>';
695 print
'<td colspan="3">';
698 $result = $bankline->fetch(
$object->fk_bank);
701 $bankaccountnotfound = 1;
703 print $bankline->getNomUrl(1, 0,
'showall');
706 $bankaccountnotfound = 1;
708 print
'<span class="opacitymedium">'.$langs->trans(
"NoRecordfound").
'</span>';
715 $parameters = array(
'socid' =>
$object->id);
716 include DOL_DOCUMENT_ROOT.
'/core/tpl/extrafields_view.tpl.php';
722 print
'<div class="clearboth"></div>';
730 print
'<div class="tabsAction">'.
"\n";
736 if ($permissiontoadd) {
737 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>";
741 if (empty(
$object->rappro) || $bankaccountnotfound) {
742 if ($permissiontoadd) {
743 if ($alreadyaccounted) {
744 print
'<div class="inline-block divButAction"><a class="butActionRefused classfortooltip" href="#" title="'.$langs->trans(
"Accounted").
'">'.$langs->trans(
"Delete").
'</a></div>';
746 print
'<div class="inline-block divButAction"><a class="butActionDelete" href="card.php?id='.$object->id.
'&action=delete&token='.
newToken().
'">'.$langs->trans(
"Delete").
'</a></div>';
749 print
'<div class="inline-block divButAction"><a class="butActionRefused classfortooltip" href="#" title="'.(dol_escape_htmltag($langs->trans(
"NotAllowed"))).
'">'.$langs->trans(
"Delete").
'</a></div>';
752 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.