From 11792cc0394ae34aa8404a2c4335b64fea41a315 Mon Sep 17 00:00:00 2001 From: Cash Costello Date: Sat, 22 Aug 2009 19:39:39 +0000 Subject: moved the voting lists to pages/lists/ --- pages/lists/highestrated.php | 65 ++++++++++++++++++++++++++++++++++++++++ pages/lists/highestvotecount.php | 50 +++++++++++++++++++++++++++++++ pages/lists/recentvotes.php | 52 ++++++++++++++++++++++++++++++++ 3 files changed, 167 insertions(+) create mode 100644 pages/lists/highestrated.php create mode 100644 pages/lists/highestvotecount.php create mode 100644 pages/lists/recentvotes.php (limited to 'pages/lists') diff --git a/pages/lists/highestrated.php b/pages/lists/highestrated.php new file mode 100644 index 000000000..e9f0296e2 --- /dev/null +++ b/pages/lists/highestrated.php @@ -0,0 +1,65 @@ +username); + } + }*/ + +// if (is_null(page_owner_entity()->name) || page_owner_entity()->name == '') { +// $groupname = get_input('username'); +// } else { +// $groupname = page_owner_entity()->name; +// }; +// + //there has to be a better way to do this + if(!$groupname) { + $page = get_input("page"); + list($pagename, $groupname) = split("/", $page); + } + + list($group_holder, $album_id) = split(":", $groupname); +// echo "
page: $page\ngroup: $groupname\nalbum: $album_id"; die;
+	
+	$user = get_user_by_username($friendname);
+	global $CONFIG;
+	$prefix = $CONFIG->dbprefix;
+	$max = 24;
+
+	$sql = "SELECT ent.guid, count(1) as mycount, avg(ms2.string) as average
+			FROM " . $prefix . "entities ent
+			INNER JOIN " . $prefix . "entity_subtypes sub ON ent.subtype = sub.id
+			AND sub.subtype = 'image' AND  ent.container_guid = $album_id
+			INNER JOIN " . $prefix . "annotations ann1 ON ann1.entity_guid = ent.guid
+			INNER JOIN " . $prefix . "metastrings ms ON ms.id = ann1.name_id
+			AND ms.string = 'generic_rate'
+			INNER JOIN " . $prefix . "metastrings ms2 ON ms2.id = ann1.value_id
+			INNER JOIN " . $prefix . "users_entity u ON ann1.owner_guid = u.guid			
+			GROUP BY ent.guid HAVING mycount > 1
+			ORDER BY average DESC
+			LIMIT $max";
+	
+	$result = get_data($sql);
+
+	$entities = array();
+	foreach($result as $entity) {
+		$entities[] = get_entity($entity->guid);
+	}
+	
+	$album = get_entity($album_id);
+	$title = $album["title"] . ": " . elgg_echo("tidypics:highestrated");
+	$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);
+
+?>
\ No newline at end of file
diff --git a/pages/lists/highestvotecount.php b/pages/lists/highestvotecount.php
new file mode 100644
index 000000000..694afb32d
--- /dev/null
+++ b/pages/lists/highestvotecount.php
@@ -0,0 +1,50 @@
+dbprefix;
+	$max = 24;
+	
+	$sql = "SELECT ent.guid, u.name as owner, count( 1 ) AS mycount, avg( ms2.string ) AS average
+			FROM " . $prefix . "entities ent
+			INNER JOIN " . $prefix . "entity_subtypes sub ON ent.subtype = sub.id
+			AND sub.subtype = 'image'
+			INNER JOIN " . $prefix . "annotations ann1 ON ann1.entity_guid = ent.guid
+			INNER JOIN " . $prefix . "metastrings ms ON ms.id = ann1.name_id
+			AND ms.string = 'generic_rate'
+			INNER JOIN " . $prefix . "metastrings ms2 ON ms2.id = ann1.value_id
+			INNER JOIN " . $prefix . "users_entity u ON ent.owner_guid = u.guid
+			GROUP BY ent.guid
+			ORDER BY mycount DESC
+			LIMIT $max";
+	
+	$result = get_data($sql);
+	
+	$title = "Most voted images";
+	$area2 = elgg_view_title($title);
+	
+	$entities = array();
+	foreach($result as $entity) {
+		$entities[] = get_entity($entity->guid);
+		$full_entity = get_entity($entity->guid);
+		$area2 .= "	
+ Owner: $entity->owner
+ Votes: $entity->mycount
+ Average: $entity->average +
+ "; + $area2 .= elgg_view_entity($full_entity); + + } + + $body = elgg_view_layout('two_column_left_sidebar', '', $area2); + page_draw($title, $body); +?> \ No newline at end of file diff --git a/pages/lists/recentvotes.php b/pages/lists/recentvotes.php new file mode 100644 index 000000000..f9ddbdc38 --- /dev/null +++ b/pages/lists/recentvotes.php @@ -0,0 +1,52 @@ +dbprefix; + $max = 24; + + $sql = "SELECT ent.guid, u2.name AS owner, u.name AS voter, ms2.string as vote + FROM " . $prefix . "entities ent + INNER JOIN " . $prefix . "entity_subtypes sub ON ent.subtype = sub.id + AND sub.subtype = 'image' + INNER JOIN " . $prefix . "annotations ann1 ON ann1.entity_guid = ent.guid + INNER JOIN " . $prefix . "metastrings ms ON ms.id = ann1.name_id + AND ms.string = 'generic_rate' + INNER JOIN " . $prefix . "metastrings ms2 ON ms2.id = ann1.value_id + INNER JOIN " . $prefix . "users_entity u ON ann1.owner_guid = u.guid + INNER JOIN " . $prefix . "users_entity u2 ON ent.owner_guid = u2.guid + ORDER BY ann1.time_created DESC + LIMIT $max"; + + $result = get_data($sql); + + $title = "Recently rated images"; + $area2 = elgg_view_title($title); + + $entities = array(); + foreach($result as $entity) { + $entities[] = get_entity($entity->guid); + $full_entity = get_entity($entity->guid); + $area2 .= "
+ Owner: $entity->owner
+ Voter: $entity->voter
+ Rating: $entity->vote +
+ "; + $area2 .= elgg_view_entity($full_entity); + + } + + +// $area2 .= elgg_view_entity_list($entities, $max, 0, $max); + $body = elgg_view_layout('two_column_left_sidebar', '', $area2); + page_draw($title, $body); +?> \ No newline at end of file -- cgit v1.2.3