From a42485b2488bc7fc8797a352b3a15e12a4c4615a Mon Sep 17 00:00:00 2001 From: Daniel Winzen Date: Sun, 25 Feb 2024 15:22:34 +0100 Subject: [PATCH] show delayed logouts in send_post() --- chat.php | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/chat.php b/chat.php index 8e8de99..cab5484 100644 --- a/chat.php +++ b/chat.php @@ -2069,11 +2069,13 @@ function send_post(string $rejected=''): void $disablepm=(bool) get_setting('disablepm'); if(!$disablepm){ $users=[]; - $stmt=$db->prepare('SELECT * FROM (SELECT nickname, style, 0 AS offline FROM ' . PREFIX . 'sessions WHERE entry!=0 AND status>0 AND incognito=0 UNION SELECT nickname, style, 1 AS offline FROM ' . PREFIX . 'members WHERE eninbox!=0 AND eninbox<=? AND nickname NOT IN (SELECT nickname FROM ' . PREFIX . 'sessions WHERE incognito=0)) AS t WHERE nickname NOT IN (SELECT ign FROM '. PREFIX . 'ignored WHERE ignby=? UNION SELECT ignby FROM '. PREFIX . 'ignored WHERE ign=?) ORDER BY LOWER(nickname);'); + $stmt=$db->prepare('SELECT * FROM (SELECT nickname, style, exiting, 0 AS offline FROM ' . PREFIX . 'sessions WHERE entry!=0 AND status>0 AND incognito=0 UNION SELECT nickname, style, 0, 1 AS offline FROM ' . PREFIX . 'members WHERE eninbox!=0 AND eninbox<=? AND nickname NOT IN (SELECT nickname FROM ' . PREFIX . 'sessions WHERE incognito=0)) AS t WHERE nickname NOT IN (SELECT ign FROM '. PREFIX . 'ignored WHERE ignby=? UNION SELECT ignby FROM '. PREFIX . 'ignored WHERE ign=?) ORDER BY LOWER(nickname);'); $stmt->execute([$U['status'], $U['nickname'], $U['nickname']]); while($tmp=$stmt->fetch(PDO::FETCH_ASSOC)){ if($tmp['offline']){ $users[]=["$tmp[nickname] "._('(offline)'), $tmp['style'], $tmp['nickname']]; + }elseif($tmp['exiting']){ + $users[]=["$tmp[nickname] "._('(logging out)'), $tmp['style'], $tmp['nickname']]; }else{ $users[]=[$tmp['nickname'], $tmp['style'], $tmp['nickname']]; }