public static function createDefaultPublicRoom($force = false) { /** * @var $ilDB ilDB */ global $ilDB; if ($force) { $query = 'DELETE FROM chatroom_settings WHERE room_type = ' . $ilDB->quote('default', 'text'); $ilDB->manipulate($query); $create = true; } else { $query = 'SELECT * FROM chatroom_settings WHERE room_type = ' . $ilDB->quote('default', 'text'); $rset = $ilDB->query($query); $create = !$ilDB->fetchAssoc($rset); } if ($create) { require_once 'Modules/Chatroom/classes/class.ilObjChatroom.php'; $newObj = new ilObjChatroom(); $newObj->setType('chtr'); $newObj->setTitle('Public Chat'); $newObj->setDescription(''); $newObj->create(); // true for upload $newObj->createReference(); $newObj->putInTree(1); $newObj->setPermissions(1); $obj_id = $newObj->getId(); $ref_id = $newObj->getRefId(); $id = $ilDB->nextId('chatroom_settings'); $ilDB->insert('chatroom_settings', array('room_id' => array('integer', $id), 'object_id' => array('integer', $obj_id), 'room_type' => array('text', 'default'), 'allow_anonymous' => array('integer', 0), 'allow_custom_usernames' => array('integer', 0), 'enable_history' => array('integer', 0), 'restrict_history' => array('integer', 0), 'autogen_usernames' => array('text', 'Anonymous #'), 'allow_private_rooms' => array('integer', 1))); $settings = new ilSetting('chatroom'); $settings->set('public_room_ref', $ref_id); } }