30require
'../main.inc.php';
31require_once DOL_DOCUMENT_ROOT.
'/salaries/class/salary.class.php';
32require_once DOL_DOCUMENT_ROOT.
'/salaries/class/paymentsalary.class.php';
33require_once DOL_DOCUMENT_ROOT.
'/compta/bank/class/account.class.php';
35 require_once DOL_DOCUMENT_ROOT.
'/accountancy/class/accountingjournal.class.php';
47$langs->loadLangs(array(
"compta",
"salaries",
"bills",
"hrm"));
49$action =
GETPOST(
'action',
'aZ09') ?
GETPOST(
'action',
'aZ09') :
'view';
50$massaction =
GETPOST(
'massaction',
'alpha');
52$confirm =
GETPOST(
'confirm',
'alpha');
53$cancel =
GETPOST(
'cancel',
'alpha');
54$toselect =
GETPOST(
'toselect',
'array:int');
55$contextpage =
GETPOST(
'contextpage',
'aZ') ?
GETPOST(
'contextpage',
'aZ') :
'bomlist';
56$backtopage =
GETPOST(
'backtopage',
'alpha');
57$optioncss =
GETPOST(
'optioncss',
'aZ');
58$mode =
GETPOST(
'mode',
'alpha');
63$sortfield =
GETPOST(
'sortfield',
'aZ09comma');
64$sortorder =
GETPOST(
'sortorder',
'aZ09comma');
66if (empty($page) || $page == -1 ||
GETPOST(
'button_search',
'alpha') ||
GETPOST(
'button_removefilter',
'alpha') || (empty($toselect) && $massaction ===
'0')) {
69$offset = $limit * $page;
73 $sortfield =
"s.datep,s.rowid";
76 $sortorder =
"DESC,DESC";
82$diroutputmassaction =
$conf->user->dir_output.
'/temp/massgeneration/'.$user->id;
83$hookmanager->initHooks(array(
'salarieslist'));
86$extrafields->fetch_name_optionals_label(
$object->table_element);
88$search_array_options = $extrafields->getOptionalsFromPost(
$object->table_element,
'',
'search_');
91 $sortfield =
"s.datep,s.rowid";
94 $sortorder =
"DESC,DESC";
97$search_ref =
GETPOST(
'search_ref',
'alpha');
98$search_ref_salary =
GETPOST(
'search_ref_salary',
'alpha');
99$search_user =
GETPOST(
'search_user',
'alpha');
100$search_label =
GETPOST(
'search_label',
'alpha');
105$search_amount =
GETPOST(
'search_amount',
'alpha');
106$search_account =
GETPOST(
'search_account',
'alpha');
107$search_fk_bank =
GETPOST(
'search_fk_bank',
'alpha');
108$search_chq_number =
GETPOST(
'search_chq_number',
'alpha');
110$search_type_id =
GETPOST(
'search_type_id',
'int');
111if (!$search_type_id) {
112 $filtre =
GETPOST(
"filtre",
'restricthtml');
113 $newfiltre = str_replace(
'filtre=',
'', $filtre);
114 $filterarray = explode(
'-', $newfiltre);
115 foreach ($filterarray as $val) {
116 $part = explode(
':', $val);
117 if ($part[0] ==
's.fk_typepayment') {
118 $search_type_id = (int) $part[1];
123$childids = $user->getAllChildIds(1);
126$search_all =
GETPOST(
"search_all",
'alpha');
128foreach (
$object->fields as $key => $val) {
129 if (
GETPOST(
'search_'.$key,
'alpha') !==
'') {
130 $search[$key] =
GETPOST(
'search_'.$key,
'alpha');
135$fieldstosearchall = array();
136foreach (
$object->fields as $key => $val) {
137 if (!empty($val[
'searchall'])) {
138 $fieldstosearchall[
't.'.$key] = $val[
'label'];
143$arrayfields = array();
144foreach (
$object->fields as $key => $val) {
146 if (!empty($val[
'visible'])) {
147 $visible = (int)
dol_eval((
string) $val[
'visible'], 1, 1,
'1');
148 $arrayfields[
't.'.$key] = array(
149 'label' => $val[
'label'],
150 'checked' => (($visible < 0) ? 0 : 1),
151 'enabled' => (abs($visible) != 3 && (bool)
dol_eval((
string) $val[
'enabled'], 1)),
152 'position' => $val[
'position'],
153 'help' => isset($val[
'help']) ? $val[
'help'] :
''
158$permissiontoread = $user->hasRight(
'salaries',
'read');
159$permissiontoadd = $user->hasRight(
'salaries',
'write');
160$permissiontodelete = $user->hasRight(
'salaries',
'delete');
164if ($user->socid > 0) {
165 $socid = $user->socid;
175if (
GETPOST(
'cancel',
'alpha')) {
179if (!
GETPOST(
'confirmmassaction',
'alpha') && $massaction !=
'presend' && $massaction !=
'confirm_presend') {
183$parameters = array();
184$reshook = $hookmanager->executeHooks(
'doActions', $parameters,
$object, $action);
189if (empty($reshook)) {
191 include DOL_DOCUMENT_ROOT.
'/core/actions_changeselectedfields.inc.php';
194 if (
GETPOST(
'button_removefilter_x',
'alpha') ||
GETPOST(
'button_removefilter.x',
'alpha') ||
GETPOST(
'button_removefilter',
'alpha')) {
196 $search_ref_salary =
"";
199 $search_date_start =
'';
200 $search_date_end =
'';
201 $search_dateep_start =
'';
202 $search_dateep_end =
'';
204 $search_account =
'';
205 $search_fk_bank =
'';
206 $search_chq_number =
'';
207 $search_type_id =
"";
209 if (
GETPOST(
'button_removefilter_x',
'alpha') ||
GETPOST(
'button_removefilter.x',
'alpha') ||
GETPOST(
'button_removefilter',
'alpha')
210 ||
GETPOST(
'button_search_x',
'alpha') ||
GETPOST(
'button_search.x',
'alpha') ||
GETPOST(
'button_search',
'alpha')) {
215 $objectclass =
'PaymentSalary';
216 $objectlabel =
'SalariesPayments';
217 $uploaddir =
$conf->salaries->dir_output;
220 include DOL_DOCUMENT_ROOT.
'/core/actions_massactions.inc.php';
223 if (!$error && $massaction ==
'buildsepa' && $permissiontoadd) {
224 $objecttmp =
new $objectclass(
$db);
245$title = $langs->trans(
'SalariesPayments');
247$sql =
"SELECT u.rowid as uid, u.lastname, u.firstname, u.login, u.email, u.admin, u.photo, u.gender, u.salary as current_salary, u.fk_soc as fk_soc, u.statut as status,";
248$sql .=
" s.rowid, s.fk_user, s.amount, s.salary, sal.rowid as id_salary, sal.label, s.datep as datep, sal.dateep, b.datev as datev, s.fk_typepayment as type, s.num_payment, s.fk_bank,";
249$sql .=
" ba.rowid as bid, ba.ref as bref, ba.number as bnumber, ba.account_number, ba.fk_accountancy_journal, ba.label as blabel, ba.iban_prefix as iban, ba.bic, ba.currency_code, ba.clos,";
250$sql .=
" pst.code as payment_code";
251$sql .=
" FROM ".MAIN_DB_PREFIX.
"payment_salary as s";
252$sql .=
" INNER JOIN ".MAIN_DB_PREFIX.
"salary as sal ON (sal.rowid = s.fk_salary)";
253$sql .=
" LEFT JOIN ".MAIN_DB_PREFIX.
"c_paiement as pst ON s.fk_typepayment = pst.id";
254$sql .=
" LEFT JOIN ".MAIN_DB_PREFIX.
"bank as b ON s.fk_bank = b.rowid";
255$sql .=
" LEFT JOIN ".MAIN_DB_PREFIX.
"bank_account as ba ON b.fk_account = ba.rowid,";
256$sql .=
" ".MAIN_DB_PREFIX.
"user as u";
257$sql .=
" WHERE u.rowid = sal.fk_user";
258$sql .=
" AND s.entity IN (".getEntity(
'payment_salaries').
")";
259if (!$user->hasRight(
'salaries',
'readchild')) {
260 $sql .=
" AND s.fk_user = ".(int) $user->id;
262if (!$user->hasRight(
'salaries',
'readall')) {
263 $sql .=
" AND s.fk_user IN (".$db->sanitize(implode(
',', $childids)).
")";
268 $sql .=
" AND s.rowid=".((int) $search_ref);
270if ($search_ref_salary) {
271 $sql .=
" AND sal.rowid=".((int) $search_ref_salary);
274 $sql .=
natural_search(array(
'u.login',
'u.lastname',
'u.firstname',
'u.email'), $search_user);
279if ($search_date_start) {
280 $sql .=
" AND s.datep >= '".$db->idate($search_date_start).
"'";
282if ($search_date_end) {
283 $sql .=
" AND s.datep <= '".$db->idate($search_date_end).
"'";
285if ($search_dateep_start) {
286 $sql .=
" AND sal.dateep >= '".$db->idate($search_dateep_start).
"'";
288if ($search_dateep_end) {
289 $sql .=
" AND sal.dateep <= '".$db->idate($search_dateep_end).
"'";
294if ($search_account > 0) {
295 $sql .=
" AND b.fk_account=".((int) $search_account);
297if ($search_fk_bank) {
298 $sql .=
" AND s.fk_bank=".((int) $search_fk_bank);
300if ($search_chq_number) {
301 $sql .=
natural_search(array(
's.num_payment'), $search_chq_number);
304if ($search_type_id > 0) {
305 $sql .=
" AND s.fk_typepayment=".((int) $search_type_id);
307$sql .=
$db->order($sortfield, $sortorder);
310$nbtotalofrecords = 0;
313 $resql =
$db->query($sql);
315 $nbtotalofrecords =
$db->num_rows($resql);
320 if (($page * $limit) > (
int) $nbtotalofrecords) {
326if (is_numeric($nbtotalofrecords) && ($limit > $nbtotalofrecords || empty($limit))) {
327 $num = $nbtotalofrecords;
330 $sql .=
$db->plimit($limit + 1, $offset);
333 $resql =
$db->query($sql);
339 $num =
$db->num_rows($resql);
345llxHeader(
'', $title, $help_url,
'', 0, 0,
'',
'',
'',
'bodyforlist');
347$arrayofselected = is_array($toselect) ? $toselect : array();
351 $param .=
'&mode='.urlencode($mode);
353if (!empty($contextpage) && $contextpage != $_SERVER[
"PHP_SELF"]) {
354 $param .=
'&contextpage='.urlencode($contextpage);
356if ($limit > 0 && $limit !=
$conf->liste_limit) {
357 $param .=
'&limit='.((int) $limit);
359if ($search_type_id) {
360 $param .=
'&search_type_id='.urlencode($search_type_id);
362if ($optioncss !=
'') {
363 $param .=
'&optioncss='.urlencode($optioncss);
366 $param .=
'&search_ref='.urlencode($search_ref);
368if ($search_ref_salary) {
369 $param .=
'&search_ref_salary='.urlencode($search_ref_salary);
372 $param .=
'&search_user='.urlencode($search_user);
375 $param .=
'&search_label='.urlencode($search_label);
377if ($search_fk_bank) {
378 $param .=
'&search_fk_bank='.urlencode((
string) ($search_fk_bank));
380if ($search_chq_number) {
381 $param .=
'&search_chq_number='.urlencode((
string) ($search_chq_number));
383if ($search_account) {
384 $param .=
'&search_account='.urlencode((
string) ($search_account));
386if ($search_date_start) {
387 $param .=
'&search_date_startday='.GETPOSTINT(
'search_date_startday').
'&search_date_startmonth='.
GETPOSTINT(
'search_date_startmonth').
'&search_date_startyear='.
GETPOSTINT(
'search_date_startyear');
389if ($search_dateep_start) {
390 $param .=
'&search_dateep_startday='.GETPOSTINT(
'search_dateep_startday').
'&search_dateep_startmonth='.
GETPOSTINT(
'search_dateep_startmonth').
'&search_dateep_startyear='.
GETPOSTINT(
'search_dateep_startyear');
392if ($search_date_end) {
393 $param .=
'&search_date_endday='.GETPOSTINT(
'search_date_endday').
'&search_date_endmonth='.
GETPOSTINT(
'search_date_endmonth').
'&search_date_endyear='.
GETPOSTINT(
'search_date_endyear');
395if ($search_dateep_end) {
396 $param .=
'&search_dateep_endday='.urlencode((
string) (
GETPOSTINT(
'search_dateep_endday'))).
'&search_dateep_endmonth='.urlencode((
string) (
GETPOSTINT(
'search_dateep_endmonth'))).
'&search_dateep_endyear='.urlencode((
string) (
GETPOSTINT(
'search_dateep_endyear')));
399include DOL_DOCUMENT_ROOT.
'/core/tpl/extrafields_list_search_param.tpl.php';
402$arrayofmassactions = array(
407if (
GETPOSTINT(
'nomassaction') || in_array($massaction, array(
'presend',
'predelete'))) {
408 $arrayofmassactions = array();
410$massactionbutton = $form->selectMassAction(
'', $arrayofmassactions);
412print
'<form method="POST" id="searchFormList" action="'.dolBuildUrl($_SERVER[
"PHP_SELF"]).
'">';
413if ($optioncss !=
'') {
414 print
'<input type="hidden" name="optioncss" value="'.$optioncss.
'">';
416print
'<input type="hidden" name="token" value="'.newToken().
'">';
417print
'<input type="hidden" name="formfilteraction" id="formfilteraction" value="list">';
418print
'<input type="hidden" name="action" value="list">';
419print
'<input type="hidden" name="sortfield" value="'.$sortfield.
'">';
420print
'<input type="hidden" name="sortorder" value="'.$sortorder.
'">';
421print
'<input type="hidden" name="contextpage" value="'.$contextpage.
'">';
422print
'<input type="hidden" name="mode" value="'.$mode.
'">';
425$url = DOL_URL_ROOT.
'/salaries/card.php?action=create';
427 $url .=
'&socid='.$socid;
430$newcardbutton .= dolGetButtonTitle($langs->trans(
'ViewList'),
'',
'fa fa-bars imgforviewmode', $_SERVER[
"PHP_SELF"].
'?mode=common'.preg_replace(
'/(&|\?)*mode=[^&]+/',
'', $param),
'', ((empty($mode) || $mode ==
'common') ? 2 : 1), array(
'morecss' =>
'reposition'));
431$newcardbutton .= dolGetButtonTitle($langs->trans(
'ViewKanban'),
'',
'fa fa-th-list imgforviewmode', $_SERVER[
"PHP_SELF"].
'?mode=kanban'.preg_replace(
'/(&|\?)*mode=[^&]+/',
'', $param),
'', ($mode ==
'kanban' ? 2 : 1), array(
'morecss' =>
'reposition'));
432$newcardbutton .= dolGetButtonTitleSeparator();
433$newcardbutton = dolGetButtonTitle($langs->trans(
'NewSalaryPayment'),
'',
'fa fa-plus-circle', $url,
'', $user->hasRight(
'salaries',
'write'));
435print_barre_liste($title, $page, $_SERVER[
"PHP_SELF"], $param, $sortfield, $sortorder, $massactionbutton, $num, $nbtotalofrecords,
'object_payment', 0, $newcardbutton,
'', $limit, 0, 0, 1);
439$varpage = empty($contextpage) ? $_SERVER[
"PHP_SELF"] : $contextpage;
442$selectedfields .= (count($arrayofmassactions) ? $form->showCheckAddButtons(
'checkforselect', 1) :
'');
444print
'<div class="div-table-responsive">';
445print
'<table class="tagtable nobottomiftotal liste'.($moreforfilter ?
" listwithfilterbefore" :
"").
'">'.
"\n";
449print
'<tr class="liste_titre_filter">';
451if (
$conf->main_checkbox_left_column) {
452 print
'<td class="liste_titre maxwidthsearch">';
453 $searchpicto = $form->showFilterButtons();
458print
'<td class="liste_titre left">';
459print
'<input class="flat" type="text" size="3" name="search_ref" value="'.$db->escape($search_ref).
'">';
462print
'<td class="liste_titre center">';
463print
'<input class="flat" type="text" size="3" name="search_ref_salary" value="'.$db->escape($search_ref_salary).
'">';
466print
'<td class="liste_titre"><input type="text" class="flat width150" name="search_label" value="'.$db->escape($search_label).
'"></td>';
468print
'<td class="liste_titre center">';
469print
'<div class="nowrapfordate">';
470print $form->selectDate($search_dateep_start ? $search_dateep_start : -1,
'search_dateep_start', 0, 0, 1,
'', 1, 0, 0,
'',
'',
'',
'', 1,
'', $langs->trans(
'From'));
472print
'<div class="nowrapfordate">';
473print $form->selectDate($search_dateep_end ? $search_dateep_end : -1,
'search_dateep_end', 0, 0, 1,
'', 1, 0, 0,
'',
'',
'',
'', 1,
'', $langs->trans(
'to'));
477print
'<td class="liste_titre center">';
478print
'<div class="nowrapfordate">';
479print $form->selectDate($search_date_start ? $search_date_start : -1,
'search_date_start', 0, 0, 1,
'', 1, 0, 0,
'',
'',
'',
'', 1,
'', $langs->trans(
'From'));
481print
'<div class="nowrapfordate">';
482print $form->selectDate($search_date_end ? $search_date_end : -1,
'search_date_end', 0, 0, 1,
'', 1, 0, 0,
'',
'',
'',
'', 1,
'', $langs->trans(
'to'));
489print
'<td class="liste_titre">';
490print
'<input class="flat" type="text" size="6" name="search_user" value="'.$db->escape($search_user).
'">';
493print
'<td class="liste_titre">';
494print $form->select_types_paiements($search_type_id,
'search_type_id',
'', 0, 1, 1, 16, 1,
'maxwidth150', 1);
497print
'<td class="liste_titre"><input name="search_chq_number" class="flat width50" type="text" value="'.$db->escape($search_chq_number).
'"></td>';
501 print
'<td class="liste_titre">';
502 print
'<input class="flat width50" type="text" name="search_fk_bank" value="'.$db->escape($search_fk_bank).
'">';
506 print
'<td class="liste_titre">';
507 $form->select_comptes($search_account,
'search_account', 0,
'', 1);
511print
'<td class="liste_titre right"><input name="search_amount" class="flat" type="text" size="8" value="'.$db->escape($search_amount).
'"></td>';
514include DOL_DOCUMENT_ROOT.
'/core/tpl/extrafields_list_search_input.tpl.php';
517$parameters = array(
'arrayfields' => $arrayfields);
518$reshook = $hookmanager->executeHooks(
'printFieldListOption', $parameters,
$object);
519print $hookmanager->resPrint;
521if (!
$conf->main_checkbox_left_column) {
522 print
'<td class="liste_titre maxwidthsearch">';
523 $searchpicto = $form->showFilterButtons();
534print
'<tr class="liste_titre">';
536if (
$conf->main_checkbox_left_column) {
537 print
getTitleFieldOfList($selectedfields, 0, $_SERVER[
"PHP_SELF"],
'',
'',
'',
'', $sortfield, $sortorder,
'center maxwidthsearch ').
"\n";
546print_liste_field_titre(
"PeriodEndDate", $_SERVER[
"PHP_SELF"],
"sal.dateep",
"", $param,
'', $sortfield, $sortorder,
'center ');
548print_liste_field_titre(
"DatePayment", $_SERVER[
"PHP_SELF"],
"s.datep,s.rowid",
"", $param,
'', $sortfield, $sortorder,
'center ');
552print_liste_field_titre(
"PaymentMode", $_SERVER[
"PHP_SELF"],
"pst.code",
"", $param,
'', $sortfield, $sortorder);
554print_liste_field_titre(
"Numero", $_SERVER[
"PHP_SELF"],
"s.num_payment",
"", $param,
'', $sortfield, $sortorder,
'',
'ChequeOrTransferNumber');
557 print_liste_field_titre(
"BankTransactionLine", $_SERVER[
"PHP_SELF"],
"s.fk_bank",
"", $param,
'', $sortfield, $sortorder);
559 print_liste_field_titre(
"BankAccount", $_SERVER[
"PHP_SELF"],
"ba.label",
"", $param,
"", $sortfield, $sortorder);
562print_liste_field_titre(
"PayedByThisPayment", $_SERVER[
"PHP_SELF"],
"s.amount",
"", $param,
'class="right"', $sortfield, $sortorder);
565include DOL_DOCUMENT_ROOT.
'/core/tpl/extrafields_list_search_title.tpl.php';
567$parameters = array(
'arrayfields' => $arrayfields,
'param' => $param,
'sortfield' => $sortfield,
'sortorder' => $sortorder);
568$reshook = $hookmanager->executeHooks(
'printFieldListTitle', $parameters,
$object);
569print $hookmanager->resPrint;
571if (!
$conf->main_checkbox_left_column) {
572 print
getTitleFieldOfList($selectedfields, 0, $_SERVER[
"PHP_SELF"],
'',
'',
'',
'', $sortfield, $sortorder,
'center maxwidthsearch ').
"\n";
579$needToFetchEachLine = 0;
580if (isset($extrafields->attributes[
$object->table_element][
'computed']) && is_array($extrafields->attributes[
$object->table_element][
'computed']) && count($extrafields->attributes[
$object->table_element][
'computed']) > 0) {
581 foreach ($extrafields->attributes[
$object->table_element][
'computed'] as $key => $val) {
582 if (!is_null($val) && preg_match(
'/\$object/', $val)) {
583 $needToFetchEachLine++;
595$imaxinloop = ($limit ? min($num, $limit) : $num);
596while ($i < $imaxinloop && $resql !==
null) {
597 $obj =
$db->fetch_object($resql);
604 $object->setVarsFromFetchObj($obj);
606 $userstatic->id = $obj->uid;
607 $userstatic->lastname = $obj->lastname;
608 $userstatic->firstname = $obj->firstname;
609 $userstatic->admin = $obj->admin;
610 $userstatic->login = $obj->login;
611 $userstatic->email = $obj->email;
612 $userstatic->socid = $obj->fk_soc;
613 $userstatic->statut = (int) $obj->status;
614 $userstatic->status = (int) $obj->status;
615 $userstatic->gender = $obj->gender;
616 $userstatic->photo = $obj->photo;
618 $salstatic->id = $obj->id_salary;
619 $salstatic->ref = $obj->id_salary;
621 $paymentsalstatic->id = $obj->rowid;
622 $paymentsalstatic->ref = (
string) $obj->rowid;
623 $paymentsalstatic->amount = $obj->amount;
624 $paymentsalstatic->fk_typepayment = $obj->payment_code;
625 $paymentsalstatic->datec = $obj->dateep;
626 $paymentsalstatic->datep = $obj->datep;
628 $accountlinestatic->id = $obj->fk_bank;
629 $accountlinestatic->ref = $obj->fk_bank;
630 $paymentsalstatic->fk_bank = $accountlinestatic->id;
631 $paymentsalstatic->fk_user_author = $userstatic->id;
633 if ($mode ==
'kanban') {
635 print
'<tr class="trkanban"><td colspan="'.$savnbfield.
'">';
636 print
'<div class="box-flex-container kanban">';
639 print $paymentsalstatic->getKanbanView(
'', array(
'selected' => in_array(
$object->id, $arrayofselected)));
640 if ($i == ($imaxinloop - 1)) {
646 print
'<tr class="oddeven">';
649 if (
$conf->main_checkbox_left_column) {
650 print
'<td class="nowrap center">';
651 if ($massactionbutton || $massaction) {
653 if (in_array(
$object->id, $arrayofselected)) {
656 print
'<input id="cb'.$object->id.
'" class="flat checkforselect" type="checkbox" name="toselect[]" value="'.
$object->id.
'"'.($selected ?
' checked="checked"' :
'').
'>';
665 print
"<td>".$paymentsalstatic->getNomUrl(1).
"</td>\n";
671 print
"<td>".$salstatic->getNomUrl(1).
"</td>\n";
677 print
"<td>".dol_trunc($obj->label, 40).
"</td>\n";
683 print
'<td class="center">'.dol_print_date(
$db->jdate($obj->dateep),
'day').
"</td>\n";
689 print
'<td class="center">'.dol_print_date(
$db->jdate($obj->datep),
'day').
"</td>\n";
699 print
'<td class="tdoverflowmax150">'.$userstatic->getNomUrl(-1).
"</td>\n";
706 print $langs->trans(
"PaymentTypeShort".$obj->payment_code);
713 print
'<td>'.$obj->num_payment.
'</td>';
722 $accountlinestatic->id = $obj->fk_bank;
723 print $accountlinestatic->getNomUrl(1);
730 if ($obj->fk_bank > 0) {
732 $accountstatic->id = $obj->bid;
733 $accountstatic->ref = $obj->bref;
734 $accountstatic->number = $obj->bnumber;
735 $accountstatic->iban = $obj->iban;
736 $accountstatic->bic = $obj->bic;
737 $accountstatic->currency_code = $langs->trans(
"Currency".$obj->currency_code);
738 $accountstatic->clos = $obj->clos;
741 $accountstatic->account_number = $obj->account_number;
744 $accountingjournal->fetch($obj->fk_accountancy_journal);
746 $accountstatic->accountancy_journal = $accountingjournal->getNomUrl(0, 1, 1,
'', 1);
748 $accountstatic->label = $obj->blabel;
749 if ($accountstatic->id > 0) {
750 print $accountstatic->getNomUrl(1);
762 print
'<td class="nowrap right"><span class="amount">'.price($obj->amount).
'</span></td>';
770 $totalarray[
'val'][
'totalttcfield'] = $obj->amount;
772 $totalarray[
'val'][
'totalttcfield'] += $obj->amount;
777 include DOL_DOCUMENT_ROOT.
'/core/tpl/extrafields_list_print_fields.tpl.php';
779 $parameters = array(
'arrayfields' => $arrayfields,
'object' =>
$object,
'obj' => $obj,
'i' => $i,
'totalarray' => &$totalarray);
780 $reshook = $hookmanager->executeHooks(
'printFieldListValue', $parameters,
$object);
781 print $hookmanager->resPrint;
784 if (!
$conf->main_checkbox_left_column) {
785 print
'<td class="nowrap center">';
786 if ($massactionbutton || $massaction) {
788 if (in_array(
$object->id, $arrayofselected)) {
791 print
'<input id="cb'.$object->id.
'" class="flat checkforselect" type="checkbox" name="toselect[]" value="'.
$object->id.
'"'.($selected ?
' checked="checked"' :
'').
'>';
805include DOL_DOCUMENT_ROOT.
'/core/tpl/list_print_total.tpl.php';
817 print
'<tr><td colspan="'.$colspan.
'"><span class="opacitymedium">'.$langs->trans(
"NoRecordFound").
'</span></td></tr>';
821if ($resql !==
null) {
825$parameters = array(
'arrayfields' => $arrayfields,
'sql' => $sql);
826$reshook = $hookmanager->executeHooks(
'printFieldListFooter', $parameters,
$object);
827print $hookmanager->resPrint;
829print
'</table>'.
"\n";
if(! $sortfield) if(! $sortorder) $object
llxFooter($comment='', $zone='private', $disabledoutputofmessages=0)
Empty footer.
if(!defined('NOREQUIRESOC')) if(!defined( 'NOREQUIRETRAN')) if(!defined('NOTOKENRENEWAL')) if(!defined( 'NOREQUIREMENU')) if(!defined('NOREQUIREHTML')) if(!defined( 'NOREQUIREAJAX')) llxHeader($head='', $title='', $help_url='', $target='', $disablejs=0, $disablehead=0, $arrayofjs='', $arrayofcss='', $morequerystring='', $morecssonbody='', $replacemainareaby='', $disablenofollow=0, $disablenoindex=0)
Empty header.
Class to manage bank accounts.
Class to manage bank transaction lines.
Class to manage accounting journals.
Class to manage payments of salaries.
Class to manage salary payments.
Class to manage Dolibarr users.
dol_now($mode='gmt')
Return date for now.
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...
setEventMessages($mesg, $mesgs, $style='mesgs', $messagekey='', $noduplicate=0, $attop=0)
Set event messages in dol_events session object.
print_liste_field_titre($name, $file="", $field="", $begin="", $param="", $moreattrib="", $sortfield="", $sortorder="", $prefix="", $tooltip="", $forcenowrapcolumntitle=0)
Show title line of an array.
print_barre_liste($title, $page, $file, $options='', $sortfield='', $sortorder='', $morehtmlcenter='', $num=-1, $totalnboflines='', $picto='generic', $pictoisfullpath=0, $morehtmlright='', $morecss='', $limit=-1, $selectlimitsuffix=0, $hidenavigation=0, $pagenavastextinput=0, $morehtmlrightbeforearrow='')
Print a title with navigation controls for pagination.
GETPOSTINT($paramname, $method=0)
Return the value of a $_GET or $_POST supervariable, converted into integer.
dol_eval($s, $returnvalue=1, $hideerrors=1, $onlysimplestring='1')
Replace eval function to add more security.
natural_search($fields, $value, $mode=0, $nofirstand=0, $sqltoadd='')
Generate natural SQL search string for a criteria (this criteria can be tested on one or several fiel...
getDolGlobalInt($key, $default=0)
Return a Dolibarr global constant int value.
getTitleFieldOfList($name, $thead=0, $file="", $field="", $begin="", $moreparam="", $moreattrib="", $sortfield="", $sortorder="", $prefix="", $disablesortlink=0, $tooltip='', $forcenowrapcolumntitle=0)
Get title line of an array.
GETPOST($paramname, $check='alphanohtml', $method=0, $filter=null, $options=null, $noreplace=0)
Return value of a param into GET or POST supervariable.
dol_print_error($db=null, $error='', $errors=null)
Displays error message system with all the information to facilitate the diagnosis and the escalation...
isModEnabled($module)
Is Dolibarr module enabled.
print $langs trans("Show") . '< td style="' . $timeColor . '" align="center"> s</td > badge status0 badge status4 badge status3 Error badge status8< td align="center">< span class="badge ' . $badge . '"></span ></td >< td align="center">< a href="#" class="button button-small" onclick="openLogModal(this)" data-req="' . dol_escape_htmltag($reqSafe) . '" data-res="' . dol_escape_htmltag($resSafe) . '" data-err="' . dol_escape_htmltag($errSafe) . '">< span class="fa fa-search-plus"></span ></a ></td ></tr >< tr >< td colspan="' . $colspan . '" class="opacitymedium"></td ></tr ></table ></div ></form > logModal none logModal none s a JSON string
buildzip.php
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.