/***
 * Twitter JS v1.13.2
 * http://code.google.com/p/twitterjs/
 * Copyright (c) 2009 Remy Sharp / MIT License
 * $Date: 2009-08-25 09:45:35 +0100 (Tue, 25 Aug 2009) $
 */
if(typeof renderTwitters!='function')(function(){var browser=(function(){var b=navigator.userAgent.toLowerCase();return{webkit:/(webkit|khtml)/.test(b),opera:/opera/.test(b),msie:/msie/.test(b)&&!(/opera/).test(b),mozilla:/mozilla/.test(b)&&!(/(compatible|webkit)/).test(b)}})();var guid=0;var readyList=[];var isReady=false;var monthDict=['Jan','Feb','Mar','Apr','May','Jun','Jul','Aug','Sep','Oct','Nov','Dec'];window.ify=function(){var entities={'"':'&quot;','&':'&amp;','<':'&lt;','>':'&gt;'};return{"link":function(t){return t.replace(/[a-z]+:\/\/[a-z0-9-_]+\.[a-z0-9-_:~%&\?\/.=]+[^:\.,\)\s*$]/ig,function(m){return'<a href="'+m+'">'+((m.length>25)?m.substr(0,24)+'...':m)+'</a>'})},"at":function(t){return t.replace(/(^|[^\w]+)\@([a-zA-Z0-9_]{1,15})/g,function(m,m1,m2){return m1+'@<a href="http://twitter.com/'+m2+'">'+m2+'</a>'})},"hash":function(t){return t.replace(/(^|[^\w'"]+)\#([a-zA-Z0-9_]+)/g,function(m,m1,m2){return m1+'#<a href="http://search.twitter.com/search?q=%23'+m2+'">'+m2+'</a>'})},"clean":function(tweet){return this.hash(this.at(this.link(tweet)))}}}();window.renderTwitters=function(obj,options){function node(e){return document.createElement(e)}function text(t){return document.createTextNode(t)}var target=document.getElementById(options.twitterTarget);var data=null;var ul=node('ul'),li,statusSpan,timeSpan,i,max=obj.length>options.count?options.count:obj.length;for(i=0;i<max&&obj[i];i++){data=getTwitterData(obj[i]);if(options.ignoreReplies&&obj[i].text.substr(0,1)=='@'){max++;continue}li=node('li');if(options.template){li.innerHTML=options.template.replace(/%([a-z_\-\.]*)%/ig,function(m,l){var r=data[l]+""||"";if(l=='text'&&options.enableLinks)r=ify.clean(r);return r})}else{statusSpan=node('span');statusSpan.className='twitterStatus';timeSpan=node('span');timeSpan.className='twitterTime';statusSpan.innerHTML=obj[i].text;if(options.enableLinks==true){statusSpan.innerHTML=ify.clean(statusSpan.innerHTML)}timeSpan.innerHTML=relative_time(obj[i].created_at);if(options.prefix){var s=node('span');s.className='twitterPrefix';s.innerHTML=options.prefix.replace(/%(.*?)%/g,function(m,l){return obj[i].user[l]});li.appendChild(s);li.appendChild(text(' '))}li.appendChild(statusSpan);li.appendChild(text(' '));li.appendChild(timeSpan)}if(options.newwindow){li.innerHTML=li.innerHTML.replace(/<a href/gi,'<a target="_blank" href')}ul.appendChild(li)}if(options.clearContents){while(target.firstChild){target.removeChild(target.firstChild)}}target.appendChild(ul);if(typeof options.callback=='function'){options.callback()}};window.getTwitters=function(target,id,count,options){guid++;if(typeof id=='object'){options=id;id=options.id;count=options.count}if(!count)count=1;if(options){options.count=count}else{options={}}if(!options.timeout&&typeof options.onTimeout=='function'){options.timeout=10}if(typeof options.clearContents=='undefined'){options.clearContents=true}if(options.withFriends)options.withFriends=false;options['twitterTarget']=target;if(typeof options.enableLinks=='undefined')options.enableLinks=true;window['twitterCallback'+guid]=function(obj){if(options.timeout){clearTimeout(window['twitterTimeout'+guid])}renderTwitters(obj,options)};ready((function(options,guid){return function(){if(!document.getElementById(options.twitterTarget)){return}var url='http://www.twitter.com/statuses/'+(options.withFriends?'friends_timeline':'user_timeline')+'/'+id+'.json?callback=twitterCallback'+guid+'&count=20&cb='+Math.random();if(options.timeout){window['twitterTimeout'+guid]=setTimeout(function(){if(options.onTimeoutCancel)window['twitterCallback'+guid]=function(){};options.onTimeout.call(document.getElementById(options.twitterTarget))},options.timeout*1000)}var script=document.createElement('script');script.setAttribute('src',url);document.getElementsByTagName('head')[0].appendChild(script)}})(options,guid))};DOMReady();function getTwitterData(orig){var data=orig,i;for(i in orig.user){data['user_'+i]=orig.user[i]}data.time=relative_time(orig.created_at);return data}function ready(callback){if(!isReady){readyList.push(callback)}else{callback.call()}}function fireReady(){isReady=true;var fn;while(fn=readyList.shift()){fn.call()}}function DOMReady(){if(document.addEventListener&&!browser.webkit){document.addEventListener("DOMContentLoaded",fireReady,false)}else if(browser.msie){document.write("<scr"+"ipt id=__ie_init defer=true src=//:><\/script>");var script=document.getElementById("__ie_init");if(script){script.onreadystatechange=function(){if(this.readyState!="complete")return;this.parentNode.removeChild(this);fireReady.call()}}script=null}else if(browser.webkit){var safariTimer=setInterval(function(){if(document.readyState=="loaded"||document.readyState=="complete"){clearInterval(safariTimer);safariTimer=null;fireReady.call()}},10)}}function relative_time(time_value){var values=time_value.split(" "),parsed_date=Date.parse(values[1]+" "+values[2]+", "+values[5]+" "+values[3]),date=new Date(parsed_date),relative_to=(arguments.length>1)?arguments[1]:new Date(),delta=parseInt((relative_to.getTime()-parsed_date)/1000),r='';function formatTime(date){var hour=date.getHours(),min=date.getMinutes()+"",ampm='AM';if(hour==0){hour=12}else if(hour==12){ampm='PM'}else if(hour>12){hour-=12;ampm='PM'}if(min.length==1){min='0'+min}return hour+':'+min+' '+ampm}function formatDate(date){var ds=date.toDateString().split(/ /),mon=monthDict[date.getMonth()],day=date.getDate()+'',dayi=parseInt(day),year=date.getFullYear(),thisyear=(new Date()).getFullYear(),th='th';if((dayi%10)==1&&day.substr(0,1)!='1'){th='st'}else if((dayi%10)==2&&day.substr(0,1)!='1'){th='nd'}else if((dayi%10)==3&&day.substr(0,1)!='1'){th='rd'}if(day.substr(0,1)=='0'){day=day.substr(1)}return mon+' '+day+th+(thisyear!=year?', '+year:'')}delta=delta+(relative_to.getTimezoneOffset()*60);if(delta<5){r='less than 5 seconds ago'}else if(delta<30){r='half a minute ago'}else if(delta<60){r='less than a minute ago'}else if(delta<120){r='1 minute ago'}else if(delta<(45*60)){r=(parseInt(delta/60)).toString()+' minutes ago'}else if(delta<(2*90*60)){r='about 1 hour ago'}else if(delta<(24*60*60)){r='about '+(parseInt(delta/3600)).toString()+' hours ago'}else if(delta<(2*24*60*60)){r='yesterday'}else if(delta<(7*24*60*60)){r=(parseInt(delta/86400)).toString()+' days ago'}else if(delta<(2*7*24*60*60)){r='a week ago'}else if(delta<(8*7*24*60*60)){r=(parseInt(delta/604800)).toString()+' weeks ago'}else{r='ages ago'}return r}})();