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"; } } ?> @YEMblog Twitter Updates for 2010-10-27 | YEMblog
    • Phish Manchester Setlist and Recap http://bit.ly/9osHop #phish #
    • Thanks to one of my best friends in the world, and the first person I told about YEMblog, @DaveOatHT for tweeting tonight #
    • End show #
    • Trey says thanks. #
    • Encore: Show of Life #
    • So…is the encore going to go past midnight? #
    • Have fun notating that section. Looking at you sgordo. #
    • Hard to explain that one. But they are playing Llama again. #
    • Llama now. Woah ummm #
    • Weekapaug progression. Weekapaug outro. Wild #
    • Can't You Hear Me Knockin jam #
    • Sort of Catapultesque #
    • Ghost lyrics being sung #
    • Think they may have been attempting a slicker segue but it didn't pan out… #
    • Manchester Set2: Possum, Light, Mike's > Simple, Makisupa > Night Nurse > Makisupa, Wedge, Ghost -> Mango > Weekapaug http://bit.ly/9osHop #
    • Trey starts funky Weekapaug lick. #
    • Trey and Mike talk during Page's solo… #
    • A good start. Strugglesville at the chorus #
    • Great fucking segue #
    • > mango #
    • Manchester Set2: Possum, Light, Mike's > Simple, Makisupa > Night Nurse > Makisupa, Wedge, Ghost http://bit.ly/9osHop #phish #
    • , Ghost #
    • Wedge has been a trainwreck for years. Great tune though. #
    • Wedge with no intro. #
    • Damn. "Isaacs". Keyboard kept changing it. A great tribute. Wedge #
    • Manchester Set2: Possum, Light, Mike's > Simple, Makisupa > Night Nurse > Makisupa http://bit.ly/9osHop #phish #
    • Back into Makisupa. #
    • Great tempo. This is awesome. #
    • Manchester Set2: Possum, Light, Mike's > Simple, Makisupa, Night Nurse http://bit.ly/9osHop #phish #
    • Isaac. #
    • Night Nurse by Gregory Isaac RIP #
    • Trey saying things like smoket another nug. Thank goodness joking about weed is OK again… #
    • Makisupa! #
    • Manchester Set2: Possum, Light, Mike's > Simple, http://bit.ly/9osHop #phish #
    • Simple #
    • Someone make a bar graph of the tempo of Mike's over the years… #
    • Light jam fades out. Trey starts Mike's. #
    • Light jam takes a turn for the badass. #
    • Manchester Set2: Possum, Light http://bit.ly/9osHop #phish #
    • Possum ripped. Crowd is amped. #
    • Light. #
    • Possum #
    • Dude with the Access Me sign proudly displaying his success. #phishgetsapassonflubs #
    • @shapsio spotted walking the floor. He looked psyched! #
    • Wild song selection for the first show in this state since the mid 90's. Lots of 04 tunes. Deep old cuts. Great covers. Love the effort. #
    • Bust outs galore for Phish's long awaited return to New Hampshire. Setlist and recap of first set – http://bit.ly/9osHop #phish #
    • 1st Set: After Midnight, Sloth, Alumni>LTJP>Alumni, Mellow Mood, Access Me, Llama, All ofThese Dreams, Curtainw/, Mule, ASIHTOS, Ice, Walls #
    • End set #
    • Average Song Gap For Tonight's First Set = 46.31 http://j.mp/aBNJuA [via Phish.net] #phish #
    • Walls of the Cave #
    • AMidnight, Sloth, Alumni>LTJP>Alumni, Mellow Mood, Access Me, Llama, AoTDreams, Curtainw/, SoaMule, ASIHTOS, It's Ice http://bit.ly/9osHop #
    • It's Ice. #
    • #welikeitwhenck5makesfaceswiththelights #
    • Song I Heard The Ocean Sing with rough intro #
    • Always enjoy the onstage choreography in the old Phish tunes. Dance for the money you old dudes! #
    • After Midnight, The Sloth, Alumni>LTJP>Alumni, Mellow Mood, Access Me, Llama, AoTDreams, Curtainw/, SoaMule http://bit.ly/9osHop #phish #
    • Scent. Still getting crazy with the setlist… #
    • With. Does everyone else think of Coventry when this section starts? #
    • 10/26 set I: After Midnight, The Sloth, Alumni>LTJP>Alumni, Mellow Mood, Access Me, Llama, All of These Dreams http://bit.ly/9osHop #
    • Well performed ballad. Next up Curtain. #
    • Another big discussion…all of these dreams #
    • Llama with Trey starting it after discussion. Why is Fish scared of a little drum intro? #
    • Long discussion before Access Me and they don't seem to know it. We like the effort though. #
    • Access Me. #
    • Trey stumbles on first b section. Definitely an audible. #
    • Manchester I: After Midnight, The Sloth, Alumni Blues > LTJP >Alumni, Mellow Mood http://bit.ly/9osHop #
    • Mellow Mood. #
    • Yes to Letter section #
    • manchester I: after midnight, the sloth, alumni blues http://bit.ly/9osHop #
    • Alumni. Holy Shit. #
    • Sloth #
    • manchester I: after midnight http://bit.ly/9osHop #
    • Phish loving the 45 minute after ticket time starts #
    • After Midnight #
    • lights #phish #
    • Hoping for a Granite State of Mind cover. Look it up on YouTube. #
    • This will be my first time YEMblogging without a real keyboard. But I think I've got it under control #
    • Opener calls? #phpredictions #
    • Today on YEMblog: Great Amherst Vids, ZZYZX on 3.0, Coventry's Amherst2 Recap, Glide Mag's Amherst1 review & more http://yemblog.com #phish #
    • MKDevo's A Quality Playlist From 10/23 is Nearly Complete… http://bit.ly/d2K1gA #phish #
    • Miami Heat President of Business Ops Picks Phish As His Favorite Concert at the AA Arena http://www.sportsbusinessdaily.com/article/143118 #
    • Just in case anyone thinks @eddievedder is the Pearl Jam front man's personal account, it is not. It's the feed for a PJ fan club #
    • Check 1 2. DaveO here checking in making sure this ol Twitter thing is working. #
    • For those at home, assemble songs from past Halloween album sets (& Dark Side) into a one set setlist [via @neddyo & @ericwyman] #phish #
    • Can I play? @ericwyman @neddyo Breathe > Prudence, Head Held High, Tumbling Dice, R&R > Me&My Monkey, 5:15, Time, Born U Punches, Sweet VA #
    • @MikePhlood That must've been recorded before Augusta and Utica ;) #
    • We're getting close to the start of the Atlantic City run. Let's get some final #phpredictions about what album you think #phish will cover #
    • Tonight's Poster http://on.fb.me/dkRTBv By Ken Taylor, Weston Observatory, Limited Edition Run of 550. #phish #
    • I'm still waiting outside of Casa De Godard waiting for some answers http://tumblr.com/xi3n9akjz [viva la @phishnet!] #
    • Some more details about Trey's Princeton show – Tickets = $50, Don Hart to prepare string arrangements for Scorchio Quartet #phish #trey #
    • Programming Note: @DaveOatHT will be tonight's Guest Tweeter #

    Post a Comment

    You must be logged in to post a comment.