$(document).ready(function(){

	// ::: MENU :::
	
	$("#nav li:has(ul)").hover(function(){
		$(this).addClass('over');
	},
	function(){
		$(this).removeClass('over');		
	});
																		
	// ::: PORTFOLIO :::
	
	if(document.URL.indexOf("portfolio") > -1){
		var totalSlides = $("#cycle").children(".slide").length;
		var currentSlide = Math.floor(Math.random()*totalSlides);
	}

	$(".total").html(totalSlides);
	
	try{
		$('#cycle').cycle({ 
    	fx:'fade',
    	speed:'fast',
			startingSlide:currentSlide,
    	timeout:0, 
    	next:'#cycle_next', 
    	prev:'#cycle_prev',
			after:updateCyclePaging
		});
	} catch(err){ }
	
	try{
		// lightBox:													 
		$("a[rel*=lightbox]").lightBox();
	} catch(err){ }

	// validatie contactformulier
	try{
		var sum = Math.sqrt(6084);
		var dt = new Date();
		$("#submit").click(function(){
			$("#sum").val(sum);
			$("#datum").val(formatDateTime(dt));
		});
		$("#contact_form").validate({
			errorLabelContainer: $("div.error ul"),
			errorElement:"li",
			rules:{
				naam:"required",
				email:{
					required:true,
					email:true
				},
				onderwerp:"required",
				bericht:"required"
			},
			messages:{
				naam:"Vul uw naam in",
				email:{
					required:"Vul uw e-mailadres in",
					email:"Vul een geldig e-mailadres in"
				},
				onderwerp:"Vul een onderwerp voor uw bericht in",
				bericht:"Typ uw bericht"
			}
		});
	} catch(err){ }

	// custom mail address
	try{
		$("span.mail span").each(function(){
			var mailData = $(this).attr('class').split(' ');
			var mailStr = mailData[0]+String.fromCharCode(8*8)+mailData[1];
			//console.log('mailStr = '+mailStr);
			$(this).parent("span.mail").before('<a href="mailto:'+mailStr+'">'+mailStr+'</a>').remove();
		});
	} catch(err) { }
	
	try{
		$("#flickr_badge_wrapper a").attr('target','_blank');
	} catch(err){ }
	
	
	// dropdown
	$("#dropdown").toggle(function(){
		$("#dropdown_series").slideDown("slow");
		$(this).addClass('down');
	}, function(){
		$("#dropdown_series").slideUp("slow");
		$(this).removeClass('down');
	});
	
});

function formatDateTime(input){
	var month = prefix(input.getMonth(),9)+(input.getMonth()+1);
	var day = prefix(input.getDate(), 10)+input.getDate();
	var hours = prefix(input.getHours(), 10)+input.getHours();
	var minutes = prefix(input.getMinutes(),10)+input.getMinutes();
	var seconds = prefix(input.getSeconds(),10)+input.getSeconds();
	var output = input.getFullYear()+'-'+month+'-'+day+' '+hours+':'+minutes+':'+seconds;	
	//var output = input.getFullYear()+'-'+month+'-'+day;
	return output;
}

function prefix(n, maxValue){
	var output = String(n < maxValue ? "0" : "");
	return output;
}

function filterList(str){
	var arr = str.split(",");
	arr.sort();
	for(var i=arr.length-1; i>=0; i--){
		if(i < arr.length-1){
			if(arr[i] == arr[i+1]){
				arr.splice(i,1);
			}
		}
	}
	return arr.join(",");
}

function submitForm(formname){
	$("#"+formname).submit();
}

function updateCyclePaging(){
	var total = $("#cycle").children(".slide").length;
	var index = total - $(this).css('z-index');
	$(".current").html(index+1);
}
