4 require_once
'Modules/Chatroom/classes/class.ilChatroom.php';
16 private function getReadableAreas()
24 $readable_rooms = array();
26 $chatroom_objects = ilChatroom::getUntrashedChatReferences();
27 foreach($chatroom_objects as $object)
29 if(isset($readable_rooms[$object[
'obj_id']]))
34 if($rbacsystem->checkAccess(
'read',
'', $object[
'ref_id']))
37 if($room && !$room->isUserBanned($ilUser->getId()))
39 $readable_rooms[$object[
'obj_id']] = array(
40 'ref_id' => $object[
'ref_id'],
41 'obj_id' => $object[
'obj_id'],
42 'room_id' => $room->getRoomId(),
43 'title' => $object[
'title'],
44 'parent_title' => $object[
'parent_title']
51 foreach($readable_rooms as $k => $v)
53 $title[$k] = strtolower($v[
'title']);
55 array_multisort($title, SORT_STRING, $readable_rooms);
57 return $readable_rooms;
63 public function getRoomSelect()
71 $readable = $this->getReadableAreas();
72 $tpl =
new ilTemplate(
'tpl.chatroom_block_room_select.html',
true,
true,
'Modules/Chatroom');
73 $tpl->setVariable(
'TXT_SELECT_ROOM', $lng->txt(
'chat_select_room'));
74 foreach($readable as $room)
76 $tpl->setCurrentBlock(
'select_room_row');
77 $tpl->setVariable(
'ROW_VALUE', $room[
'ref_id']);
78 $tpl->setVariable(
'ROW_CAPTION', sprintf($lng->txt(
'room_in_container'), $room[
'title'], $room[
'parent_title']));
80 if($ilUser->getPref(
'chatviewer_last_selected_room') == $room[
'ref_id'])
81 $tpl->setVariable(
'ROW_SELECTED',
'selected="selected"');
83 $tpl->parseCurrentBlock();
100 include
'Modules/Chatroom/classes/class.ilChatroomUser.php';
103 $output_messages = array();
107 $output_messages[] = $msg;
110 return $output_messages;