aboutsummaryrefslogtreecommitdiff
path: root/mod/thewire/actions/delete.php
blob: 38355d25e3b91f62e45a62e636e1f437d6e3960f (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
<?php
/**
 * Action for deleting a wire post
 * 
 */

// Get input data
$guid = (int) get_input('guid');

// Make sure we actually have permission to edit
$thewire = get_entity($guid);
if ($thewire->getSubtype() == "thewire" && $thewire->canEdit()) {

	// unset reply metadata on children
	$children = elgg_get_entities_from_relationship(array(
		'relationship' => 'parent',
		'relationship_guid' => $post_guid,
		'inverse_relationship' => true,
	));
	if ($children) {
		foreach ($children as $child) {
			$child->reply = false;
		}
	}

	// Get owning user
	$owner = get_entity($thewire->getOwnerGUID());

	// Delete it
	$rowsaffected = $thewire->delete();
	if ($rowsaffected > 0) {
		// Success message
		system_message(elgg_echo("thewire:deleted"));
	} else {
		register_error(elgg_echo("thewire:notdeleted"));
	}

	forward("thewire/owner/" . $owner->username);
}