aboutsummaryrefslogtreecommitdiff
path: root/pages/entities/index.php
blob: bbd110689d3716acd81335699f7c0f3d17e62c00 (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
<?php
/**
 * Generic entity viewer
 * Given a GUID, this page will try and display any entity
 *
 * @package Elgg
 * @subpackage Core
 */


// Get the GUID of the entity we want to view
$guid = (int) get_input('guid');
$shell = get_input('shell');
if ($shell == "no") {
	$shell = false;
} else {
	$shell = true;
}

$context = get_input('context');
if ($context) {
	set_context($context);
}

// Get the entity, if possible
if ($entity = get_entity($guid)) {
	if ($entity->container_guid) {
		set_page_owner($entity->container_guid);
	} else {
		set_page_owner($entity->owner_guid);
	}

	// Set the body to be the full view of the entity, and the title to be its title
	if ($entity instanceof ElggObject) {
		$title = $entity->title;
	} else if ($entity instanceof ElggEntity) {
		$title = $entity->name;
	}
	$area1 = elgg_view_entity($entity, true);
	if ($shell) {
		$body = elgg_view_layout('one_column_with_sidebar', $area1);
	} else {
		$body = $area1;
	}
} else {
	$body = elgg_echo('notfound');
}

// Display the page
if ($shell) {
	page_draw($title, $body);
} else {
	header("Content-type: text/html; charset=UTF-8");
	echo $title;
	echo $body;
}