function displayScouts(&$db, &$messageBox, &$player, $read, $group) { if ($group) { //here we group new messages $query = 'SELECT alignment, player_id, sender_id, player_name AS sender, count( message_id ) AS number, min( send_time ) as first, max( send_time) as last, msg_read FROM message JOIN player ON player.account_id = message.sender_id AND message.game_id = player.game_id WHERE message.account_id = ' . $db->escapeNumber($player->getAccountID()) . ' AND player.game_id = ' . $db->escapeNumber($player->getGameID()) . ' AND message_type_id = ' . $db->escapeNumber(MSG_SCOUT) . ' AND receiver_delete = ' . $db->escapeBoolean(false) . ' AND msg_read = ' . $db->escapeBoolean($read) . ' GROUP BY sender_id, msg_read ORDER BY send_time DESC'; $db->query($query); while ($db->nextRecord()) { //display grouped stuff (allow for deletion) $playerName = get_alignment_text($db->getField('alignment'), stripslashes($db->getField('sender')) . ' (' . $db->getField('player_id') . ')'); $message = 'Your forces have spotted ' . $playerName . ' passing your forces ' . $db->getField('number') . ' times.'; displayGrouped($messageBox, $playerName, $db->getField('player_id'), $db->getField('sender_id'), $message, $db->getField('first'), $db->getField('last'), $db->getField('msg_read') == 'FALSE'); } } else { //not enough to group, display separately $query = 'SELECT message_id, account_id, sender_id, message_text, send_time, msg_read FROM message WHERE account_id = ' . $db->escapeNumber($player->getAccountID()) . ' AND game_id = ' . $db->escapeNumber($player->getGameID()) . ' AND message_type_id = ' . $db->escapeNumber(MSG_SCOUT) . ' AND receiver_delete = ' . $db->escapeBoolean(false) . ' AND msg_read = ' . $db->escapeBoolean($read) . ' ORDER BY send_time DESC'; $db->query($query); while ($db->nextRecord()) { displayMessage($messageBox, $db->getField('message_id'), $db->getField('account_id'), $db->getField('sender_id'), stripslashes($db->getField('message_text')), $db->getField('send_time'), $db->getField('msg_read'), MSG_SCOUT); } } }
if ($message_count - $unread_messages > 25) { $query = 'SELECT alignment, player_id, sender_id, player_name AS sender, count( message_id ) AS number, min( send_time ) as first, max( send_time) as last FROM message, player WHERE player.account_id = message.sender_id AND message.account_id = ' . $player->account_id . ' AND message.game_id = ' . $player->game_id . ' AND player.game_id = ' . $player->game_id . ' AND message_type_id = ' . $var["folder_id"] . ' AND msg_read = "TRUE" GROUP BY sender_id ORDER BY send_time DESC'; $db->query($query); while ($db->next_record()) { $playerName = get_colored_text($db->f('alignment'), stripslashes($db->f('sender')) . ' (' . $db->f('player_id') . ')'); $message = 'Your forces have spotted ' . $playerName . ' passing your forces ' . $db->f("number") . ' times.'; displayGrouped($playerName, $db->f("player_id"), $db->f("sender_id"), $message, $db->f("first"), $db->f("last"), FALSE); } } else { $query = 'SELECT * FROM message WHERE account_id = ' . $player->account_id . ' AND game_id = ' . $player->game_id . ' AND message_type_id = ' . $var["folder_id"] . ' AND msg_read = "TRUE" ORDER BY send_time DESC'; $db->query($query); while ($db->next_record()) { displayMessage($db->f("message_id"), $db->f("sender_id"), stripslashes($db->f("message_text")), $db->f("send_time"), $db->f("msg_read"), $var['folder_id']); } } $db->query("UPDATE message SET msg_read = 'TRUE' WHERE message_type_id = " . MSG_SCOUT . " AND game_id = {$player->game_id} AND account_id = {$player->account_id}"); } else {