aboutsummaryrefslogtreecommitdiff
path: root/mod/messages/actions/send.php
blob: e48703e5af276d3346b93d1fe060cfdba8ecd687 (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
62
63
64
<?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 = 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');	

?>