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';
35$langs->loadLangs(array(
"agenda",
"commercial"));
37$action =
GETPOST(
'action',
'aZ09');
41$optioncss =
GETPOST(
'optioncss',
'alpha');
43$sortfield =
GETPOST(
'sortfield',
'aZ09comma');
44$sortorder =
GETPOST(
'sortorder',
'aZ09comma');
46if (empty($page) || $page < 0 ||
GETPOST(
'button_search',
'alpha') ||
GETPOST(
'button_removefilter',
'alpha')) {
50$offset = $limit * $page;
55 $sortfield =
"a.datep";
60if (!$user->hasRight(
"agenda",
"allactions",
"read")) {
69if ($action ==
'builddoc' && $user->hasRight(
"agenda",
"allactions",
"read")) {
70 require_once DOL_DOCUMENT_ROOT.
'/core/modules/action/doc/pdf_standard_actions.class.php';
73 $result = $cat->write_file(
null, $langs);
88$sql =
"SELECT count(*) as cc,";
89$sql .=
" date_format(a.datep, '%m/%Y') as df,";
90$sql .=
" date_format(a.datep, '%m') as month,";
91$sql .=
" date_format(a.datep, '%Y') as year";
92$sql .=
" FROM ".MAIN_DB_PREFIX.
"actioncomm as a,";
93$sql .=
" ".MAIN_DB_PREFIX.
"user as u";
94$sql .=
" WHERE a.fk_user_author = u.rowid";
95$sql .=
' AND a.entity IN ('.getEntity(
'agenda').
')';
97$sql .=
" GROUP BY year, month, df";
98$sql .=
" ORDER BY year DESC, month DESC, df DESC";
100$nbtotalofrecords =
'';
102 $result = $db->query($sql);
103 $nbtotalofrecords = $db->num_rows($result);
104 if (($page * $limit) > $nbtotalofrecords) {
110$sql .= $db->plimit($limit + 1, $offset);
114$resql = $db->query($sql);
116 $num = $db->num_rows($resql);
119 if ($limit > 0 && $limit != $conf->liste_limit) {
120 $param .=
'&limit='.$limit;
123 print
'<form method="POST" id="searchFormList" action="'.$_SERVER[
"PHP_SELF"].
'">';
124 if ($optioncss !=
'') {
125 print
'<input type="hidden" name="optioncss" value="'.$optioncss.
'">';
127 print
'<input type="hidden" name="token" value="'.newToken().
'">';
128 print
'<input type="hidden" name="formfilteraction" id="formfilteraction" value="list">';
129 print
'<input type="hidden" name="action" value="list">';
130 print
'<input type="hidden" name="sortfield" value="'.$sortfield.
'">';
131 print
'<input type="hidden" name="sortorder" value="'.$sortorder.
'">';
134 print_barre_liste($langs->trans(
"EventReports"), $page, $_SERVER[
"PHP_SELF"], $param, $sortfield, $sortorder,
'', $num, $nbtotalofrecords,
'title_agenda', 0,
'',
'', $limit, 0, 0, 1);
139 print
'<div class="div-table-responsive">';
140 print
'<table class="tagtable liste'.($moreforfilter ?
" listwithfilterbefore" :
"").
'">'.
"\n";
142 print
'<tr class="liste_titre">';
143 print
'<td>'.$langs->trans(
"Period").
'</td>';
144 print
'<td class="center">'.$langs->trans(
"EventsNb").
'</td>';
145 print
'<td class="center">'.$langs->trans(
"Action").
'</td>';
146 print
'<td>'.$langs->trans(
"PDF").
'</td>';
147 print
'<td class="center">'.$langs->trans(
"Date").
'</td>';
148 print
'<td class="center">'.$langs->trans(
"Size").
'</td>';
151 while ($i < min($num, $limit)) {
152 $obj = $db->fetch_object($resql);
155 print
'<tr class="oddeven">';
158 print
"<td>".$obj->df.
"</td>\n";
161 print
'<td class="center">'.$obj->cc.
'</td>';
164 print
'<td class="center">';
165 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>';
168 $name =
"actions-".$obj->month.
"-".$obj->year.
".pdf";
169 $relativepath = $name;
170 $file = $conf->agenda->dir_temp.
"/".$name;
171 $modulepart =
'actionsreport';
172 $documenturl = DOL_URL_ROOT.
'/document.php';
173 if (isset($conf->global->DOL_URL_ROOT_DOCUMENT_PHP)) {
177 if (file_exists($file)) {
178 print
'<td class="tdoverflowmax300">';
181 $filearray = array(
'name' => basename($file),
'fullname' => $file,
'type' =>
'file');
185 $out .=
'<a href="'.$documenturl.
'?modulepart='.$modulepart.
'&file='.urlencode($relativepath).($param ?
'&'.$param :
'').
'"';
187 $out .=
' target="_blank" rel="noopener noreferrer">';
188 $out .=
img_mime($filearray[
"name"], $langs->trans(
"File").
': '.$filearray[
"name"]);
189 $out .= $filearray[
"name"];
191 $out .= $formfile->showPreview($filearray, $modulepart, $relativepath, 0, $param);
195 print
'<td class="center">'.dol_print_date(
dol_filemtime($file),
'dayhour').
'</td>';
196 print
'<td class="center">'.dol_print_size(
dol_filesize($file)).
'</td>';
198 print
'<td> </td>';
199 print
'<td> </td>';
200 print
'<td> </td>';
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 generate event report.
dol_filemtime($pathoffile)
Return time of a file.
dol_filesize($pathoffile)
Return size of a file.
setEventMessages($mesg, $mesgs, $style='mesgs', $messagekey='', $noduplicate=0, $attop=0)
Set event messages in dol_events session object.
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.
dol_mimetype($file, $default='application/octet-stream', $mode=0)
Return MIME type of a file from its name with extension.
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.
img_mime($file, $titlealt='', $morecss='')
Show MIME img of a file.
getDolGlobalInt($key, $default=0)
Return a Dolibarr global constant int value.
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.
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 a Dolibarr global constant string value.
dol_syslog($message, $level=LOG_INFO, $ident=0, $suffixinfilename='', $restricttologhandler='', $logcontext=null)
Write log message into outputs.
accessforbidden($message='', $printheader=1, $printfooter=1, $showonlymessage=0, $params=null)
Show a message to say access is forbidden and stop program.