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 " [...]";
Halloween | YEMblog
While some would argue that the musical costume isn’t really a stage antic, I would point to the band’s freedom to change the way people think about live shows and clever ways of toasting their influences as their own “antics”. Halloween proves that stage antics don’t have to be ridiculous or over the top, they just have to be uniquely Phish.
When did Phish first approach you about playing with them on Halloween? How early did you know which album you’d be covering?
They approached us for the gig about a month and a half before the actual concert. They approached Antibalas management about getting us on there. We didn’t know what the record was going to be until maybe about a month before. We were kind of curious what we were going to play, because we knew there was a record [being covered]. So I got an e-mail from the management that they would be getting us the tracks soon and then we would go from there. So, yeah, it was kind of a surprise for us—to be waiting for this information in suspense.
Even so, few classic albums – Exile, Blonde on Blonde, Pet Sounds, any Beatles album – that don’t have at least one song to skip over. Stylistically, Phish’s musical costume was a perfect fit, and maybe that’s the only thing that matters after all. But it wasn’t scary, funny, exotic, esoteric, playful or even popular enough, and unlike Remain in Light, it’s hard to imagine how Waiting For Columbus will push the band’s music forward. It was a rich, maroon-colored crayon of a costume, like dressing up as a Turnbull AC, the much feared, no-frills gang from the movie The Warriors, instead of as a flashier Baseball Fury.
Hey everyone, YEMblog editor/curator ScottyB here, and I want to tell you about the latest project I’m involved with – Type II Cast. Each week a rotating cast of “Phish Experts” dissect the band’s music with a fine tooth comb over the course of a 45-minute podcast. This week, we discussed the last week of Fall Tour 2010 including Halloween, Guyutica, Manchester and what the future holds. Check it out…
Most importantly however, was not the days and months that led up to the AC shows, but rather the previous 30-plus years of Phish listening, learning, ripping off ideas and overall living Little Feat. You see, what many of the younger fans might not realize is that while the name Little Feat might not steal as much thunder or light up as brightly as The Rolling Stones, The Who or The Beatles, they were every bit as important to American music – and Phish – as all of the others.
Frankenstein, BBFCFM, Ghost -> Spooky, Roses Are Free, Funky Bitch, Boogie On, Stash, Character Zero, Join The Band, Fatman In The Bathtub, All That You Dream, Oh Atlanta!, Old Folks Boogie, Time Loves A Hero -> Day or Night, Mercenary Territory, Spanish Moon, Dixie Chicken, Tripe Face Boogie, Rocket In My Pocket, Willin’, Don’t Bogart That Joint, Apolitical Blues, Sailin’ Shoes, Feats Don’t Fail Me Now
This time it was a magic mockingbird and it tells me Phish will cover an album of Led Zeppelin’s Sunday evening. It’ll be interesting to see if my bird is right or if I need a new bird. Personally, that’s what I’m pulling for … a little Zeppelin in Boardwalk Hall. They’ve flown helicopters in Boardwalk Hall, but never had Zeppelin in there.
The characteristically tight-lipped band is keeping mum about their final selection for this year’s big event, but bassist Mike Gordon (pictured) does have some words to say about it. “This has the potential to be the best one yet,” Gordon tells Spinner. “I’m really excited about it, to the point where I’m calling some of my friends and I’m saying, ‘Well, I don’t even have any more room on my guest list, but you’ve got to come somehow, because this is going to be the one.’ It just really feels right to me.”
Many consider The Lamb to be the pinnacle of Genesis’ studio albums, and also one of the cornerstones of progressive rock. It’s a concept album, with lyrics mostly written by Peter Gabriel, telling the story of Rael – a Puerto Rican man living in New York – who is trying to rescue his brother from some from very bizarre circumstances. Phish has never covered their music in one of their own performances, but they did perform two of their songs at the Rock Hall of Fame induction ceremony earlier this year.
Although Anastasio held fast against revealing which album gets the nod for Halloween 2010, he did offer a clue that might get fans chattering.
“This year,” he said, “this one’s for me. The one we picked, I’m going to get more out of this as a musician than I ever have before. Three songs into it, I called everybody and told them, ‘None of the other ones — I wouldn’t think, hopefully — will have nearly the effect on my playing this one’s going to.’ ”
With the fan community sitting on the precipice of Summer Tour – Part Deux, the rumor mill exploded over the weekend with multiple sources all but confirming Phish in Atlantic City, New Jersey for Halloween 2010.