Inheritance diagram for ilObjChat:
Collaboration diagram for ilObjChat:Public Member Functions | |
| ilObjChat ($a_id=0, $a_call_by_reference=true) | |
| Constructor public. | |
| read () | |
| initDefaultRoles () | |
| init default roles settings public | |
| ilClone ($a_parent_ref) | |
| ilClone object into tree basic clone function. | |
| delete () | |
| delete object or referenced object (in the case of a referenced object, object data is only deleted if last reference is deleted) This function removes an object entirely from system!! | |
| sendMessage ($a_id) | |
| getHTMLDirectory () | |
| __formatRecipient (&$user) | |
| __formatSubject (&$lang) | |
| __formatBody (&$user, &$lang) | |
Data Fields | |
| $server_conf | |
| $server_comm | |
| $chat_room | |
| $chat_user | |
Definition at line 41 of file class.ilObjChat.php.
| ilObjChat::__formatBody | ( | &$ | user, | |
| &$ | lang | |||
| ) |
Definition at line 207 of file class.ilObjChat.php.
References $lang, and ilObject::getRefId().
Referenced by sendMessage().
{
$room_id = $this->chat_room->getRoomId();
$body = $lang->txt("chat_invitation_body")." ";
$body .= $this->ilias->account->getFullname();
$body .= "\n";
$body .= $lang->txt("chat_chatroom_body")." ".$this->chat_room->getTitle()."\n\n";
$body .= "<a class=\"navigation\" href=\"./chat/chat.php?room_id=".$room_id."&ref_id=".$this->getRefId()."\" target=\"_blank\">".
$lang->txt("chat_to_chat_body")."</a>";
return $body;
}
Here is the call graph for this function:
Here is the caller graph for this function:| ilObjChat::__formatRecipient | ( | &$ | user | ) |
Definition at line 193 of file class.ilObjChat.php.
References $user.
Referenced by sendMessage().
Here is the caller graph for this function:| ilObjChat::__formatSubject | ( | &$ | lang | ) |
Definition at line 202 of file class.ilObjChat.php.
References $lang.
Referenced by sendMessage().
{
return $lang->txt("chat_invitation_subject");
}
Here is the caller graph for this function:| ilObjChat::delete | ( | ) |
delete object or referenced object (in the case of a referenced object, object data is only deleted if last reference is deleted) This function removes an object entirely from system!!
public
Reimplemented from ilObject.
Definition at line 108 of file class.ilObjChat.php.
References $data, $num, $query, and $res.
{
if(!parent::delete())
{
return false;
}
$rooms = $this->chat_room->getAllRoomsOfObject();
foreach($rooms as $room)
{
$this->chat_room->delete($room["room_id"]);
}
// FINALLY DELETE MESSAGES IN PUBLIC ROOM
$query = "DELETE FROM chat_room_messages ".
"WHERE chat_id = '".$this->getRefId()."'";
$res = $this->ilias->db->query($query);
// AND ALL USERS
$query = "DELETE FROM chat_user ".
"WHERE chat_id = '".$this->getRefId()."'";
$res = $this->ilias->db->query($query);
// AND ALL RECORDINGS
$query = "SELECT record_id FROM chat_records WHERE
chat_id = '".$this->getRefId()."'";
$res = $this->ilias->db->query($query);
if (DB::isError($res)) die("ilObjChat::delete(): " . $res->getMessage() . "<br>SQL-Statement: ".$q);
if (($num = $res->numRows()) > 0)
{
for ($i = 0; $i < $num; $i++)
{
$data = $res->fetchRow(DB_FETCHMODE_ASSOC);
$this->ilias->db->query("DELETE FROM chat_record_data WHERE record_id = '" . $data["record_id"] . "'");
}
}
$query = "DELETE FROM chat_records WHERE
chat_id = '".$this->getRefId()."'";
$res = $this->ilias->db->query($query);
return true;
}
| ilObjChat::getHTMLDirectory | ( | ) |
Reimplemented from ilObject.
Definition at line 176 of file class.ilObjChat.php.
References $file_obj, and ilObject::getTitle().
{
$tmp_tpl =& new ilTemplate("tpl.chat_export.html",true,true);
$this->chat_room->setRoomId(0);
$tmp_tpl->setVariable("CHAT_NAME",$this->getTitle());
$tmp_tpl->setVariable("CHAT_DATE",strftime("%c",time()));
$tmp_tpl->setVariable("CONTENT",$this->chat_room->getAllMessages());
$file_obj =& new ilFileDataChat($this);
// return directory name of index.html
return $file_obj->addFile('index.html',$tmp_tpl->get());
}
Here is the call graph for this function:| ilObjChat::ilClone | ( | $ | a_parent_ref | ) |
ilClone object into tree basic clone function.
Register new object in object_data, creates reference and insert reference ID in tree. All object specific data must be copied in the ilClone function of the appropriate object class. Look in ilObjForum::ilClone() for example code
public
| integer | $a_parent_ref ref id of parent object |
Reimplemented from ilObject.
Definition at line 102 of file class.ilObjChat.php.
References ilObjectFactory::getInstanceByRefId().
{
$tmp_obj =& ilObjectFactory::getInstanceByRefId(parent::ilClone($a_parent_ref));
}
Here is the call graph for this function:| ilObjChat::ilObjChat | ( | $ | a_id = 0, |
|
| $ | a_call_by_reference = true | |||
| ) |
Constructor public.
| integer | reference_id or object_id | |
| boolean | treat the id as reference_id (true) or object_id (false) |
Definition at line 54 of file class.ilObjChat.php.
References ilObject::getRefId(), and ilObject::ilObject().
{
$this->type = "chat";
$this->ilObject($a_id,$a_call_by_reference);
$this->server_conf =& new ilChatServerConfig();
$this->server_comm =& new ilChatServerCommunicator($this);
$this->chat_user =& new ilChatUser();
$this->chat_room =& new ilChatRoom($this->getRefId());
}
Here is the call graph for this function:| ilObjChat::initDefaultRoles | ( | ) |
init default roles settings public
Reimplemented from ilObject.
Definition at line 81 of file class.ilObjChat.php.
References $permissions, $rbacadmin, ilRbacReview::_getOperationIdsByName(), ilObject::createRoleFolder(), ilObject::getId(), and ilObject::getRefId().
{
global $rbacadmin;
// create a local role folder
$rolf_obj =& $this->createRoleFolder();
// create moderator role and assign role to rolefolder...
$role_obj = $rolf_obj->createRole("il_chat_moderator_".$this->getRefId(),"Moderator of chat obj_no.".$this->getId());
// grant permissions: visible,read,write,chat_moderate
$permissions = ilRbacReview::_getOperationIdsByName(array('visible','read','moderate'));
$rbacadmin->grantPermission($role_obj->getId(),
$permissions,
$this->getRefId());
unset($rolf_obj);
return array($role_obj->getId());
}
Here is the call graph for this function:| ilObjChat::read | ( | ) |
Definition at line 65 of file class.ilObjChat.php.
References ilObject::getRefId().
{
// USED ilObjectFactory::getInstance...
parent::read();
$this->server_conf =& new ilChatServerConfig();
$this->server_comm =& new ilChatServerCommunicator($this);
$this->chat_user =& new ilChatUser();
$this->chat_room =& new ilChatRoom($this->getRefId());
}
Here is the call graph for this function:| ilObjChat::sendMessage | ( | $ | a_id | ) |
Definition at line 153 of file class.ilObjChat.php.
References $_SESSION, $tmp_user, __formatBody(), __formatRecipient(), __formatSubject(), and ilObjectFactory::getInstanceByObjId().
{
include_once "./classes/class.ilMail.php";
$tmp_mail_obj = new ilMail($_SESSION["AccountId"]);
// GET USER OBJECT
$tmp_user = ilObjectFactory::getInstanceByObjId($a_id);
// GET USERS LANGUAGE
$tmp_lang =& new ilLanguage($tmp_user->getLanguage());
$tmp_lang->loadLanguageModule("chat");
$message = $tmp_mail_obj->sendMail($this->__formatRecipient($tmp_user),"","",$this->__formatSubject($tmp_lang),
$this->__formatBody($tmp_user,$tmp_lang),array(),array("normal"));
unset($tmp_mail_obj);
unset($tmp_lang);
unset($tmp_user);
return true;
}
Here is the call graph for this function:| ilObjChat::$chat_room |
Definition at line 45 of file class.ilObjChat.php.
| ilObjChat::$chat_user |
Definition at line 46 of file class.ilObjChat.php.
| ilObjChat::$server_comm |
Definition at line 44 of file class.ilObjChat.php.
| ilObjChat::$server_conf |
Definition at line 43 of file class.ilObjChat.php.
1.7.1