function parseDate(p_sString){
	var aString = p_sString.split(' ');
	return new Date(Date.parse(aString[1]+' '+aString[2]+', '+aString[5]+' '+aString[3]+' UTC'));
}
function formatTweet(p_sText){
	var sText = p_sText;

	sText = sText.replace(/((ftp|https?):\/\/([-\w\.]+)+(:\d+)?(\/([\w/_\.]*(\?\S+)?)?)?)/gm,'<a href="$1" target="_blank">$1</a>');
	sText = sText.replace(/([^\w])\@([\w\-]+)/gm,'$1@<a href="http://twitter.com/$2" target="_blank">$2</a>');	
	sText = sText.replace(/([^\w])\#([\w\-]+)/gm,'$1<a href="http://twitter.com/search?q=%23$2" target="_blank">#$2</a>');

	return sText;
}
function formatTime(p_sTime){
	
	//tijd berekenen
	var oDateTweet = parseDate(p_sTime);
	var nTimeTweet = oDateTweet.getTime();
	var oDate = new Date();
	var nTime = oDate.getTime();
	var nDiff = parseInt((nTime - nTimeTweet)/1000);
	
	//tijdverschil terugsturen
	if(nDiff <= 30) return 'Een paar seconden geleden';
	if(nDiff <= 60) return 'Een minuut geleden';
	if(nDiff < 3600) return parseInt(nDiff/60) + ' minuten geleden';
	if(nDiff <= 1.5*3600) return 'Een uur geleden';
	if(nDiff < 23.5*3600) return Math.round(nDiff/3600) + ' uren geleden';
	if(nDiff < 1.5*24*3600) return 'Een dag geleden';
	
	//wanneer langer dan een dag, exacte datum terugsturen
	var sDateTweet = oDateTweet.getDate() + '/' + parseInt(oDateTweet.getMonth()+1) + '/' + oDateTweet.getFullYear();
	
	var nMinuteTweet = oDateTweet.getMinutes()
	if (nMinuteTweet < 10){
		nMinuteTweet = '0' + nMinuteTweet;
	}
	var sTimeTweet = oDateTweet.getHours() + ':' + nMinuteTweet;
	return sDateTweet + ' ' + sTimeTweet;
}
function twitter(p_sUsername,p_nCount,p_bAvatar){
	$.ajax({
		url: 'http://api.twitter.com/1/statuses/user_timeline/'+p_sUsername+'.json?include_rts=true&include_entities=true&count='+p_nCount+'&callback=?',
		dataType: 'json',
		success: function(result){
			var sHtml = '';
			$.each(result, function(i,oTweet){
				
				var sTweet = '';
				
				sTweet += '<div class="tweet">';
				if(p_bAvatar){
					sTweet += '<div class="image">';
					sTweet += '<a href="http://www.twitter.com/'+oTweet.user.screen_name+'" target="_blank">';
					sTweet += '<img src="'+oTweet.user.profile_image_url+'" alt="'+oTweet.user.name+'" />';
					sTweet += '</a>';
					sTweet += '</div>';
				}
				sTweet += '<div class="content">'+formatTweet(oTweet.text)+' <span class="date">'+formatTime(oTweet.created_at)+'</span></div>';
				sTweet += '</div>';
				
				sHtml += sTweet;
			});
			$('#twitter').html(sHtml);
		}
	});
}

