aboutsummaryrefslogtreecommitdiff
path: root/mod/thewire/actions/add.php
blob: 1a59a979fb24b43bebe41677bc8cd5674b74401e (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
<?php

	/**
	 * Elgg thewire: add shout action
	 * 
	 * @package Elggthewire
	 * @license http://www.gnu.org/licenses/old-licenses/gpl-2.0.html GNU Public License version 2
	 * @author Curverider <info@elgg.com>
	 * @copyright Curverider Ltd 2008-2010
	 * @link http://elgg.org/
	 */

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

	// Get input data
		$body = get_input('new_post_textarea');
		$tags = get_input('thewiretags');
		$access_id = (int)get_default_access();
		if ($access_id == ACCESS_PRIVATE)
			$access_id = ACCESS_LOGGED_IN; // Private wire messages are pointless
		$location = get_input('location');
		$method = get_input('method');
		$parent = (int)get_input('parent', 0);
		if(!$parent)   
		    $parent = 0;
	
	// convert the shout body into tags
	    $tagarray = filter_string($body);
		
	// Make sure the title / description aren't blank
		if (empty($body)) {
			register_error(elgg_echo("thewire:blank"));
			forward("mod/thewire/add.php");
			
	// Otherwise, save the thewire post 
		} else {
			
			if (!thewire_save_post($body, $access_id, $parent, $method)) {
				register_error(elgg_echo("thewire:error"));
				if($location == "activity")
					forward("mod/riverdashboard/");
				else
					forward("mod/thewire/add.php");
			}
	        
	// Now let's add tags. We can pass an array directly to the object property! Easy.
			if (is_array($tagarray)) {
				$thewire->tags = $tagarray;
			}
	        
	// Success message
			system_message(elgg_echo("thewire:posted"));
	
	// Forward 
			if($location == "activity")
					forward("mod/riverdashboard/");
			else
					forward("mod/thewire/everyone.php");
				
		}
		
?>