index.php
来自「很棒的在线教学系统」· PHP 代码 · 共 176 行
PHP
176 行
<?php // $Id: index.php,v 1.4.2.1 2008/04/02 06:10:02 dongsheng Exp $ require_once('../../../config.php'); require_once('../lib.php'); $id = required_param('id', PARAM_INT); $groupid = optional_param('groupid', 0, PARAM_INT); // only for teachers $message = optional_param('message', '', PARAM_CLEAN); $refresh = optional_param('refresh', '', PARAM_RAW); // force refresh $last = optional_param('last', 0, PARAM_INT); // last time refresh or sending $newonly = optional_param('newonly', 0, PARAM_BOOL); // show only new messages if (!$chat = get_record('chat', 'id', $id)) { error('Could not find that chat room!'); } if (!$course = get_record('course', 'id', $chat->course)) { error('Could not find the course this belongs to!'); } if (!$cm = get_coursemodule_from_instance('chat', $chat->id, $course->id)) { error('Course Module ID was incorrect'); } $context = get_context_instance(CONTEXT_MODULE, $cm->id); require_login($course->id, false, $cm); require_capability('mod/chat:chat',$context);/// Check to see if groups are being used here if ($groupmode = groups_get_activity_groupmode($cm)) { // Groups are being used if ($groupid = groups_get_activity_group($cm)) { if (!$group = groups_get_group($groupid, false)) { error("That group (id $groupid) doesn't exist!"); } $groupname = ': '.$group->name; } else { $groupname = ': '.get_string('allparticipants'); } } else { $groupid = 0; $groupname = ''; } $strchat = get_string('modulename', 'chat'); // must be before current_language() in chat_login_user() to force course language!!! $strchats = get_string('modulenameplural', 'chat'); $stridle = get_String('idle', 'chat'); if (!$chat_sid = chat_login_user($chat->id, 'basic', $groupid, $course)) { error('Could not log in to chat room!!'); } if (!$chatusers = chat_get_users($chat->id, $groupid, $cm->groupingid)) { print_error('errornousers', 'chat'); } set_field('chat_users', 'lastping', time(), 'sid', $chat_sid); if (!isset($SESSION->chatprefs)) { $SESSION->chatprefs = array(); } if (!isset($SESSION->chatprefs[$chat->id])) { $SESSION->chatprefs[$chat->id] = array(); $SESSION->chatprefs[$chat->id]['chatentered'] = time(); } $chatentered = $SESSION->chatprefs[$chat->id]['chatentered']; $refreshedmessage = ''; if (!empty($refresh) and data_submitted()) { $refreshedmessage = $message; chat_delete_old_users(); } else if (empty($refresh) and data_submitted() and confirm_sesskey()) { if ($message!='') { $newmessage = new object(); $newmessage->chatid = $chat->id; $newmessage->userid = $USER->id; $newmessage->groupid = $groupid; $newmessage->systrem = 0; $newmessage->message = $message; $newmessage->timestamp = time(); if (!insert_record('chat_messages', $newmessage)) { error('Could not insert a chat message!'); } set_field('chat_users', 'lastmessageping', time(), 'sid', $chat_sid); add_to_log($course->id, 'chat', 'talk', "view.php?id=$cm->id", $chat->id, $cm->id); } chat_delete_old_users(); redirect('index.php?id='.$id.'&newonly='.$newonly.'&last='.$last); } print_header("$strchat: $course->shortname: ".format_string($chat->name,true)."$groupname", '', '', 'message'); echo '<div id="mod-chat-gui_basic">'; echo '<h1>'.get_string('participants').'</h1>'; echo '<div id="participants"><ul>'; foreach($chatusers as $chu) { echo '<li>'; print_user_picture($chu->id, $course->id, $chu->picture, 24, false, false, '', false); echo '<div class="userinfo">'; echo fullname($chu).' '; if ($idle = time() - $chu->lastmessageping) { echo '<span class="idle">'.$stridle.' '.format_time($idle).'</span>'; } else { echo '<span class="idle" />'; } echo '</div>'; echo '</li>'; } echo '</ul></div>'; echo '<div id="send">'; echo '<form id="editing" method="post" action="index.php">'; $usehtmleditor = can_use_html_editor(); echo '<h1><label for="message">'.get_string('sendmessage', 'message').'</label></h1>'; echo '<div>'; echo '<input type="text" id="message" name="message" value="'.s($refreshedmessage, true).'" size="60" />'; echo '</div><div>'; echo '<input type="hidden" name="id" value="'.$id.'" />'; echo '<input type="hidden" name="groupid" value="'.$groupid.'" />'; echo '<input type="hidden" name="last" value="'.time().'" />'; echo '<input type="hidden" name="sesskey" value="'.$USER->sesskey.'" />'; echo '<input type="submit" value="'.get_string('submit').'" /> '; echo '<input type="submit" name="refresh" value="'.get_string('refresh').'" />'; echo '<input type="checkbox" name="newonly" id="newonly" '.($newonly?'checked="checked" ':'').'/><label for="newonly">'.get_string('newonlymsg', 'message').'</label>'; echo '</div>'; echo '</form>'; echo '</div>'; echo '<div id="messages">'; echo '<h1>'.get_string('messages', 'chat').'</h1>'; $allmessages = array(); $options = new object(); $options->para = false; $options->newlines = true; if ($newonly) { $lastsql = "AND timestamp > $last"; } else { $lastsql = ""; } $groupselect = $groupid ? "AND (groupid='$groupid' OR groupid='0')" : ""; $messages = get_records_select("chat_messages", "chatid = '$chat->id' AND timestamp > $chatentered $lastsql $groupselect", "timestamp DESC"); if ($messages) { foreach ($messages as $message) { $allmessages[] = chat_format_message($message, $course->id, $USER); } } if (empty($allmessages)) { echo get_string('nomessagesfound', 'message'); } else { foreach ($allmessages as $message) { echo $message->basic; } } echo '</div></div>'; print_footer('none');?>
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?