$(document).ready(function(){
	overlay();
	setHeight();
	initSlideshow();
	showAlbums();
});

function initTwitterCycle(){
	$('#twittter').cycle({
		fx:     'fade',
		pause:	true,
	});
}

function overlay() {
	$('.overlay').fadeTo(0, 0.4);
}

function setHeight(){
	var paddingTop = $('#right').css('padding-top').split('px');
	var paddingBottom = $('#right').css('padding-bottom').split('px');
	var iPadding = parseInt(paddingTop[0]) + parseInt(paddingBottom[0]);
	var hoogte = $('#right').height() + iPadding;	
	$('#left').css('height',hoogte);
}

function initSlideshow() {
	$('#slideshow_foto').cycle({
		fx:     'fade',
		timeout: 3000,
		speed:	 1100
	});
}

function showAlbums(){
	var nWidth = $('#keuze_wrapper').width(); 
	var nWindow = $(window).width();
	var nLeft = Math.round((nWindow - nWidth) / 2);	
	
	$('#keuze_wrapper').css('left',nLeft);
	
	$('#showkeuzes').click(function(){
		$('#layer').show();
		$('#keuze_wrapper').fadeIn('fast');
	});
	$('#layer').click(function(){
		$('#layer').hide();
		$('#keuze_wrapper').fadeOut('fast');
	});
}
function slideshow(){
	$('#slider').cycle({
		fx: 'scrollHorz',
		timeout: 0,
		next: '#next',
		prev: '#prev'
	});	
}

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 += '<span class="date">'+formatTime(oTweet.created_at)+'</span>';*/
				sTweet += '<div class="content">'+formatTweet(oTweet.text)+'</div>';
				sTweet += '</div>';
				
				sHtml += sTweet;
			});
			$('#twittter').html(sHtml);
			initTwitterCycle();	
		}
	});
}
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;
}
