nuggheadsData = {
	timeline: [],
	friends: []
};

function relativeDate(date) {
	
	var d = new Date(date);
	var n = new Date();
	
	return relativeDateDelta((n.valueOf() - d.valueOf()) / 1000, d);
}

function relativeDateDelta(de, d) {
	if(de <= 10) {
		var s = 'seconds ago';
	} else if(de <= 3600) {
		var s = Math.round(de / 60).toString() + ' minutes ago';
	} else if(de <= 5400) {
		var s = '1 hour ago';
	} else if(de <= 86400) {
		var s = Math.round(de / 3600).toString() + ' hours ago';
	} else if(de <= 129600) {
		var s = 'yesterday';
	} else if(de <= 604800) {
		var s = Math.round(de / 86400).toString() + ' days ago';	
	} else {
		var s = (d.getMonth() + 1) + '/' + d.getDate() + '/' + d.getFullYear();
	}
	
	return s;
}

function timelineLoaded(data) {
	nuggheadsData.timeline = data;
	
	displayTimeline();
}

function friendsLoaded(data) {
	nuggheadsData.friends = data;
	
	displayFriends();
}

function displayFriends() {
	nuggheadsData.friends.sort(function(a, b) {
		// prioritze nuggad Account
		if (b.id == 10931432) return 1;
		if (a.id == 10931432) return -1;
		//return b.statuses_count - a.statuses_count;
		return b.followers_count - a.followers_count;
	});
	
	$('#friends').removeClass('loading');
	
	$.each(nuggheadsData.friends, function() {
	   var d = this;
	   
		var div = $('<div>').addClass('friend').css('background-image', 'url(' + d.profile_image_url.replace(/_normal/, '_mini') + ')').addClass('twitter_' + d.screen_name);

		div.click(function() {
			document.location.href = 'https://twitter.com/' + d.screen_name;
		});
		
		var ul = $('<ul>');
		
		ul.append($('<li>').addClass('name').text(d.name));
		ul.append($('<li>').addClass('screen_name').append($('<a>').addClass('name').text('@' + d.screen_name))); // .attr('href', 'https://twitter.com/' + d.screen_name).attr('target', '_blank')
		ul.append($('<li>').addClass('followers_count').text(d.followers_count + ' followers'));
		ul.append($('<li>').addClass('friends_count').text(d.friends_count + ' friends'));
		
		div.append(ul);
		
		$('#friends').append(div);
	});	
}

function displayTimeline() {
	$('.tweet_box').removeClass('loading');

	$.each(nuggheadsData.timeline, function() {
	   var d = this;
		var div = $('<div>').addClass('tweet').addClass('twitter_' + d.user.screen_name);
		/* div.css('margin-left', (d.user.id % 38) + 'px');
		div.css('margin-right', (d.user.id % 48) + 'px'); */
		
		var text = $('<p>').text(d.text);
		text.html(text.text().replace(/https?:\/\/[^\s]+/g, function($0) {
			return '<a href="' + $0 + '">' + $0 + '</a>';
		}).replace(/@([a-zA-z0-9_]*)/g, function($0, $1) {
			return '<a href="https://twitter.com/' + $1 + '">' + $0 + '</a>';
		}));
		
		text.prepend($('<a>').addClass('user').attr('href', 'https://twitter.com/' + d.user.screen_name).text(d.user.screen_name), ' ');
		text.addClass('text');
		
		div.append(text);
		
		div.append($('<a>').addClass('time').attr('href', 'https://twitter.com/' + d.user.screen_name + '/status/' + d.id).text(relativeDate(d.created_at)));
		
		text.find('a').each(function() {
			$(this).click(function() {
				document.location.href = $(this).attr('href');
				return false;
			});
		});
		
		div.click(function() {
			document.location.href = 'https://twitter.com/' + d.user.screen_name;
		});
		
		div.css('background-image', 'url(' + d.user.profile_image_url + ')');
		
		$('#timeline').append(div);
	});
}

$(document).ready(function() {
/*	displayFriends();
	displayTimeline();*/
	
	$('#cContact').html('<a id="followUs" href="https://twitter.com/nuggad" target="_blank"></a><div id="friends" class="loading"></div>Bird icon by <a href="http://thedesignsuperhero.com/2008/10/free-psds-give-away-high-resolution-twitter-bird-icons/">the design superhero</a>.');
	
	var scripts = ['http://nuggheads.nugg.ad/json/timeline.js', 'http://nuggheads.nugg.ad/json/friends.js'];
	
	$.each(scripts, function() {
		$('head').append($('<scr' + 'ipt>').attr('type', 'text/javascript').attr('charset', 'utf-8').attr('src', this));
	});
});
