28require
'../../../main.inc.php';
29require_once DOL_DOCUMENT_ROOT.
'/core/lib/files.lib.php';
30require_once DOL_DOCUMENT_ROOT.
'/core/class/html.formfile.class.php';
31require_once DOL_DOCUMENT_ROOT.
'/contact/class/contact.class.php';
32require_once DOL_DOCUMENT_ROOT.
'/comm/action/class/actioncomm.class.php';
33require_once DOL_DOCUMENT_ROOT.
'/core/modules/action/rapport.class.php';
36$langs->loadLangs(array(
"agenda",
"commercial"));
38$action =
GETPOST(
'action',
'aZ09');
39$month =
GETPOST(
'month',
'int');
42$optioncss =
GETPOST(
'optioncss',
'alpha');
43$limit =
GETPOST(
'limit',
'int') ?
GETPOST(
'limit',
'int') : $conf->liste_limit;
44$sortfield =
GETPOST(
'sortfield',
'aZ09comma');
45$sortorder =
GETPOST(
'sortorder',
'aZ09comma');
46$page = GETPOSTISSET(
'pageplusone') ? (
GETPOST(
'pageplusone') - 1) :
GETPOST(
"page",
'int');
47if (empty($page) || $page < 0 ||
GETPOST(
'button_search',
'alpha') ||
GETPOST(
'button_removefilter',
'alpha')) {
51$offset = $limit * $page;
56 $sortfield =
"a.datep";
61if (!$user->hasRight(
"agenda",
"allactions",
"read")) {
70if ($action ==
'builddoc') {
72 $result = $cat->write_file(
GETPOST(
'id',
'int'));
87$sql =
"SELECT count(*) as cc,";
88$sql .=
" date_format(a.datep, '%m/%Y') as df,";
89$sql .=
" date_format(a.datep, '%m') as month,";
90$sql .=
" date_format(a.datep, '%Y') as year";
91$sql .=
" FROM ".MAIN_DB_PREFIX.
"actioncomm as a,";
92$sql .=
" ".MAIN_DB_PREFIX.
"user as u";
93$sql .=
" WHERE a.fk_user_author = u.rowid";
94$sql .=
' AND a.entity IN ('.getEntity(
'agenda').
')';
96$sql .=
" GROUP BY year, month, df";
97$sql .=
" ORDER BY year DESC, month DESC, df DESC";
99$nbtotalofrecords =
'';
101 $result = $db->query($sql);
102 $nbtotalofrecords = $db->num_rows($result);
103 if (($page * $limit) > $nbtotalofrecords) {
109$sql .= $db->plimit($limit + 1, $offset);
113$resql = $db->query($sql);
115 $num = $db->num_rows($resql);
118 if ($limit > 0 && $limit != $conf->liste_limit) {
119 $param .=
'&limit='.$limit;
122 print
'<form method="POST" id="searchFormList" action="'.$_SERVER[
"PHP_SELF"].
'">';
123 if ($optioncss !=
'') {
124 print
'<input type="hidden" name="optioncss" value="'.$optioncss.
'">';
126 print
'<input type="hidden" name="token" value="'.newToken().
'">';
127 print
'<input type="hidden" name="formfilteraction" id="formfilteraction" value="list">';
128 print
'<input type="hidden" name="action" value="list">';
129 print
'<input type="hidden" name="sortfield" value="'.$sortfield.
'">';
130 print
'<input type="hidden" name="sortorder" value="'.$sortorder.
'">';
132 print_barre_liste($langs->trans(
"EventReports"), $page, $_SERVER[
"PHP_SELF"], $param, $sortfield, $sortorder,
'', $num, $nbtotalofrecords,
'title_agenda', 0,
'',
'', $limit, 0, 0, 1);
137 print
'<div class="div-table-responsive">';
138 print
'<table class="tagtable liste'.($moreforfilter ?
" listwithfilterbefore" :
"").
'">'.
"\n";
140 print
'<tr class="liste_titre">';
141 print
'<td>'.$langs->trans(
"Period").
'</td>';
142 print
'<td class="center">'.$langs->trans(
"EventsNb").
'</td>';
143 print
'<td class="center">'.$langs->trans(
"Action").
'</td>';
144 print
'<td>'.$langs->trans(
"PDF").
'</td>';
145 print
'<td class="center">'.$langs->trans(
"Date").
'</td>';
146 print
'<td class="center">'.$langs->trans(
"Size").
'</td>';
149 while ($i < min($num, $limit)) {
150 $obj = $db->fetch_object($resql);
153 print
'<tr class="oddeven">';
156 print
"<td>".$obj->df.
"</td>\n";
159 print
'<td class="center">'.$obj->cc.
'</td>';
162 print
'<td class="center">';
163 print
'<a class="reposition" href="'.$_SERVER[
"PHP_SELF"].
'?action=builddoc&token='.newToken().
'&page='.((int) $page).
'&month='.((int) $obj->month).
'&year='.((int) $obj->year).
'">'.
img_picto($langs->trans(
'BuildDoc'),
'filenew').
'</a>';
166 $name =
"actions-".$obj->month.
"-".$obj->year.
".pdf";
167 $relativepath = $name;
168 $file = $conf->agenda->dir_temp.
"/".$name;
169 $modulepart =
'actionsreport';
170 $documenturl = DOL_URL_ROOT.
'/document.php';
171 if (isset($conf->global->DOL_URL_ROOT_DOCUMENT_PHP)) {
172 $documenturl = $conf->global->DOL_URL_ROOT_DOCUMENT_PHP;
175 if (file_exists($file)) {
176 print
'<td class="tdoverflowmax300">';
179 $filearray = array(
'name'=>basename($file),
'fullname'=>$file,
'type'=>
'file');
183 $out .=
'<a href="'.$documenturl.
'?modulepart='.$modulepart.
'&file='.urlencode($relativepath).($param ?
'&'.$param :
'').
'"';
185 $out .=
' target="_blank" rel="noopener noreferrer">';
186 $out .=
img_mime($filearray[
"name"], $langs->trans(
"File").
': '.$filearray[
"name"]);
187 $out .= $filearray[
"name"];
189 $out .= $formfile->showPreview($filearray, $modulepart, $relativepath, 0, $param);
193 print
'<td class="center">'.dol_print_date(
dol_filemtime($file),
'dayhour').
'</td>';
194 print
'<td class="center">'.dol_print_size(
dol_filesize($file)).
'</td>';
196 print
'<td> </td>';
197 print
'<td> </td>';
198 print
'<td> </td>';
if(!defined('NOREQUIRESOC')) if(!defined( 'NOREQUIRETRAN')) if(!defined('NOTOKENRENEWAL')) if(!defined( 'NOREQUIREMENU')) if(!defined('NOREQUIREHTML')) if(!defined( 'NOREQUIREAJAX')) llxHeader()
Empty header.
Class to generate event report.
dol_filemtime($pathoffile)
Return time of a file.
dol_filesize($pathoffile)
Return size of a file.
dol_mimetype($file, $default='application/octet-stream', $mode=0)
Return MIME type of a file from its name with extension.
dol_print_error($db='', $error='', $errors=null)
Displays error message system with all the information to facilitate the diagnosis and the escalation...
img_mime($file, $titlealt='', $morecss='')
Show MIME img of a file.
getDolGlobalInt($key, $default=0)
Return a Dolibarr global constant int value.
img_picto($titlealt, $picto, $moreatt='', $pictoisfullpath=false, $srconly=0, $notitle=0, $alt='', $morecss='', $marginleftonlyshort=2)
Show picto whatever it's its name (generic function)
GETPOST($paramname, $check='alphanohtml', $method=0, $filter=null, $options=null, $noreplace=0)
Return value of a param into GET or POST supervariable.
setEventMessages($mesg, $mesgs, $style='mesgs', $messagekey='', $noduplicate=0)
Set event messages in dol_events session object.
print_barre_liste($titre, $page, $file, $options='', $sortfield='', $sortorder='', $morehtmlcenter='', $num=-1, $totalnboflines='', $picto='generic', $pictoisfullpath=0, $morehtmlright='', $morecss='', $limit=-1, $hideselectlimit=0, $hidenavigation=0, $pagenavastextinput=0, $morehtmlrightbeforearrow='')
Print a title with navigation controls for pagination.
dol_syslog($message, $level=LOG_INFO, $ident=0, $suffixinfilename='', $restricttologhandler='', $logcontext=null)
Write log message into outputs.