From 0b443a203e1d2847f3f1b62b1b98426c619c5aee Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Sat, 1 Jan 2022 20:37:03 +0100 Subject: [PATCH] Fix navigation on security audit list --- htdocs/admin/tools/listevents.php | 67 ++++++++++++++++++------------- 1 file changed, 38 insertions(+), 29 deletions(-) diff --git a/htdocs/admin/tools/listevents.php b/htdocs/admin/tools/listevents.php index d09551a5478..43fe233a9d0 100644 --- a/htdocs/admin/tools/listevents.php +++ b/htdocs/admin/tools/listevents.php @@ -73,42 +73,50 @@ $optioncss = GETPOST("optioncss", "aZ"); // Option for the css output (always '' $now = dol_now(); $nowarray = dol_getdate($now); -if (!GETPOSTISSET("date_startmonth")) { - $date_start = dol_get_first_day($nowarray['year'], $nowarray['mon'], 'tzuserrel'); -} elseif (GETPOST("date_startmonth") > 0) { +if (GETPOST("date_startmonth") > 0) { $date_start = dol_mktime(0, 0, 0, GETPOST("date_startmonth", 'int'), GETPOST("date_startday", 'int'), GETPOST("date_startyear", 'int'), 'tzuserrel'); } else { - $date_start = -1; + $date_start = ''; } -if (!GETPOSTISSET("date_endmonth")) { - $date_end = dol_get_last_hour(dol_now('gmt'), 'tzuserrel'); -} elseif (GETPOST("date_endmonth") > 0) { +if (GETPOST("date_endmonth") > 0) { $date_end = dol_get_last_hour(dol_mktime(23, 59, 59, GETPOST("date_endmonth", 'int'), GETPOST("date_endday", 'int'), GETPOST("date_endyear", 'int'), 'tzuserrel'), 'tzuserrel'); } else { - $date_end = -1; + $date_end = ''; } // checks:if date_start>date_end then date_end=date_start + 24 hours -if ($date_start > 0 && $date_end > 0 && $date_start > $date_end) { +if ($date_start !== '' && $date_end !== '' && $date_start > $date_end) { $date_end = $date_start + 86400; } -if (empty($date_start)) { // We define date_start and date_end - $date_start = dol_get_first_day($nowarray['year'], $nowarray['mon'], false); + +if (!GETPOSTISSET('pageplusoneold') && !GETPOSTISSET('page') && $date_start === '') { // We define date_start and date_end + $date_start = dol_get_first_day($nowarray['year'], $nowarray['mon'], 'tzuserrel'); } -if (empty($date_end)) { - $date_end = dol_mktime(23, 59, 59, $nowarray['mon'], $nowarray['mday'], $nowarray['year']); +if (!GETPOSTISSET('pageplusoneold') && !GETPOSTISSET('page') && $date_end === '') { + $date_end = dol_get_last_day($nowarray['year'], $nowarray['mon'], 'tzuserrel'); } + // Set $date_startmonth... -$tmp = dol_getdate($date_start); -$date_startday = $tmp['mday']; -$date_startmonth = $tmp['mon']; -$date_startyear = $tmp['year']; -$tmp = dol_getdate($date_end); -$date_endday = $tmp['mday']; -$date_endmonth = $tmp['mon']; -$date_endyear = $tmp['year']; +$date_startday = null; +$date_startmonth = null; +$date_startyear = null; +$date_endday = null; +$date_endmonth = null; +$date_endyear = null; +if ($date_start !== '') { + $tmp = dol_getdate($date_start); + $date_startday = $tmp['mday']; + $date_startmonth = $tmp['mon']; + $date_startyear = $tmp['year']; +} +if ($date_end !== '') { + $tmp = dol_getdate($date_end); + $date_endday = $tmp['mday']; + $date_endmonth = $tmp['mon']; + $date_endyear = $tmp['year']; +} // Add prefix session $arrayfields = array( @@ -120,6 +128,7 @@ $arrayfields = array( ) ); + /* * Actions */ @@ -128,8 +137,8 @@ $now = dol_now(); // Purge search criteria if (GETPOST('button_removefilter_x', 'alpha') || GETPOST('button_removefilter.x', 'alpha') || GETPOST('button_removefilter', 'alpha')) { // All tests are required to be compatible with all browsers - $date_start = -1; - $date_end = -1; + $date_start = ''; + $date_end = ''; $search_code = ''; $search_ip = ''; $search_user = ''; @@ -193,10 +202,10 @@ $sql .= " u.login, u.admin, u.entity, u.firstname, u.lastname, u.statut as statu $sql .= " FROM ".MAIN_DB_PREFIX."events as e"; $sql .= " LEFT JOIN ".MAIN_DB_PREFIX."user as u ON u.rowid = e.fk_user"; $sql .= " WHERE e.entity IN (".getEntity('event').")"; -if ($date_start > 0) { +if ($date_start !== '') { $sql .= " AND e.dateevent >= '".$db->idate($date_start)."'"; } -if ($date_end > 0) { +if ($date_end !== '' ) { $sql .= " AND e.dateevent <= '".$db->idate($date_end)."'"; } if ($search_code) { @@ -322,8 +331,8 @@ if ($result) { print ''; print ''; - print $form->selectDate($date_start, 'date_start', 0, 0, 0, '', 1, 0, 0, '', '', '', '', 1, '', '', 'tzuserrel'); - print $form->selectDate($date_end, 'date_end', 0, 0, 0, '', 1, 0, 0, '', '', '', '', 1, '', '', 'tzuserrel'); + print $form->selectDate($date_start === '' ? -1 : $date_start, 'date_start', 0, 0, 0, '', 1, 0, 0, '', '', '', '', 1, '', '', 'tzuserrel'); + print $form->selectDate($date_end === '' ? -1 : $date_end, 'date_end', 0, 0, 0, '', 1, 0, 0, '', '', '', '', 1, '', '', 'tzuserrel'); print ''; print ''; @@ -455,9 +464,9 @@ if ($result) { if ($num == 0) { if ($usefilter) { - print ''.$langs->trans("NoEventFoundWithCriteria").''; + print ''.$langs->trans("NoEventFoundWithCriteria").''; } else { - print ''.$langs->trans("NoEventOrNoAuditSetup").''; + print ''.$langs->trans("NoEventOrNoAuditSetup").''; } } print "";