// convert twitter post time to twitter talk
function twitter_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 'less than a minute ago';
	} else if(delta < 120) {
		return 'about a minute ago';
	} else if(delta < (60*60)) {
		return (parseInt(delta / 60)).toString() + ' minutes ago';
	} else if(delta < (120*60)) {
		return 'about an hour ago';
	} else if(delta < (24*60*60)) {
		return 'about ' + (parseInt(delta / 3600)).toString() + ' hours ago';
	} else if(delta < (48*60*60)) {
		return '1 day ago';
	} else {
		return (parseInt(delta / 86400)).toString() + ' days ago';
	}
}

$(document).ready(function() {
	var max = 3;
	var loc = "http://www.onleebowden.com";
	var sb = new Array();
	sb["news"] = loc+"/blog/feed/?feed=json&callback=?";
	sb["twit"] = "http://twitter.com/statuses/user_timeline/onleebowden.json?count="+max+"&callback=?";
	sb["face"] = "http://www.connect.facebook.com/connect/connect.php?api_key=a9d92ba216c544f61a752bf756df9a10&channel_url=file%3A%2F%2F%2FC%3A%2FDocuments%2520and%2520Settings%2Frhall%2Fdesktop%2FNew%2520Folder%2Flkasdjf.htm%3Ffbc_channel%3D1&id=230073550143&name=&width=226&connections=0&stream=1&logobar=0&css="+loc+"/wp-content/themes/onlee/socialbox/fanbox.css?2";
	sb["blog"] = loc+"/blog/feed/?feed=json&callback=?";
	
	// load StraightUpSearch feed
	if(!$('ul#news').length){
		var href = '#nw';
		$(href).append('<ul id="news" class="module-list"><\/ul>');
		$.getJSON(sb["news"], function(data){
			$('#nw .loading').attr('style','display:none');
			$.each(data.items, function(i,item){
				if(i<max)	{
					var nw_id = 'sepost-'+i;
					var desc = item.description;
					desc = (desc.length <= 135) ? desc : desc.substring(0,132)+'...';
					$('<li/>').attr('id',nw_id).attr('class','module-list-item').appendTo("#news");
					$('#'+nw_id).append('<span><a href="'+item.link+'" target="_blank">'+item.title+'<\/a><\/span>');
					$('#'+nw_id).append(desc);
				} else {
					return false;
				}
			});
		});
	}
	
	// set social tabs to load other feeds on click
	$('ul#tabs li').each(function() {
		$(this).find('a').click(function(e) {
			e.preventDefault();
			
			$('#tabs li a').removeClass('active');
			$('#socialtabs > div').hide();
			
			var href = $(this).attr('href');
			switch(href){
				case '#nw':
					if(!$('ul#news').length){
						$(href).append('<ul id="news" class="module-list"><\/ul>');
						$.getJSON(sb["news"], function(data){
							$('#nw .loading').attr('style','display:none');
							$.each(data.items, function(i,item){
								if(i<max)	{
									var nw_id = 'sepost-'+i;
									var desc = item.description;
									desc = (desc.length <= 135) ? desc : desc.substring(0,132)+'...';
									$('<li/>').attr('id',nw_id).attr('class','module-list-item').appendTo("#news");
									$('#'+nw_id).append('<span><a href="'+item.link+'" target="_blank">'+item.title+'<\/a><\/span>');
									$('#'+nw_id).append(desc);
								} else {
									return false;
								}
							});
						});
					}
					break;
				case '#bl':
					if(!$('ul#blog').length){
						$(href).append('<ul id="blog" class="module-list"><\/ul>');
						$.getJSON(sb["blog"], function(data){
							$('#bl .loading').attr('style','display:none');
							$.each(data.items, function(i,item){
								if(i<max)	{
									var bl_id = 'sopost-'+i;
									var desc = item.description;
									desc = (desc.length <= 135) ? desc : desc.substring(0,132)+'...';
									$('<li/>').attr('id',bl_id).attr('class','module-list-item').appendTo("#blog");
									$('#'+bl_id).append('<span><a href="'+item.link+'" target="_blank">'+item.title+'<\/a><\/span>');
									$('#'+bl_id).append(desc);
								} else {
									return false;
								}
							});
						});
					}
					break;
				case '#tw':
					if(!$('ul#twitter').length){
						$(href).append('<ul id="twitter" class="module-list"></ul>');
						$.getJSON(sb["twit"], function(data){
							$('#tw .loading').attr('style','display:none');
							$.each(data, function(i,item){
								if(i<max)	{
									var tw_id = 'twpost-'+i;
									var desc = item.text.replace(/((https?|s?ftp|ssh)\:\/\/[^"\s\<\>]*[^.,;'">\:\s\<\>\)\]\!])/g, function(url) {
										return '<a href="'+url+'">'+url+'</a>';
									}).replace(/\B@([_a-z0-9]+)/ig, function(reply) {
										return  reply.charAt(0)+'<a href="http://www.twitter.com/'+reply.substring(1)+'">'+reply.substring(1)+'</a>';
									});
									$('<li/>').attr('id',tw_id).attr('class','module-list-item').appendTo("#twitter");
									$('#'+tw_id).append('<span>'+desc+'<\/span>');
									$('#'+tw_id).append('<a href="http://twitter.com/onleebowden/statuses/'+item.id+'" target="_blank">'+twitter_time(item.created_at)+'<\/a>');
								} else {
									return false;
								}
							});
						});
					}
					break;
				case '#fb':
					if(!$('iframe.FB_SERVER_IFRAME').length){
						$(href).append('<iframe frameborder="0" scrolling="no" class="FB_SERVER_IFRAME" src="'+sb['face']+'" allowtransparency="true" name="fbfanIFrame_0" style="border: medium none; width: 226px; height: 368px;"><\/iframe>');
					}
					break;
			}
			
			$(this).addClass('active');
			$(href).show();
		});	
	});
});