123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141 |
- <?php
- function messages_send_override($subject, $body, $body_sent, $recipient_guid, $sender_guid = 0, $original_msg_guid = 0, $notify = true, $add_to_sent = true) {
-
- global $messagesendflag;
- $messagesendflag = 1;
-
- global $messages_pm;
- if ($notify) {
- $messages_pm = 1;
- } else {
- $messages_pm = 0;
- }
-
- if ($sender_guid == 0) {
- $sender_guid = (int) elgg_get_logged_in_user_guid();
- }
-
- $message_to = new ElggObject();
- $message_sent = new ElggObject();
- $message_to->subtype = "messages";
- $message_sent->subtype = "messages";
- $message_to->owner_guid = $recipient_guid;
- $message_to->container_guid = $recipient_guid;
- $message_sent->owner_guid = $sender_guid;
- $message_sent->container_guid = $sender_guid;
- $message_to->access_id = ACCESS_PUBLIC;
- $message_sent->access_id = ACCESS_PUBLIC;
- $message_to->title = $subject;
- $message_to->description = $body;
- $message_sent->title = $subject;
- $message_sent->description = $body_sent;
- $message_to->toId = $recipient_guid;
- $message_to->fromId = $sender_guid;
- $message_to->readYet = 0;
- $message_to->hiddenFrom = 0;
- $message_to->hiddenTo = 0;
- $message_sent->toId = $recipient_guid;
- $message_sent->fromId = $sender_guid;
- $message_sent->readYet = 0;
- $message_sent->hiddenFrom = 0;
- $message_sent->hiddenTo = 0;
- $message_to->msg = 1;
- $message_sent->msg = 1;
-
- $success = $message_to->save();
-
- if ($add_to_sent) {
- $message_sent->save();
- }
- $message_to->access_id = ACCESS_PRIVATE;
- $message_to->save();
- if ($add_to_sent) {
- $message_sent->access_id = ACCESS_PRIVATE;
- $message_sent->save();
- }
-
-
- if ($original_msg_guid && $success) {
- add_entity_relationship($message_sent->guid, "reply", $original_msg_guid);
- }
- $message_contents = strip_tags($body);
- if (($recipient_guid != elgg_get_logged_in_user_guid()) && $notify) {
- $recipient = get_user($recipient_guid);
- $sender = get_user($sender_guid);
-
- $subject = elgg_echo('messages:email:subject');
- $body = elgg_echo('messages:email:body', array(
- $sender->name,
- $message_contents,
- elgg_get_site_url() . "messages/inbox/" . $recipient->username,
- $sender->name,
- elgg_get_site_url() . "messages/compose?send_to=" . $sender_guid
- ));
- notify_user($recipient_guid, $sender_guid, $subject, $body);
- }
- $messagesendflag = 0;
- return $success;
- }
|