Plugin Name: Brian's Latest Comments
Plugin URI: http://meidell.dk/archives/category/wordpress/latest-comments/
Description: This shows an overview of the recently active articles and the last people to comment on them. Original idea and code fixes contributed by Michael Heilemann. If you have Dunstan's Time Since installed, this plugin uses it for the title="" attributes on the comments and posts. (For WordPress 1.5)
Author: Brian Meidell
Author URI: http://meidell.dk/
Version 1.5: Now works without LOCK TABLE and CREATE TEMPORARY TABLE priviledges.
Version 1.5.1: Can't remember what I did here
Version 1.5.2: Fixed count select statement to not include spammy comments
Version 1.5.3: Properly excludes track- and pingbacks
Version 1.5.4: Excludes posts that are not published, even if they have comments
Version 1.5.5: Fade old comments, fixed bug that wreaked havoc with Time Since
Version 1.5.6: Bugfix from Jonas Rabbe (http://www.jonas.rabbe.com/) pertaining to timesince
Version 1.5.7: Bugfix so old colors can be darker than new colors (stupid oversight), thanks to http://spiri.dk for spotting it.
Bugfix where single digit hex would cause invalid colors, thanks to http://www.wereldkeuken.be/ for the fix.
Version 1.5.8: Updated to work with WordPress 2.1 alpha by M. Heilemann.
function blc_latest_comments($num_posts = 5, $num_comments = 6, $hide_pingbacks_and_trackbacks = true, $prefix = "
", $postfix = "
", $fade_old = true, $range_in_days = 10, $new_col = "#444444", $old_col = "#cccccc")
function clamp($min, $max, $val)
$usetimesince = function_exists('time_since'); // Work nicely with Dunstan's Time Since plugin (adapted by Michael Heilemann)
// This is compensating for the lack of subqueries in mysql 3.x
// The approach used in previous versions needed the user to
// have database lock and create tmp table priviledges.
// This uses more queries and manual DISTINCT code, but it works with just select privs.
$ping = "";
$ping = "AND comment_type<>'pingback' AND comment_type<>'trackback'";
$posts = $wpdb->get_results("SELECT
FROM ($wpdb->comments LEFT JOIN $wpdb->posts ON (comment_post_ID = ID))
WHERE comment_approved = '1'
ORDER BY comment_date DESC;");
$seen = array();
$num = 0;
$max_time = $range_in_days * 24 * 60 * 60 ;
$r_new = hexdec(substr($new_col, 1, 2));
$r_old = hexdec(substr($old_col, 1, 2));
//$r_min = min($min, $max);
//$r_max = max($min, $max);
$r_range = ($r_old-$r_new);
$g_new = hexdec(substr($new_col, 3, 2));
$g_old = hexdec(substr($old_col, 3, 2));
//$g_min = min($min, $max);
//$g_max = max($min, $max);
$g_range = ($g_old-$g_new);
$b_new = hexdec(substr($new_col, 5, 2));
$b_old = hexdec(substr($old_col, 5, 2));
//$b_min = min($min, $max);
//$b_max = max($min, $max);
$b_range = ($b_old-$b_new);
// print "ranges: $r_range, $g_range, $b_range ";
// print "r: ".(0.5*$r_range+$r_new)." ";
foreach($posts as $post)
// The following 5 lines is a manual DISTINCT and LIMIT,
// since mysql 3.x doesn't allow you to control which way a DISTINCT
// select merges multiple entries.
$seen[$post->comment_post_ID] = true;
if($num++ > $num_posts)
$commenters = $wpdb->get_results("SELECT *, UNIX_TIMESTAMP(comment_date) AS unixdate FROM $wpdb->comments
WHERE comment_approved = '1'
AND comment_post_ID = '".$post->comment_post_ID."'
ORDER BY comment_date DESC
$count = $wpdb->get_var("SELECT COUNT(comment_ID) AS c FROM $wpdb->comments WHERE comment_post_ID = $post->comment_post_ID AND comment_approved = '1' ".$ping);
$i = 0;
$link = get_permalink($post->comment_post_ID);
$title = " title=\"Last comment was ".time_since($comment->unixdate)." ago\"";
$title = "";
echo $prefix."".stripslashes($post->post_title). "".$count." \n";
foreach($commenters as $commenter)
$title = " title=\"Posted ".time_since($commenter->unixdate)." ago\"";
$diff = time() - $commenter->unixdate;
$r = round($diff/$max_time*($r_range))+$r_new;
$r = clamp(min($r_new, $r_old), max($r_new, $r_old), $r);
$g = round($diff/$max_time*($g_range))+$g_new;
$g = clamp(min($g_new, $g_old), max($g_new, $g_old), $g);
$b = round($diff/$max_time*($b_range))+$b_new;
$b = clamp(min($b_new, $b_old), max($b_new, $b_old), $b);
$r_hex = str_pad(dechex($r), 2, '0', STR_PAD_LEFT);
$g_hex = str_pad(dechex($g), 2, '0', STR_PAD_LEFT);
$b_hex = str_pad(dechex($r), 2, '0', STR_PAD_LEFT);
$colstr = " style=\"color: #".$r_hex.$g_hex.$b_hex.";\"";
if($i++ > 0)
echo ", ";
if($count > $num_comments)
echo " [...]";
YEMblog » Festival 8
Visit YEMblog.com for a daily look at Phish-related information from around the web. Offering news, audio torrents, videos, auctions, photos and much more.Thu, 17 Oct 2013 22:34:49 +0000en-UShourly1http://wordpress.org/?v=4.1.19Phish: 11/01/2009 Secret Smile [VQ: A, AQ: A+, Multi-CAM]
http://yemblog.com/phish-11012009-secret-smile-vq-a-aq-a-multi-cam/#commentsThu, 29 Sep 2011 17:22:32 +0000http://yemblog.com/?p=19843Phish: 11/01/2009 Secret Smile [VQ: A, AQ: A+, Multi-CAM]
On the other hand, many people have complained about song selection, camera work, editing, and the such. Really?? I have one question to these purveyors of negativity who complain that a Phish 3D movie wasn’t worthy of cinematic greatness – “Can you still have fun?”
]]>http://yemblog.com/phish-3d-10312009-suzy-greenberg-vq-a-aq-a/feed/1Influence’d: How Phish Fest 8 Rocked Coachella’s World [LA Times]
http://yemblog.com/influenced-how-phish-fest-8-rocked-coachellas-world-la-times/#commentsThu, 15 Apr 2010 02:17:21 +0000http://yemblog.com/?p=10303Influence’d: How Phish Fest 8 Rocked Coachella’s World [LA Times]
To hear it from Coachella’s co-founder and mastermind, Paul Tollett, Phish’s hippie-dippy jam band idealism directly resulted in a sea change in Coachella’s approach to certain fundamentals.
]]>http://yemblog.com/influenced-how-phish-fest-8-rocked-coachellas-world-la-times/feed/0Influence’d: Phish Leaves Its Mark on Coachella [SanDiegoUnionTribune]
http://yemblog.com/influenced-phish-leaves-its-mark-on-coachella-sandiegouniontribune/#commentsMon, 12 Apr 2010 02:56:25 +0000http://yemblog.com/?p=10272Influence’d: Phish Leaves Its Mark on Coachella [SanDiegoUnionTribune]
But it is Phish, the mightiest active jam band of all, who inspired some intriguing changes at Coachella after the band performed multiple sets at the Empire Polo Club over three consecutive days and nights last Halloween weekend.
]]>http://yemblog.com/influenced-phish-leaves-its-mark-on-coachella-sandiegouniontribune/feed/0Movies: Phish 3D Movie – April 30th Nationwide [Hidden Track]
http://yemblog.com/movies-phish-3d-movie-april-30th-nationwide-hidden-track/#commentsThu, 25 Mar 2010 14:01:29 +0000http://yemblog.com/movies-phish-3d-movie-april-30th-nationwide-hidden-track/Movies: Phish 3D Movie – April 30th Nationwide [Hidden Track]
As we first reported in October, Phish’s Festival 8 was filmed in 3D for a theatrical release and we finally have the details on just when we can catch Phish 3D. The film will run in theaters nationwide for one week starting on Friday, April 30. The movie will run just over two hours in total.
]]>http://yemblog.com/movies-phish-3d-movie-april-30th-nationwide-hidden-track/feed/0Phish: 10/31/2009 Complete Exile On Main Street Set Playlist [VQ: A-, AQ: A-]
http://yemblog.com/phish-10312009-complete-exile-on-main-street-set-playlist-vq-a-aq-a/#commentsMon, 08 Mar 2010 19:46:40 +0000http://yemblog.com/?p=9892Phish: 10/31/2009 Complete Exile On Main Street Set Playlist [VQ: A-, AQ: A-]
]]>http://yemblog.com/phish-11012009-entire-acoustic-set-playlist-vq-a-aq-a/feed/0Borealis: Pharos Rocks…The Phish Festival [Pharos]
http://yemblog.com/borealis-pharos-rocksthe-phish-festival-pharos/#commentsTue, 02 Mar 2010 15:00:17 +0000http://yemblog.com/?p=9804Borealis: Pharos Rocks…The Phish Festival [Pharos]
]]>http://yemblog.com/borealis-pharos-rocksthe-phish-festival-pharos/feed/0Movies: Phish Festival in 3D: Coming Soon [Jamtopia]
http://yemblog.com/movies-phish-festival-in-3d-coming-soon-jamtopia/#commentsWed, 10 Feb 2010 14:56:40 +0000http://yemblog.com/?p=9434Movies: Phish Festival in 3D: Coming Soon [Jamtopia]
Earlier today a page appeared on Ticketmaster that seems to finally confirm some great news: a theatrical release of a new Phish concert film.
Assuming the word on the street is correct, this will be none other than Phish Festival 8 in 3D, which has been rumored since the run-up to Festival 8 and now has a rumored release date of some time in May of this year.
]]>http://yemblog.com/movies-phish-festival-in-3d-coming-soon-jamtopia/feed/0Phish: Halloween Phish in The Desert [Festival 8 Montage]
http://yemblog.com/phish-halloween-phish-in-the-desert-festival-8-montage/#commentsMon, 08 Feb 2010 15:30:06 +0000http://yemblog.com/?p=9391Phish: Halloween Phish in The Desert [Festival 8 Montage]
]]>http://yemblog.com/phish-lot-brilliant-comrades-funny/feed/0Phish: 10/31/2009 Ventilator Blues [VQ: A+, AQ: A, 4-cam]
http://yemblog.com/phish-10312009-ventilator-blues-vq-a-aq-a-4-cam/#commentsSun, 20 Dec 2009 20:10:40 +0000http://yemblog.com/phish-10312009-ventilator-blues-vq-a-aq-a-4-cam/Phish: 10/31/2009 Ventilator Blues [VQ: A+, AQ: A, 4-cam]
]]>http://yemblog.com/phish-10312009-ventilator-blues-vq-a-aq-a-4-cam/feed/0Phish: 10/31/2009 I Just Want to See His Face [VQ: A+, AQ: A, 4-cam]
http://yemblog.com/phish-10312009-i-just-want-to-see-his-face-vq-a-aq-a-4-cam/#commentsSun, 20 Dec 2009 20:06:49 +0000http://yemblog.com/?p=8865Phish: 10/31/2009 I Just Want to See His Face [VQ: A+, AQ: A, 4-cam]
]]>http://yemblog.com/phish-10312009-i-just-want-to-see-his-face-vq-a-aq-a-4-cam/feed/0Phish: 10/31/2009 Torn and Frayed [VQ: A, AQ: A, 4-cam]
http://yemblog.com/phish-10312009-torn-and-frayed-vq-a-aq-a-4-cam/#commentsThu, 17 Dec 2009 14:34:23 +0000http://yemblog.com/?p=8828Phish: 10/31/2009 Torn and Frayed [VQ: A, AQ: A, 4-cam]