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") { global $wpdb; function clamp($min, $max, $val) { return max($min,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. if(!$hide_pingbacks_and_trackbacks) $ping = ""; else $ping = "AND comment_type<>'pingback' AND comment_type<>'trackback'"; $posts = $wpdb->get_results("SELECT comment_post_ID, post_title FROM ($wpdb->comments LEFT JOIN $wpdb->posts ON (comment_post_ID = ID)) WHERE comment_approved = '1' AND $wpdb->posts.post_status='publish' $ping ORDER BY comment_date DESC;"); $seen = array(); $num = 0; if($fade_old) { $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. if(array_key_exists($post->comment_post_ID, $seen)) continue; $seen[$post->comment_post_ID] = true; if($num++ > $num_posts) break; $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."' $ping ORDER BY comment_date DESC LIMIT $num_comments;"); $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); if($usetimesince) $title = " title=\"Last comment was ".time_since($comment->unixdate)." ago\""; else $title = ""; echo $prefix."".stripslashes($post->post_title). "  ".$count."
    \n"; foreach($commenters as $commenter) { if($usetimesince) $title = " title=\"Posted ".time_since($commenter->unixdate)." ago\""; if($fade_old) { $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 ", "; echo "comment_ID."\"$title>".stripslashes($commenter->comment_author).""; } if($count > $num_comments) echo " [...]"; echo "".$postfix."\n"; } } ?> Runaway Jim | YEMblog

    Runaway Jim RSS

    August 27, 2012

    Phish: 10/03/1998 Official FarmAid Footage Playlist [VQ: A+, AQ: A+, Pro-Shot]

    Birds, Farmhouse, Moma, Runaway Jim, Arc, Down By The River

    June 13, 2012

    Phish: 06/07/2012 Buried Alive > Runaway Jim [VQ: A+, AQ: A+, Pro-Shot]

    YouTube Preview Image

    February 15, 2012

    Phish: 10/03/1998 Runaway Jim [VQ: A+, AQ: A, Pro-Shot]

    YouTube Preview Image

    January 19, 2012

    Phish: 04/04/1991 Runaway Jim [VQ: B+, AQ: B, Pro-Shot]

    December 26, 2011

    Phish: 10/04/1999 Playlist [VQ: A-, AQ: A-]

    Funky Bitch, Vultures, Runaway Jim, Jesus Just Left Chicago, Runaway Jim, Limb By Limb, Wilson, Down With Disease

    December 19, 2011

    Phish: 11/16/1996 Playlist [VQ: A-, AQ: A-]

    embed

    Runaway Jim, The Vibration of Life w/ Kung and Catapult, Guyute, Gumbo, Rift, Free, The Old Home Place, David Bowie, Lawnboy, Sparkle, Frankenstein

    August 22, 2011

    Phish: 08/15-17/2011 The Quinnski UIC Playlist [VQ: A, AQ: B]

    Light, Dirt, Steam, Alumni Blues, Let It Loose, I Didn’t Know, You Enjoy Myself, Chalk Dust Torture, Ha Ha Ha, Walls of the Cave, Runaway Jim, Dinner and a Movie

    August 7, 2011

    We Are Everywhere: Runaway Jim Wins at Saratoga [Phish.net]

    March 3, 2011

    Phish: 12/31/1998 Runaway Jim > New Year’s Eve > Simple [VQ: B+, AQ: A-]

    YouTube Preview Image

    February 22, 2011

    Phish: 02/18/1997 Runaway Jim [VQ: B+, AQ: B+]

    YouTube Preview Image

    February 10, 2011

    Phish: 10/03/1998 Farm Aid Entire Show Playlist [VQ: A+, AQ: A, TV]

    http://www.youtube.com/view_play_list?p=D23EF5953E582932

    Birds of a Feather, Farmhouse, Moma Dance, Runaway Jim, Arc, Down By The River, All Star Finale

    January 10, 2011

    Phish: PlatoPlates MSG Run Video Playlist [VQ: B, AQ: B+]

    http://www.youtube.com/view_play_list?p=8AC40A2F766B1240

    Guelah Papyrus, Runaway Jim, My Soul, Piper > Free, YEM -> Manteca -> YEM, Down With Disease -> Ghost, Wilson -> 46 Days, Gone, Beauty of My Dreams, Burn That Bridge, Moma Dance, PYITE, Meatstick > Auld Lang Syne > After Midnight

    December 17, 2010

    Phish: 10/19/1995 Partial Show Playlist [VQ: Varies (Mainly B+), AQ: B+]

    http://www.youtube.com/view_play_list?p=2B88D410A4D49561

    Cars Trucks Buses, Runaway Jim, Horn, Punch You In The Eye, Esther, Chalk Dust Torture, Theme From The Bottom, Acoustic Army, Split Open and Melt, Billy Breathes, Cavern, Frankenstein, Poor Heart, Mike’s Song -> I Am Hydrogen > Weekapaug > Lawn Boy, BBFCFM, Kung > Suspicious Minds > HYHU, Possum, A Day in the Life,

    July 27, 2010

    Phish: 06/29/1995 Runaway Jim [VQ: B+, AQ: A-]

    YouTube Preview Image

    July 9, 2010

    Phish: 08/06/1997 Runaway Jim [VQ: B+, AQ: B]

    YouTube Preview Image YouTube Preview Image

    April 27, 2010

    Phish: 12/05/1997 Runaway Jim [VQ: B+, AQ: B+]

    YouTube Preview Image YouTube Preview Image

    April 19, 2010

    Phish: 11/29/1997 Runaway Jim [VQ: B-, AQ: B]

    [This is a playlist of the entire 60-minute Version]

    http://www.youtube.com/view_play_list?p=7D3BB62C79ADF1D3

    November 1, 2009

    Phish: 10/31/2009 Runaway Jim [VQ: B, AQ: B]

    YouTube Preview Image

    July 12, 2009

    Phish: 06/20/2009 Runaway Jim [VQ: A, AQ: B+]

    YouTube Preview Image

    June 5, 2009

    Phish: 03/07/2009 Runaway Jim [VQ: A-, AQ: A]

    YouTube Preview Image

    May 4, 2009

    Phish: 12/31/1995 Runaway Jim

    YouTube Preview Image

    September 30, 2008

    Phish: 09/30/1995 Runaway Jim Jam

    YouTube Preview Image