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"; } } ?> Tour Recaps | YEMblog

    Tour Recaps RSS

    September 29, 2011

    Tour Recap: Super Ball IX -> Essex In Review [Phish.net]

    IT did not last long enough! Phish played quite well at SBIX and on the second leg of their Summer tour, and it was tough to see the tour end in Colorado. But Vermont’s misfortune from Hurricane Irene inspired Phish to play a benefit show in Essex on September 14, a webcasted show that raised over $1.2 million for flood relief efforts, and also gave fans, particularly those in Vermont, a special performance. It was Phish’s first Vermont show since Coventry, and one of only a handful of benefit shows that Phish has ever performed. It was also an appropriate way to conclude the Summer’s impressive musical achievements: generously, warmly, and with a familial vibe near the green mountains where Phish began.

    August 31, 2011

    Tour Recaps: A Bucket Full of Thoughts – 2nd Leg [Live Music Blog]

    They certainly like to take the bull by the horns when opening a run or tour these days.  No longer can one confidently say “Just skip the opener.”  Inside the confines of the UIC Pavilion, Phish delivered arguably the best show of the summer so far.  The band weaved a second set compiled of one-word songs, with unique jam after unique jam, hitting on themes of Earth, Wind, Water and Hendrix’s Fire.  All this UIC show was missing was a cameo by Captain Planet.

    August 22, 2011

    Tour Recaps: Leg Two at a Glance [Phish Thoughts]

    August 15, 2011

    Tour Recaps: UIC and Where We Are [Phish Thoughts]

    June 28, 2011

    Tour Recaps: Summer Tour 2011 Leg One Thoughts [Whatever You Do…]

    This first leg was certainly an interesting one.  As with most tours, we experienced highs and lows, but the overall impression I got was that the band is dialed in.  While the naysayers will still complain about the “lack of jams” and exploration, I could not disagree more.  The jams are there; they’re just more structured.  In fact, if you remove some of the new tunes, it’s almost like listening to early 90’s Phish — well executed composed segments with controlled jamming.  I was only able to catch the three Jersey shows, but I believe the band is having more fun than they’ve had in years and it’s certainly reflected in their playing.

    June 27, 2011

    Tour Recaps: Summer Tour So Far – Highlights and Not-So-Highlights [Phish.net]

    In sum? The tour has been pretty good so far. “Phish 3.0” continues. I respectfully disagree with those who think Phish’s music has changed in any meaningful way this year. (Please re-listen to the mid-to-late October 2010 shows, and the NYE run, especially the 1/1/11 MSG show, for perspective.) Trey may be using the Digitech whammy less often, and the sound and light shows may be better, but I don’t hear anything dramatically different, show to show, than what we’ve heard from Phish in the last year. There have not been many debuts, nor have the newer songs (from the album Joy, or otherwise) been played much if at all. But what this tour has arguably lacked in novelty, it has made up for with improvisations like the Bethel2 “GoldenGinTeca,” and the Pine Knob (Clarkston) “Down with Disease,” as well as entertaining setlist calls — many of them thanks to fans bearing signs — including “Daniel Saw the Stone,” “Instant Karma,” “Buried Alive,” “Lonesome Cowboy Bill,” “Icculus,” and “Bike.” The “Bathtub Gins” and “Rebas” from this tour also have been consistently marvelous, and all are worth a listen.

    June 23, 2011

    Tour Recaps: In Not-So-Heavy-Rotation – The One-Offs [Online Phish Tour]

    Vultures – 6/11 Merriweather Post – This song has never gotten its due.  Overshadowed by the rest of the tunes that would make up The Story of the Ghost, there have been moments where I felt this song was geared to make a big comeback… but it’s just never cracked the rotation.  I’m not sure why that it is.  This song has everything a Phish song should, strange rhythms, bizarre lyrics, and some peaks that will make you pump your fist.  Here’s hoping Vultures gets better setlist treatment in the future.  Unfortunately, if it hasn’t happened yet… it’s probably not happening.

    Tour Recaps: The Dawn of a New Era [Phish Thoughts]

    June 22, 2011

    Tour Recaps: Leg 1 – I Loved It, How About You? [Online Phish Tour]

    June 21, 2011

    Tour Recaps: In Heavy Rotation [Online Phish Tour]

    Backwards Down the Number Line – 7 appearances in 18 shows (38%)

    Check Out: 5/28 – Bethel Woods, Bethel, NY – Summer tour kicked off with a bang in Bethel, and this 3.0 staple got its biggest workout of the whole summer.  As the tour wore on, BDTNL was used more for the tune’s sing-a-long qualities than its ability to break mold, which is what makes Bethel’s version so refreshing.  Sandwiched between Free and the Makisupa that gave us the “house” meme, this version stretches its legs and proves to be an exercise in improvisation and risk taking, instead of an emergency landing spot for a jam gone awry.  Complete with a Dave’s Energy Guide tease, this version, the first of the summer, becomes the go to version for 2011.

    Also appeared at: 6/1 – Holmdel, 6/5 – Cincinnati, 6/8 – Darien Lake, 6/12 – Merriweather Post, 6/17 – Charlotte, 6/19 – Portsmouth

    June 10, 2011

    Tour Recap: The Feeling I Forgot – “It” Is Back [Online Phish Tour]

    I have gone through the past two years enjoying Phish shows; I was happy they were back and made the best of what I could get.  Now, I am trying to pick my jaw back off the ground; I am hopelessly in love again.

    June 6, 2011

    Tour Recaps: Phish Summer Tour Gains ‘Steam’ @ Blossom [Live Music Blog]

    December 13, 2010

    Tour Recaps: Phish October Tour In Review [Jambands]

    November 10, 2010

    Tour Recaps: Finally Back On The Train [AdamHandman]

    August 31, 2010

    Tour Recaps: Great Songs, Less Jamming, But Does It Matter [Jambands]

    While the $60 ticket prices this Fall may be a far cry from the $8.50 that a Phish ticket cost at a club in Boston more than 20 years ago, their shows are still more than worth it, and one can’t help but be excited about seeing them again soon. The quality of Phish’s music has always been paramount to the overall experience, of course. Just listen for yourself. And as predictable as part of the setlist may be, so long as they continue to put on a great show, we will be there, and it’ll be up to us to enjoy ourselves. FLUFFHEAD!!!!

    August 30, 2010

    Tour Recaps: A Wonderous Glow [Phish Thoughts]