From 3dfd307fe0e42ca1cf0007730c0975f2769daba2 Mon Sep 17 00:00:00 2001 From: skodak Date: Mon, 7 Feb 2005 20:33:44 +0000 Subject: [PATCH] maybe fixed double posts, fixed javascript errors, solved problems with reloading --- mod/chat/gui_header_js/chatinput.php | 19 ++++++++----------- mod/chat/gui_header_js/index.php | 2 +- mod/chat/gui_header_js/insert.php | 2 +- mod/chat/gui_header_js/jsupdate.php | 8 +++++--- mod/chat/gui_header_js/users.php | 14 ++++++++------ mod/chat/lib.php | 12 +++++------- 6 files changed, 28 insertions(+), 29 deletions(-) diff --git a/mod/chat/gui_header_js/chatinput.php b/mod/chat/gui_header_js/chatinput.php index e7477b7fe6..c4d9471263 100644 --- a/mod/chat/gui_header_js/chatinput.php +++ b/mod/chat/gui_header_js/chatinput.php @@ -7,24 +7,22 @@ $chat_sid = required_param('chat_sid', PARAM_ALPHANUM); - if (!$chatuser = get_record('chat_users', 'sid', $chat_sid)) { error('Not logged in!'); } chat_force_language($chatuser->lang); - ob_start(); ?> '; } - //redirect('empty.php'); + redirect('../empty.php'); ?> diff --git a/mod/chat/gui_header_js/jsupdate.php b/mod/chat/gui_header_js/jsupdate.php index 57da1a5ece..7ac6981c0f 100644 --- a/mod/chat/gui_header_js/jsupdate.php +++ b/mod/chat/gui_header_js/jsupdate.php @@ -80,7 +80,8 @@ update_record('chat_users', $chatuser); if ($refreshusers) { - echo "parent.users.location.href = parent.users.document.anchors[0].href;\n"; + echo "if (parent.users.document.anchors[0] != null) {" . + "parent.users.location.href = parent.users.document.anchors[0].href;}\n"; } else { foreach($us as $uid=>$lastping) { $min = (int) ($lastping/60); @@ -88,7 +89,8 @@ $min = $min < 10 ? '0'.$min : $min; $sec = $sec < 10 ? '0'.$sec : $sec; $idle = $min.':'.$sec; - echo "parent.users.document.getElementById('uidle{$uid}').innerHTML = '$idle';"; + echo "if (parent.users.document.getElementById('uidle{$uid}') != null) {". + "parent.users.document.getElementById('uidle{$uid}').innerHTML = '$idle';}\n"; } } ?> @@ -102,6 +104,6 @@ echo ''; } ?> - Refresh link + Refresh link diff --git a/mod/chat/gui_header_js/users.php b/mod/chat/gui_header_js/users.php index 5b909be362..1aa5f2770c 100644 --- a/mod/chat/gui_header_js/users.php +++ b/mod/chat/gui_header_js/users.php @@ -68,11 +68,13 @@ function update() { for(i=0; iRefresh link'; + echo '
Refresh link
'; echo ''; foreach ($chatusers as $chatuser) { $lastping = $timenow - $chatuser->lastmessageping; diff --git a/mod/chat/lib.php b/mod/chat/lib.php index 7a4c6c2e8d..5100b70070 100644 --- a/mod/chat/lib.php +++ b/mod/chat/lib.php @@ -357,10 +357,9 @@ function chat_get_latest_message($chatid, $groupid=0) { ////////////////////////////////////////////////////////////////////// // login if not already logged in -function chat_login_user($chatid, $version, $groupid, $course) { +function chat_login_user($chatid, $version, $groupid, $course, $sendentermsg=false) { global $USER; - - if ($chatuser = get_record_select('chat_users', "chatid='$chatid' AND userid='$USER->id' AND groupid='$groupid' LIMIT 1")) { + if ($chatuser = get_record_select('chat_users', "chatid='$chatid' AND userid='$USER->id' AND groupid='$groupid'")) { $chatuser->version = $version; $chatuser->ip = $USER->lastIP; $chatuser->lastping = time(); @@ -373,7 +372,6 @@ function chat_login_user($chatid, $version, $groupid, $course) { if (!update_record('chat_users', $chatuser)) { return false; } - } else { $chatuser->chatid = $chatid; $chatuser->userid = $USER->id; @@ -382,14 +380,14 @@ function chat_login_user($chatid, $version, $groupid, $course) { $chatuser->ip = $USER->lastIP; $chatuser->lastping = $chatuser->firstping = $chatuser->lastmessageping = time(); $chatuser->sid = random_string(32); - $chatuser->course = $course->id; //caching only, but needed for current_language() to work properly! - $chatuser->lang = current_language(); + $chatuser->course = $course->id; //caching - needed for current_language too + $chatuser->lang = current_language(); //caching - to resource intensive to find out later if (!insert_record('chat_users', $chatuser)) { return false; } - if ($version == 'header_js') { + if ($sendentermsg) { $message->chatid = $chatuser->chatid; $message->userid = $chatuser->userid; $message->groupid = $groupid; -- 2.39.5