var slide = 1;
var clicked = 0;

function autoSlide(){
	
	if(clicked==0) {
		if(slide == 1){
			$('#slide_geluid').click();
		} else if(slide == 2){
			$('#slide_licht').click();
		} else if(slide == 3){
			$('#slide_beeld').click();	
			slide = 0;
		}
		
		slide++;
		
		setTimeout("autoSlide()", 7000);
	}
	
}

$(document).ready(function(){
	
	
	//autoSlide
	setTimeout("autoSlide()", 7000);
	
	$(".right h1 a").mouseup(function() {
		clicked = 1;
	});
	
	
	//scrol voor de homepagina
	$.localScroll({
		target:'#slider',
		axis:'xy',
		hash:false
	});
	

	// referententie tegels op de homepagina voor het doorlopen van afbeeldingen
	$('#tileref').cycle({
		fx: 'fade'
	});
	
	//tabs voor de sub subs
	$(".container.search .content").hide();
	$(".container.search ul.searchtabs li:first").addClass("active").show();
	$(".container.search .content:first").show(); 

	$(".container.search ul.searchtabs li").click(function() {
		
		$(".container.search ul.searchtabs li").removeClass("active");
		$(this).addClass("active");
		$(".container.search .content").hide();
		var activeTab = $(this).find("a").attr("href");
		$(activeTab).fadeIn('slow');
		return false;
	});
	
	//galery
	$("#gallery #gallery_picker ul li").click(function() {
		var index = $("#gallery #gallery_picker ul li").index(this);	
		$("#gallery #gallery_picker ul li img").removeClass("active");
		$("#gallery #gallery_picker ul li:nth-child("+(index+1)+") img").addClass("active");
		$("#gallery #gallery_holder ul").animate({marginLeft: "-"+index*390 }, { duration: 1000});		
	});
	
	/*FORM VALIDATION*/
	
	var default_message_empty = "Er is geen {value} ingevuld.";
	var default_message_empty_plural = "Er zijn geen {value} ingevuld.";
	var default_message_notvalid = "Er is geen geldig {value} ingevuld.";
	var default_message_user_exists = "De gekozen {value} is al in gebruik.";
	
	//FORM CHECK FUNCTION
	
	$(".check").blur(function(){
		validate_field(this.id);	
	});
	
	
	$(".submit").click(function(){
		
		var form_id = $(this).parents("form").attr("id");
		var form_class = $(this).parents("form").attr("class");
		var return_form = true;
	
		//check for each field in the form with the class check
		$(".check").each(function(){
			//check for each field in the form with the class check			
			validate_field(this.id);
			
			valid = validate_field(this.id);
			
			if(!validate_field(this.id)) {
				return_form = false;
			}
			
		});
		
		//submit the form
		if(return_form) {
			//remove message
			$(".error_form").remove();
			//submit form
			$("#"+form_id).submit();
		} else {
		
		}
		
	});
	
	var form_valid = true;
	
	//VALIDATE FUNCTION
	function validate_field(check_field){

		//REGULAR EXPRESSIONS
		var email_regexp = /^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}$/;
		var phone_regexp = /(^\+[0-9]{2}|^\+[0-9]{2}\(0\)|^\(\+[0-9]{2}\)\(0\)|^00[0-9]{2}|^0)([0-9]{9}$|[0-9\-\s]{10}$)/;
		var zipcode_regexp = /^[1-9]{1}[0-9]{3}\s?[a-zA-Z]{2}$/;
		var url_regexp = /(((ht|f)tp(s?):\/\/)|(www\.[^ \[\]\(\)\n\r\t]+)|(([012]?[0-9]{1,2}\.){3}[012]?[0-9]{1,2})\/)([^ \[\]\(\),;&quot;'&lt;&gt;\n\r\t]+)([^\. \[\]\(\),;&quot;'&lt;&gt;\n\r\t])|(([012]?[0-9]{1,2}\.){3}[012]?[0-9]{1,2})/
		var bank_regexp = /^[0-9]{7,}$/;
		var file_regexp = /^.*\.(jpg|JPG)$/;
		var amount_regexp = /^[0-9]{0,7}\,[0-9]{0,2}$/;
		
		//VALUE OF CURRENT FORM FIELD
		var field_value = $("#"+check_field).val();

		//GET LABEL BEFORE CHECKED INPUT FIELD
		var name = $("label[for='"+check_field+"']").text();
				
		//CORRECT THE DEFAULT MESSAGES WITH LABEL NAME
		var message = default_message_empty.replace("{value}", name.toLowerCase());
		var message_plural = default_message_empty_plural.replace("{value}", name.toLowerCase());
		var message_notvalid = default_message_notvalid.replace("{value}", name.toLowerCase());
		var message_userexists = default_message_user_exists.replace("{value}", name.toLowerCase());
		
		//MAKE MESSAGE SELECTOR FOR CHECKED FIELD
		var message_selector = "#"+check_field+" + .error";
	
		//DEFAULT CHECK > NOT EMPTY
		if(!field_value) {
			//check if message already is set
			if($(message_selector).length == 0) {
				//append the message for this id
				$("#"+check_field).addClass("error");
				if(check_field == "initials"){
					$("#"+check_field).after("<label class=\"error\">"+message_plural+"</label>");						
				} else {
					$("#"+check_field).after("<label class=\"error\">"+message+"</label>");	
				}
			}
			
			form_valid = false;
			
		} else {
			//remove the default message
			$("#"+check_field).removeClass("error");
			$(message_selector).remove();
			
			form_valid = true;
		}
		
		//check if there is a different field to check
		switch(check_field){
			case "email":
				//check email
				if(email_regexp.test(field_value)){
					$("#"+check_field).removeClass("error");
					$(message_selector).remove();
					form_valid = true;
				} else {
					if($(message_selector).length == 0) {
						$("#"+check_field).addClass("error");
						$("#"+check_field).after("<label class=\"error\">"+message_notvalid+"</label>");
					}
					form_valid = false;
				}
				break;
									
		}
		return form_valid;
	}
});

//door sturen naar de pagina zoeken na het invoeren van een zoekwoord
function searchform(){
	window.location = "/zoeken/"+$("#search_input").val();
}

//cufon
Cufon.replace('h1', { fontFamily: 'Gillsans', hover: true });
Cufon.replace('h2', { fontFamily: 'Gillsans', hover: true });
