fix getting last sessions

group by didn't work anymore in new mysql versions
This commit is contained in:
Uwe Steinmann 2017-10-27 19:42:56 +02:00
parent f12d735124
commit d4c6dc8962
2 changed files with 3 additions and 2 deletions

View File

@ -496,8 +496,7 @@ class SeedDMS_SessionMgr {
function getLastAccessedSessions($datetime) { /* {{{ */
if(!$ts = makeTsFromLongDate($datetime))
return false;
$queryStr = "SELECT * FROM `tblSessions` WHERE `lastAccess`>=".$ts;
$queryStr .= " ORDER BY `lastAccess` DESC";
$queryStr = "SELECT a.* FROM `tblSessions` AS a LEFT OUTER JOIN `tblSessions` AS b ON a.`userID`=b.`userID` AND a.`lastAccess`< b.`lastAccess` WHERE b.`userID` IS NULL AND a.`lastAccess` >=".$ts;
$resArr = $this->db->getResultArray($queryStr);
if (is_bool($resArr) && $resArr == false)
return false;

View File

@ -46,6 +46,8 @@ class SeedDMS_View_Session extends SeedDMS_Bootstrap_Style {
$sessionmgr = new SeedDMS_SessionMgr($dms->getDB());
$sessions = $sessionmgr->getLastAccessedSessions(date('Y-m-d H:i:s', time()-3600));
if(!$sessions)
return '';
if ($user->isGuest() || count($sessions) == 0) {
return '';