diff options
Diffstat (limited to 'pages')
| -rw-r--r-- | pages/lists/mostcommentedimages.php | 43 | ||||
| -rw-r--r-- | pages/lists/mostcommentedimagesthismonth.php | 50 | ||||
| -rw-r--r-- | pages/lists/mostcommentedimagestoday.php | 50 | ||||
| -rw-r--r-- | pages/lists/recentlycommented.php | 52 | 
4 files changed, 195 insertions, 0 deletions
diff --git a/pages/lists/mostcommentedimages.php b/pages/lists/mostcommentedimages.php new file mode 100644 index 000000000..b3a36a9ac --- /dev/null +++ b/pages/lists/mostcommentedimages.php @@ -0,0 +1,43 @@ +<?php + +	/** +	 * Tidypics full view of an image +	 * Given a GUID, this page will try and display any entity +	 *  +	 */ + +	// Load Elgg engine +	include_once(dirname(dirname(dirname(__FILE__))) . "/engine/start.php"); + +	global $CONFIG; +	$prefix = $CONFIG->dbprefix; +	$max = 24; +	 +	//this works but is wildly inefficient +	//$annotations = get_annotations(0, "object", "image", "tp_view", "", "", 5000); +	 +	$sql = "SELECT ent.guid, count( * ) AS views +			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_comment' +			GROUP BY ent.guid +			ORDER BY views DESC +			LIMIT $max"; +	 +	$result = get_data($sql); + +	$entities = array(); +	foreach($result as $entity) { +		$entities[] = get_entity($entity->guid); +	} +	 +	tidypics_mostviewed_submenus(); +	$title = elgg_echo("tidypics:mostcommented"); +	$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/mostcommentedimagesthismonth.php b/pages/lists/mostcommentedimagesthismonth.php new file mode 100644 index 000000000..c47cee2da --- /dev/null +++ b/pages/lists/mostcommentedimagesthismonth.php @@ -0,0 +1,50 @@ +<?php + +	/** +	 * Tidypics full view of an image +	 * Given a GUID, this page will try and display any entity +	 *  +	 */ + +	// Load Elgg engine +	include_once(dirname(dirname(dirname(__FILE__))) . "/engine/start.php"); + +	global $CONFIG; +	$prefix = $CONFIG->dbprefix; +	$max = 24; +	 +	 +	//find timestamps for first and last days of this month +	$time_info = new stdClass(); +	$time_info->start = mktime(0,0,0, date("m"), 1, date("Y")); +	$time_info->end = mktime(); +	 +	//this works but is wildly inefficient +	//$annotations = get_annotations(0, "object", "image", "tp_view", "", "", 5000); +	 +	$sql = "SELECT ent.guid, count( * ) AS views +			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_comment' +			WHERE ann1.time_created BETWEEN $time_info->start AND $time_info->end +			GROUP BY ent.guid +			ORDER BY views DESC +			LIMIT $max"; +	 +	$result = get_data($sql); + +	$entities = array(); +	foreach($result as $entity) { +		$entities[] = get_entity($entity->guid); +	} +	 +	tidypics_mostviewed_submenus(); +	$title = elgg_echo("tidypics:mostcommentedthismonth"); +	$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/mostcommentedimagestoday.php b/pages/lists/mostcommentedimagestoday.php new file mode 100644 index 000000000..066feb45e --- /dev/null +++ b/pages/lists/mostcommentedimagestoday.php @@ -0,0 +1,50 @@ +<?php + +	/** +	 * Tidypics full view of an image +	 * Given a GUID, this page will try and display any entity +	 *  +	 */ + +	// Load Elgg engine +	include_once(dirname(dirname(dirname(__FILE__))) . "/engine/start.php"); + +	global $CONFIG; +	$prefix = $CONFIG->dbprefix; +	$max = 24; +	 +	 +	//find timestamps for today +	$time_info = new stdClass(); +	$time_info->start = mktime(0,0,0, date("m"), date("d"), date("Y")); +	$time_info->end = mktime(); +	 +	//this works but is wildly inefficient +	//$annotations = get_annotations(0, "object", "image", "tp_view", "", "", 5000); +	 +	$sql = "SELECT ent.guid, count( * ) AS views +			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_comment' +			WHERE ann1.time_created BETWEEN $time_info->start AND $time_info->end +			GROUP BY ent.guid +			ORDER BY views DESC +			LIMIT $max"; +	 +	$result = get_data($sql); + +	$entities = array(); +	foreach($result as $entity) { +		$entities[] = get_entity($entity->guid); +	} +	 +	tidypics_mostviewed_submenus(); +	$title = elgg_echo("tidypics:mostcommentedtoday"); +	$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/recentlycommented.php b/pages/lists/recentlycommented.php new file mode 100644 index 000000000..bfb64981d --- /dev/null +++ b/pages/lists/recentlycommented.php @@ -0,0 +1,52 @@ +<?php + +	/** +	 * Tidypics full view of an image +	 * Given a GUID, this page will try and display any entity +	 *  +	 */ + +	// Load Elgg engine +	include_once(dirname(dirname(dirname(__FILE__))) . "/engine/start.php"); + +	global $CONFIG; +	$prefix = $CONFIG->dbprefix; +	$max_limit = 200; //get extra because you'll have multiple views per image in the result set +	$max = 16; //controls how many actually show on screen +	 +	//this works but is wildly inefficient +	//$annotations = get_annotations(0, "object", "image", "tp_view", "", "", 5000); +	 +	$sql = "SELECT distinct (ent.guid), ann1.time_created +			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_comment'			 +			ORDER BY ann1.time_created DESC +			LIMIT $max_limit"; +	 +	$result = get_data($sql); + +	$entities = array(); +	foreach($result as $entity) { +		if(!$entities[$entity->guid]) { +			$entities[$entity->guid] = get_entity($entity->guid);	 +		} +		if(count($entities) >= $max) break; +	} +	 +	$user = get_loggedin_user(); +	if( $user->guid == 9 ) { +		echo "<pre>"; +		var_dump( $sql); +//		var_dump( $result ); +		echo "</pre>"; +	} +	$title = elgg_echo("tidypics:recentlycommented"); +	$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  | 
