dolibarr 21.0.0-alpha
list.php
Go to the documentation of this file.
1<?php
2/* Copyright (C) 2011-2014 Juanjo Menent <jmenent@2byte.es>
3 * Copyright (C) 2024 MDW <mdeweerd@users.noreply.github.com>
4 *
5 * This program is free software; you can redistribute it and/or modify
6 * it under the terms of the GNU General Public License as published by
7 * the Free Software Foundation; either version 3 of the License, or
8 * (at your option) any later version.
9 *
10 * This program is distributed in the hope that it will be useful,
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 * GNU General Public License for more details.
14 *
15 * You should have received a copy of the GNU General Public License
16 * along with this program. If not, see <https://www.gnu.org/licenses/>.
17 */
18
25// Load Dolibarr environment
26require '../../main.inc.php';
27require_once DOL_DOCUMENT_ROOT.'/compta/localtax/class/localtax.class.php';
28
29// Load translation files required by the page
30$langs->load("compta");
31
32$limit = GETPOSTINT('limit');
33
34// Security check
35$socid = GETPOSTINT('socid');
36if ($user->socid) {
37 $socid = $user->socid;
38}
39
40$result = restrictedArea($user, 'tax', '', '', 'charges');
41$ltt = GETPOSTINT("localTaxType");
42$mode = GETPOST('mode', 'alpha');
43
44
45/*
46 * View
47 */
48
49llxHeader();
50
51$localtax_static = new Localtax($db);
52
53$url = DOL_URL_ROOT.'/compta/localtax/card.php?action=create&localTaxType='.$ltt;
54if (!empty($socid)) {
55 $url .= '&socid='.$socid;
56}
57$param = '';
58if (!empty($mode)) {
59 $param .= '&mode='.urlencode($mode);
60}
61$newcardbutton = '';
62$newcardbutton .= dolGetButtonTitle($langs->trans('ViewList'), '', 'fa fa-bars imgforviewmode', $_SERVER["PHP_SELF"].'?localTaxType='.$ltt.'&mode=common'.preg_replace('/(&|\?)*mode=[^&]+/', '', $param), '', ((empty($mode) || $mode == 'common') ? 2 : 1), array('morecss' => 'reposition'));
63$newcardbutton .= dolGetButtonTitle($langs->trans('ViewKanban'), '', 'fa fa-th-list imgforviewmode', $_SERVER["PHP_SELF"].'?localTaxType='.$ltt.'&mode=kanban'.preg_replace('/(&|\?)*mode=[^&]+/', '', $param), '', ($mode == 'kanban' ? 2 : 1), array('morecss' => 'reposition'));
64$newcardbutton .= dolGetButtonTitleSeparator();
65$newcardbutton .= dolGetButtonTitle($langs->trans('NewLocalTaxPayment', ($ltt + 1)), '', 'fa fa-plus-circle', $url, '', $user->hasRight('tax', 'charges', 'creer'));
66
67print load_fiche_titre($langs->transcountry($ltt == 2 ? "LT2Payments" : "LT1Payments", $mysoc->country_code), $newcardbutton, 'title_accountancy');
68
69$sql = "SELECT rowid, amount, label, f.datev, f.datep";
70$sql .= " FROM ".MAIN_DB_PREFIX."localtax as f ";
71$sql .= " WHERE f.entity = ".$conf->entity." AND localtaxtype = ".((int) $ltt);
72$sql .= " ORDER BY datev DESC";
73
74$result = $db->query($sql);
75if ($result) {
76 $num = $db->num_rows($result);
77 $i = 0;
78 $total = 0;
79
80 print '<div class="div-table-responsive-no-min">'; // You can use div-table-responsive-no-min if you don't need reserved height for your table
81 print '<table class="noborder centpercent">';
82 print '<tr class="liste_titre">';
83 print '<td class="nowrap" align="left">'.$langs->trans("Ref").'</td>';
84 print "<td>".$langs->trans("Label")."</td>";
85 print "<td>".$langs->trans("PeriodEndDate")."</td>";
86 print '<td class="nowrap" align="left">'.$langs->trans("DatePayment").'</td>';
87 print '<td class="right">'.$langs->trans("PayedByThisPayment").'</td>';
88 print "</tr>\n";
89
90 $savnbfield = 5;
91
92 $imaxinloop = ($limit ? min($num, $limit) : $num);
93 while ($i < $imaxinloop) {
94 $obj = $db->fetch_object($result);
95
96 $localtax_static->label = $obj->label;
97 $localtax_static->id = $obj->rowid;
98 $localtax_static->ref = $obj->rowid;
99 $localtax_static->datev = $obj->datev;
100 $localtax_static->datep = $obj->datep;
101 $localtax_static->amount = $obj->amount;
102
103 $total += $obj->amount;
104
105 if ($mode == 'kanban') {
106 if ($i == 0) {
107 print '<tr class="trkanban"><td colspan="'.$savnbfield.'">';
108 print '<div class="box-flex-container kanban">';
109 }
110 // Output Kanban
111 print $localtax_static->getKanbanView('', array('selected' => in_array($object->id, $arrayofselected)));
112 if ($i == ($imaxinloop - 1)) {
113 print '</div>';
114 print '</td></tr>';
115 }
116 } else {
117 print '<tr class="oddeven">';
118 print "<td>".$localtax_static->getNomUrl(1)."</td>\n";
119 print "<td>".dol_trunc($obj->label, 40)."</td>\n";
120 print '<td class="left">'.dol_print_date($db->jdate($obj->datev), 'day')."</td>\n";
121 print '<td class="left">'.dol_print_date($db->jdate($obj->datep), 'day')."</td>\n";
122
123 print '<td class="right nowraponall"><span class="amount">'.price($obj->amount).'</span></td>';
124 print "</tr>\n";
125 }
126 $i++;
127 }
128 print '<tr class="liste_total"><td colspan="4">'.$langs->trans("Total").'</td>';
129 print '<td class="right"><span class="amount">'.price($total).'</span></td></tr>';
130
131 print "</table>";
132 print '</div>';
133
134 $db->free($result);
135} else {
136 dol_print_error($db);
137}
138
139// End of page
140llxFooter();
141$db->close();
if( $user->socid > 0) if(! $user->hasRight('accounting', 'chartofaccount')) $object
Definition card.php:58
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.
Definition wrapper.php:70
Class to manage local tax.
llxFooter()
Footer empty.
Definition document.php:107
load_fiche_titre($title, $morehtmlright='', $picto='generic', $pictoisfullpath=0, $id='', $morecssontable='', $morehtmlcenter='')
Load a title with picto.
GETPOSTINT($paramname, $method=0)
Return the value of a $_GET or $_POST supervariable, converted into integer.
dolGetButtonTitle($label, $helpText='', $iconClass='fa fa-file', $url='', $id='', $status=1, $params=array())
Function dolGetButtonTitle : this kind of buttons are used in title in list.
dolGetButtonTitleSeparator($moreClass="")
Add space between dolGetButtonTitle.
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...
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.