if(typeof renderTwitters!='function')(function(){var browser=(function(){var b=navigator.userAgent.toLowerCase();return{safari:/webkit/.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;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');statusSpan=node('span');statusSpan.className='twitterStatus';timeSpan=node('span');timeSpan.className='twitterTime';var updateelements=obj[i].text.toString().split('Map:');if(updateelements[1]){var mapurl='<a href="'+updateelements[1]+'" target="_blank"><br/><img src="img/map_icon.png" border="0" title="View the Locatin of this Tweet" /></a>';statusSpan.innerHTML=updateelements[0]+mapurl;}else{statusSpan.innerHTML=updateelements[0]+'<br/>';}timeSpan.innerHTML='<span style="font-size:8px;color:#666666;"><i>('+relative_time(obj[i].created_at)+')</i></span>';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);ul.appendChild(li);}if(options.clearContents){while(target.firstChild){target.removeChild(target.firstChild);}}target.appendChild(ul);};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(browser.mozilla||browser.opera){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.safari){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){hour-=12;ampm='PM';}if(min.length==1){min='0'+min;}return hour+':'+min+' '+ampm;}function formatDate(date){var ds=date.toDateString().split(/ /),mon=ds[1],day=ds[2],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<(48*60*60)){r=formatTime(date)+' yesterday';}else{r=formatTime(date)+' '+formatDate(date);}}return r;}function linkify(s){var entities={'"':'&quot;','&':'&amp;','<':'&lt;','>':'&gt;'};return s.replace(/[A-Za-z]+:\/\/[A-Za-z0-9-_]+\.[A-Za-z0-9-_:%&\?\/.=]+/g,function(m){return m.link(m);}).replace(/(^|[^\w])(@[\d\w\-]+)/g,function(d,m1,m2){return m1+'@<a href="http://twitter.com/'+m2.substr(1)+'">'+m2.substr(1)+'</a>';}).replace(/"&<>/,function(m){return entities[m];});}})();