function chat() { checkPerm('view'); $lang =& DoceboLanguage::createInstance('chat'); require_once $GLOBALS['where_scs'] . '/lib/lib.chat.php'; $chat_man = new ChatManager(); $id_room = $chat_man->getIdRoom('lms', 'course', $_SESSION['idCourse']); if (!$id_room) { require_once $GLOBALS['where_scs'] . '/lib/lib.room.php'; $course_name = $GLOBALS['course_descriptor']->getValue('name'); $rules = array('room_name' => $course_name, 'room_type' => 'course', 'id_source' => $_SESSION['idCourse']); $id_room = insertRoom($rules); } // show only the room of the current course $chat_man->setRoomFilter(array($id_room)); //$users = $chat_man->getRoomUserOnline('lms', $id_room); $GLOBALS['page']->add(getTitleArea($lang->def('_CHAT'), 'advice') . '<div class="std_block">' . '<div>' . $lang->def('_CHAT_DESCRIPTION') . '</div><br />' . '<div>' . $chat_man->getOpenChatCommand($lang->def('_OPENCHAT'), $lang->def('_OPENCHAT_WA'), 'lms', $id_room) . '</div>' . '</div>', 'content'); }
function getRoomFilter($table = FALSE) { require_once $GLOBALS["where_scs"] . "/lib/lib.chat.php"; $chatman = new ChatManager(); $res = ""; $tab_prefix = $table === FALSE ? "" : $table . "."; $room_list = $chatman->getRoomFilter(); $room_type = $chatman->getRoomTypeFilter(); if (!empty($room_list)) { $res .= " AND " . $tab_prefix . "id_room IN (" . $room_list . ")"; } if (!empty($room_type)) { $res .= " AND " . $tab_prefix . "room_type IN (" . $room_type . ")"; } return $res; }