function twitterCallback2(obj) {
	var twitters = obj;
	var statusHTML = "";
	var username = "";
	for (var i=0; i<twitters.length; i++){
		username = twitters[i].user.screen_name;
		statusHTML += ('<li><img class="avatar" src="'+twitters[i].user.profile_image_url+'" alt=""/><div class="tweettext">'+twitters[i].text.linkify().linkuser().linktag()+'<span class="tweetmeta small"><img class="png twiticon" src="im/twit'+media_src(twitters[i].source)+'.png" alt=""/><em><a class="" href="http://twitter.com/'+username+'/statuses/'+twitters[i].id+'">'+relative_time(twitters[i].created_at)+'</a> via '+twitters[i].source+'</em></span></div></li>');

	
	}
	document.getElementById('tweetlist').innerHTML = statusHTML;
}

function twitterCallback3(obj) {
	var twitters = obj;
	var statusHTML = "";
	var username = "";
	for (var i=0; i<twitters.length; i++){
		username = twitters[i].user.screen_name;
		statusHTML += ('<li><img class="avatar" src="'+twitters[i].user.profile_image_url+'" alt=""/><div class="tweettext"><a class="serif" href="http://www.twitter.com/'+username+'" target="_blank"><em>'+username+'</em></a> '+twitters[i].text.linkify().linkuser().linktag()+'<span class="tweetmeta small"><img class="png twiticon" src="im/twit'+media_src(twitters[i].source)+'.png" alt=""/><em><a class="" href="http://twitter.com/'+username+'/statuses/'+twitters[i].id+'">'+relative_time(twitters[i].created_at)+'</a> via '+twitters[i].source+'</em></span></div></li>');

	
	}
	document.getElementById('tweetlist').innerHTML = statusHTML;
}

function relative_time(time_value) {
  var values = time_value.split(" ");
  time_value = values[1] + " " + values[2] + ", " + values[5] + " " + values[3];
  var parsed_date = Date.parse(time_value);
  var relative_to = (arguments.length > 1) ? arguments[1] : new Date();
  var delta = parseInt((relative_to.getTime() - parsed_date) / 1000);
  delta = delta + (relative_to.getTimezoneOffset() * 60);

  if (delta < 60) {
    return 'just now';
  } else if(delta < 120) {
    return 'a minute ago';
  } else if(delta < (60*60)) {
    return (parseInt(delta / 60)).toString() + ' minutes ago';
  } else if(delta < (120*60)) {
    return 'an hour ago';
  } else if(delta < (24*60*60)) {
    return '' + (parseInt(delta / 3600)).toString() + ' hours ago';
  } else if(delta < (48*60*60)) {
    return '1 day ago';
  } else {
    return (parseInt(delta / 86400)).toString() + ' days ago';
  }
}


function media_src(src){
	var srctext = src.replace(/(<([^>]+)>)/ig,"");
	if(srctext == "UberTwitter" || srctext == "Twitterrific" || srctext == "TweetDeck" || srctext == "TwitPic" || srctext == "TwitVid" || srctext == "Twitter for iPhone" || srctext == "Twitter for BlackBerry&reg;"){ return 'phone'; }
	else if(srctext == "web"){ return ''; }
	else { return ''; }
}

String.prototype.linkify=function(){
	return this.replace(/[A-Za-z]+:\/\/[A-Za-z0-9-_]+\.[A-Za-z0-9-_:%&\?\/.=]+/g,
	function(m){
	return m.replace(m,'<a class="serif" href="'+m+'" target="_blank"><em>'+m+'</em></a>');});
}

String.prototype.linkuser=function(){
	return this.replace(/[@]+[A-Za-z0-9-_]+/g,
	function(m){
	return m.replace(m,'<a class="serif" href="http://www.twitter.com/'+m+'" target="_blank"><em>'+m+'</em></a>');});
}

String.prototype.linktag=function(){
	return this.replace(/[#]+[A-Za-z0-9-_]+/g,
	function(m){
	var tag=m.replace("#","%23")
	return tag.replace(tag,'<a class="serif" href="http://search.twitter.com/search?q='+tag+'" target="_blank"><em>'+m+'</em></a>');});
}