aboutsummaryrefslogtreecommitdiff
path: root/friendmostviewed.php
blob: 300c3ccb51c6667ca857b6765f2e8ea8fdbff051 (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
<?php
	/**
	 * Tidypics Friends Albums Listing
	 * 
	 */

	include_once(dirname(dirname(dirname(__FILE__))) . "/engine/start.php");

	//if no friends were requested, see world pictures instead, or redirect to user's friends
/*	if (is_null(get_input('username')) || get_input('username')=='') {
		if (!isloggedin()) {
			forward('pg/photos/world');
		} else {
			forward('pg/photos/friends/' . $_SESSION['user']->username);
		}
	}*/

	if (is_null(page_owner_entity()->name) || page_owner_entity()->name == '') {
		$friendname = get_input('username');
	} else {
		$friendname = page_owner_entity()->name;
	};
	
	//there has to be a better way to do this
	if(!$friendname) {
		$page = get_input("page");
		list($pagename, $friendname) = split("/", $page);
	}
	$user = get_user_by_username($friendname);
	
	$prefix = "my_elgg"; //how do you get the global default?
	$max = 24;
	//grab the top views (metadata 'tp_views') for $max number of entities 
	//ignores entity subtypes
	$sql = "SELECT md.entity_guid, md.owner_guid, md.enabled, ms.string AS views from " . $prefix . "entities ent
			INNER JOIN " . $prefix . "metadata md ON md.entity_guid = ent.guid 
			INNER JOIN " . $prefix . "metastrings ms ON md.value_id = ms.id
			INNER JOIN " . $prefix . "metastrings ms2 ON md.name_id = ms2.id AND ms2.string = 'tp_views'
			WHERE ent.owner_guid = " . $user->guid . "
			ORDER BY views DESC LIMIT $max";
	
	$result = get_data($sql);

	$entities = array();
	foreach($result as $entity) {
		$entities[] = get_entity($entity->entity_guid);
	}
	
	$title = sprintf(elgg_echo("tidypics:friendmostviewed"), $friendname);
	$area2 = elgg_view_title($title);
	$area2 .= elgg_view_entity_list($entities, $max, 0, $max);
	$body = elgg_view_layout('two_column_left_sidebar', '', $area2);
	page_draw($title, $body);

?>