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\n\t\t\tFROM " . $prefix . "entities ent\n\t\t\tINNER JOIN " . $prefix . "entity_subtypes sub ON ent.subtype = sub.id\n\t\t\tAND sub.subtype = 'image'\n\t\t\tINNER JOIN " . $prefix . "annotations ann1 ON ann1.entity_guid = ent.guid\n\t\t\tINNER JOIN " . $prefix . "metastrings ms ON ms.id = ann1.name_id\n\t\t\tAND ms.string = 'generic_comment'\t\t\t\n\t\t\tORDER BY ann1.time_created DESC\n\t\t\tLIMIT {$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(); $title = elgg_echo("tidypics:recentlycommented"); $area2 = elgg_view_title($title); // grab the html to display the images $images = tp_view_entity_list($entities, $max, 0, $max, false); // this view takes care of the title on the main column and the content wrapper $area2 = elgg_view('tidypics/content_wrapper', array('title' => $title, 'content' => $images)); if (empty($area2)) { $area2 = $images; } $body = elgg_view_layout('two_column_left_sidebar', '', $area2); page_draw($title, $body);
} */ //error_log("custom query is " . (float)(microtime(true) - $start)); // allow other plugins to override the slideshow $slideshow_link = trigger_plugin_hook('tp_slideshow', 'album', array(), null); if ($slideshow_link) { add_submenu_item(elgg_echo('album:slideshow'), $slideshow_link, 'photos'); } if ($owner_guid) { if ($owner_guid == get_loggedin_userid()) { $title = elgg_echo("tidypics:yourmostviewed"); } else { $title = sprintf(elgg_echo("tidypics:friendmostviewed"), page_owner_entity()->name); } } else { // world view - set page owner to logged in user if (isloggedin()) { set_page_owner(get_loggedin_userid()); } $title = elgg_echo("tidypics:mostviewed"); } $area2 = elgg_view_title($title); // grab the html to display the images $content = tp_view_entity_list($photos, $max, 0, $max, false); // this view takes care of the title on the main column and the content wrapper $area2 = elgg_view('tidypics/content_wrapper', array('title' => $title, 'content' => $content)); if (empty($area2)) { $area2 = $content; } $body = elgg_view_layout('two_column_left_sidebar', '', $area2); page_draw($title, $body);