From 5a8625e45904a19b991cec9f6a515943fe5fb0d2 Mon Sep 17 00:00:00 2001 From: moodler Date: Fri, 25 Jul 2003 09:01:02 +0000 Subject: [PATCH] A better way of doing chat_get_latest_message() that doesn't conflict with the debugging in get_record_sql --- mod/chat/lib.php | 22 +++++++++++++++++----- 1 file changed, 17 insertions(+), 5 deletions(-) diff --git a/mod/chat/lib.php b/mod/chat/lib.php index a875d435b33..a4629a0dcab 100644 --- a/mod/chat/lib.php +++ b/mod/chat/lib.php @@ -183,15 +183,27 @@ function chat_get_users($chatid) { } function chat_get_latest_message($chatid) { +/// Efficient way to extract just the latest message +/// Uses ADOdb directly instead of get_record_sql() +/// because the LIMIT command causes problems with +/// the developer debugging in there. - global $CFG; + global $db, $CFG; - return get_record_sql("SELECT * - FROM {$CFG->prefix}chat_messages - WHERE chatid = '$chatid' - ORDER BY timestamp DESC"); + if (!$rs = $db->Execute("SELECT * + FROM {$CFG->prefix}chat_messages + WHERE chatid = '$chatid' + ORDER BY timestamp DESC LIMIT 1")) { + return false; + } + if ($rs->RecordCount() == 1) { + return (object)$rs->fields; + } else { + return false; // Found no records + } } + ////////////////////////////////////////////////////////////////////// function chat_login_user($chatid, $version="header_js") {