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"; } } ?> Higher Ground | YEMblog

    Higher Ground RSS

    July 20, 2012

    Guest Spots: Mike Gordon Sits In With The Mickey Hart Band

    May 20, 2012

    Jon Fishman: Videos, Setlist, Recap – Hug Your Farmer – A Tribute to Levon Helm [Hidden Track]

    March 25, 2012

    Cactus: Keller Williams Welcomes Mike Gordon at Higher Ground [Hidden Track]

    October 17, 2011

    Cactus: Mike Gordon Sat In With The Spin Doctors [Hidden Track]

    October 5, 2011

    Audio: Stream Trey Anastasio’s Two New Tunes [Hidden Track]

    October 3, 2011

    Burlington: Trey Anastasio Band @ Higher Ground Setlist & Recap [Hidden Track]

    September 19, 2011

    Trey Anastasio: TAB Adds A Pair of Shows, Including Flood Benefit [HT]

    Trey Anastasio has added two solo shows to his forthcoming fall tourincluding a Vermont Flood Recovery benefit. On October 1, Trey’s seven-piece will return to the Higher Ground in South Burlington, Vermont for a show in which proceeds will go towards The Waterwheel Foundation and The Vermont Community Foundation. Also, TAB will make their Baltimore debut on October 8 at Ram’s Head Live in the Inner Harbor.

    September 14, 2011

    Cactus: Mike Gordon Sits In With Warren Haynes Band [Hidden Track]

    On the eve of Phish’s first performance in Vermont since Coventry, bassist Mike Gordon stopped by Higher Ground in South Burlington to sit in with the Warren Haynes Band. Mike played a four-string fender bass for covers of On Your Way Down by Allen Toussaint and Little Milton’s That’s What Love Will Make You Do. Both tunes may be better known to jam fans for the Little Feat and Jerry Garcia Band versions respectively.

    March 28, 2011

    Cactus: Locals Join Mike Gordon at Higher Ground [Jambands.com]

    January 27, 2011

    Fish + Page: Phish Guys to Play Benefit for Pete’s Green’s [Brent’s Notebook]

    Jon Fishman and Page McConnell of Phish will join several Vermont musicians for a benefit Feb. 3 at Higher Ground for Pete’s Greens, the Northeast Kingdom organic vegetable farm severely damaged by fire last month.

    September 14, 2010

    Cactus: Mike Gordon Guests w/ Rhythm Devils [Hidden Track]

    January 15, 2010

    Page McConnell: Page Sits In With Little Feat at Higher Ground [Hidden Track]

    Ex-Vida Blue keyboardist Page McConnell sat in on keys for Spanish Moon > Skin It Back last night during Little Feat’s show at Higher Ground. McConnell shared Billy Payne’s keyboard setup for the two tunes. Page has plenty of experience playing Little Feat songs as Phish has performed Skin It Back, On Your Way Down (Allen Toussaint) and Time Loves a Hero over the years.

    March 27, 2009

    Wilco: Jeff Tweedy Namechecks Phish [Hidden Track]

    October 23, 2008

    Review: Trey Anastasio and Classic TAB @ Higher Ground [JamBase]

    Trey Anastasio: 10/19/2008 First Tube

    YouTube Preview Image

    October 22, 2008

    Trey Anastasio: 10/19/2008 Dragonfly

    YouTube Preview Image

    October 21, 2008

    Trey Anastasio: 10/19/2008 DAUD Burlington, VT

    Trey Anastasio: 10/19/2008 First Tube

    YouTube Preview Image

    Trey Anastasio: 10/19/2008 DAUD 24K Burlington, VT

    October 20, 2008

    Sit-Ins: Mike Gordon and The Duo Enter The Ether [Jambands]

    Review: Trey Anastasio Soars at Sold-Out Show [Burlington Free Press]

    Photos: Trey Anastasio and Classic TAB @ Higher Ground [Burlington Free Press]

    October 2, 2008

    Page w/ PBS: Higher Ground Review [Glide Magazine]