aboutsummaryrefslogtreecommitdiff
path: root/mod/messages/actions/send.php
blob: 314b01809ff8b12fdbe352c6cff5846d430abf32 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
<?php
/**
* Elgg send a message action page
* 
* @package ElggMessages
* @license http://www.gnu.org/licenses/old-licenses/gpl-2.0.html GNU Public License version 2
* @author Curverider Ltd <info@elgg.com>
* @copyright Curverider Ltd 2008-2010
* @link http://elgg.com/
*/

// Make sure we're logged in (send us to the front page if not)
if (!isloggedin()) forward();

// Get input data
$title = strip_tags(get_input('title')); // message title
$message_contents = get_input('message'); // the message
$send_to = get_input('send_to'); // this is the user guid to whom the message is going to be sent
$reply = get_input('reply',0); // this is the guid of the message replying to

// Cache to the session to make form sticky
$_SESSION['msg_to'] = $send_to;
$_SESSION['msg_title'] = $title;
$_SESSION['msg_contents'] = $message_contents;

if (empty($send_to)) {
	register_error(elgg_echo("messages:user:blank"));
	forward("mod/messages/send.php");
}

$user = get_user($send_to);
if (!$user) {
	register_error(elgg_echo("messages:user:nonexist"));
	forward("mod/messages/send.php");
}

// Make sure the message field, send to field and title are not blank
if (empty($message_contents) || empty($title)) {
	register_error(elgg_echo("messages:blank"));
	forward("mod/messages/send.php");
}

// Otherwise, 'send' the message 
$result = messages_send($title,$message_contents,$send_to,0,$reply);
	
// Save 'send' the message
if (!$result) {
	register_error(elgg_echo("messages:error"));
	forward("mod/messages/send.php");
}

// successful so uncache form values
unset($_SESSION['msg_to']);
unset($_SESSION['msg_title']);
unset($_SESSION['msg_contents']);
	
// Success message
system_message(elgg_echo("messages:posted"));

// Forward to the users inbox
forward('mod/messages/sent.php');