$(document).ready(function() {
	
// ipv target blank gebruikern rel=external deze functie opent een nieuw venster.
function externalLinks() { 
 if (!document.getElementsByTagName) return; 
 var anchors = document.getElementsByTagName("a"); 
 for (var i=0; i<anchors.length; i++) { 
   var anchor = anchors[i]; 
   if (anchor.getAttribute("href") && 
       anchor.getAttribute("rel") == "external" || anchor.getAttribute("href") && anchor.getAttribute("rel") == "nofollow") 
     anchor.target = "_blank"; 
 } 
} 
externalLinks();


	/* Public vars */
	var carOffset = 0;
	var carrWidth = 2000;
	var carCurrentPos = 0;
	var carCount = 1;
	var carTotal = $(".carouselItem").size();
	var carStep = 0;
	
	/* Detect browser */
	var ieDetected = false;
	jQuery.each(jQuery.browser, function(i) {
	  if($.browser.msie){
	    ieDetected = true;
	  }
	});

	/* Carousel hover, nog niet IE proof */
	if(ieDetected == false) {
		/* Undo CSS */
		$("#subheaderControls a").removeClass("ieHover");
		
		var hoverCarouselLinks = $(".carLeft");
		hoverCarouselLinks.hover(function () {
			hoverCarouselLinks.append("<img class='hideMe carLinkLeft' src='/img/subheaderPrevious_hover.png'>");
			$(".carLinkLeft").fadeOut(0);
			$(".carLinkLeft").fadeIn(300);
		}, 
		function () {
			$(".carLinkLeft").stop().fadeTo(300, 0.0, function() { $(".carLinkLeft").remove() });
		});
		
		var hoverCarouselRechts = $(".carRight");
		hoverCarouselRechts.hover(function () {
			hoverCarouselRechts.append("<img class='hideMe carLinkRight' src='/img/subheaderNext_hover.png'>");
			$(".carLinkRight").fadeOut(0);
			$(".carLinkRight").fadeIn(300);
		}, 
		function () {
			$(".carLinkRight").stop().fadeTo(300, 0.0, function() { $(".carLinkRight").remove() });
		});
	}
	
	function placeBg() {
		jQuery.each($(".carouselItem"), function() {
			var imageId = $(this).attr("id");
			imageId = imageId.substr(imageId.indexOf("_")+1, imageId.length);
			$(this).css("background", "url(/afbeelding/" + imageId + "/2000/carouse.jpg) no-repeat scroll center bottom");
		});
	}
	
	function resizeCar() {
		var scherm = $(window).width();
		if(carTotal == 1) {
			$(".next").css("display", "none");
		}
		
		if(scherm < 1700) { 
			//alert("scale 1: " + carStep + " | " + carCount);
			
			$(".carouselItem").css("width", "2000px");
			
			carOffset = ((2000-scherm)/2)-0;
			carrWidth = 2000;
			carStep = (carrWidth)
			carCurrentPos = "-"+carOffset;
			var newPos = carOffset;
			if(carCount > 1) {
				//alert("groter dan 1 " + carStep + " | walk: ");
				newPos = carStep * (carCount-1);
				//alert("new steps: "+ carStep);
				carCurrentPos = "-"+(newPos+carOffset);
				newPos = (newPos+carOffset);
				
				//alert("newspos: " +newPos);
			}
			$("#carouselHolder").css("left", "-" + newPos + "px");
		} else {
			if(carOffset > 0) {
				//alert("scale 2");
				$("#carouselHolder").css("left", "0px");
				
				carCurrentPos = 0;//carCurrentPos - carOffset;
				carOffset = 0;
				carrWidth = scherm;
				carStep = (carrWidth+carOffset);
				
				var newPos = 0;
				if(carCount > 1) {
					//alert("groter dan 2");
					newPos = carStep * (carCount-1);
					//alert("new steps: "+ carStep);
					carCurrentPos = "-"+newPos
					$("#carouselHolder").css("left", "-" + newPos + "px");
					
				}
				$(".carouselItem").css("width", scherm+"px");
			} else {
				//alert("scale 3");
				$(".carouselItem").css("width", scherm+"px");
				carCurrentPos = carCurrentPos - carOffset;
				carrWidth = scherm;
				carOffset = 0;
				carStep = (carrWidth+carOffset)
			}
		}
	}
	
	/* Carousel commands */
	$(".previous").css("display", "none");
	$(".carRight").click(function() {
		if(carCount != carTotal) {
			//alert("currentStep: "+ carStep);
			//alert("currentPos1: "+ carCurrentPos);
			carCurrentPos = carCurrentPos - carStep;
			//alert("currentPos2: "+ carCurrentPos);
			
			
			$("#carouselHolder").animate({
				left: carCurrentPos+"px"
			}, 1000);
			
			$(".carLinkLeft").remove();
			$(".carLinkRight").remove();
			carCount = carCount + 1;
			
			$(".previous").css("display", "block");
			if(carCount == carTotal) {
				$(".next").css("display", "none");
			}
		}
	});
	$(".carLeft").click(function() {
		if(carCount != 1) {
			//alert("count: " + carCount);
			//alert("pos: " + carCurrentPos + " step: "+carStep);
			carCurrentPos = (carCurrentPos*1) + (carStep*1);

			//alert("pos2: " + carCurrentPos + " step2: "+carStep);
			$("#carouselHolder").animate({
				left: carCurrentPos+"px"
			}, 1000);
			$(".carLinkLeft").remove();
			$(".carLinkRight").remove();
			carCount = carCount - 1;
			$(".next").css("display", "block");
			if(carCount == 1) {
				$(".previous").css("display", "none");
			}
		} 
	});
	
	/* 3 klanten voorpagina */
	var hoverKlanten = $("#carousel ul img");
	hoverKlanten.hover(function () {
		$(this).stop().animate({
			borderTopColor:"#26c3d7",
			borderBottomColor:"#26c3d7",
			borderLeftColor:"#26c3d7",
			borderRightColor:"#26c3d7"
		}, 150, function() {
			$(this).css("border-color", "#26c3d7");
		});
	}, 
	function () {
		$(this).stop().animate({
			borderTopColor:"#bebebe",
			borderBottomColor:"#bebebe",
			borderLeftColor:"#bebebe",
			borderRightColor:"#bebebe"
		}, 150,  function() {
			$(this).css("border-color", "#bebebe");
		});
	});
	
	/* Nieuwsbrief aanmelding */
	$("#submitNb").live("click", function () {
		$("#nbAdres").css("border-color", "#DFDFDF");
		if(checkEmail($("#nbAdres").val()) != false) {
			var nogMaals = "<a id='newNb' style='font-weight: normal; cursor: pointer;'>Ander e-mailadres aanmelden.</a>";
			$.get("/ajax_nieuwsbrief.asp", { adres: $("#nbAdres").val() }, function(data){
				$("#responseTxt").fadeOut(500, function() { 
					$("#responseTxt").empty(); 
					$("#responseTxt").append("<p style='color: #539C45; font-weight: bold;'>" + data + "<br/>" + nogMaals + "</p>");
					$("#responseTxt").fadeIn(500);
					
					$("#newNb").click(function () {
						$("#responseTxt").fadeOut(500, function() { 
							$("#responseTxt").empty();
							$("#responseTxt").append("<p>Altijd op de hoogte met onze nieuwsbrief.</p><input type='text' value='Uw e-mailadres' id='nbAdres' /><input type='submit' value='' id='submitNb' />");
							$("#responseTxt").fadeIn(500);
						});
					});
				});
			});
		} else {
			if($("#responseTxt").html().indexOf("U heeft een verkeerd e-mailadres ingevuld.") < 0)
			{
				$("#nbAdres").css("border-color", "red");
				$("#responseTxt").append("<em style='color: red;'>U heeft een verkeerd e-mailadres ingevuld.</em>");
			}
			else
			{
				$("#nbAdres").css("border-color", "red");
			}
		} // Foutief emailadres
	});
	
	function checkEmail(emlString) {
		var filter = /^([a-zA-Z0-9_.-])+@(([a-zA-Z0-9-])+.)+([a-zA-Z0-9]{2,4})+$/;
		if(!filter.test(emlString)) {
			return false
		}
		
	}
	
	function formcheck() {
		alert("test");
	}
	
	$("#nbAdres").live("click", function () {
		$(this).val("");
		$(this).blur(function () {
			if($(this).val() == "") {
				$(this).val("Uw e-mailadres");
			}
		});	
	});
	
	/* Form validation */
	$("#contactFormulier").validate({
		errorPlacement: function(error, element) {			
			var elNaam = element.attr("id") + "_label";
			$("#"+elNaam+" em").addClass("verplichtError");
   		}
	});
	
	$("#contactFormulier input:not(:submit), #contactFormulier textarea:not(:submit)").blur(function() {
		if($(this).hasClass("valid")) {
			var label = $(this).attr("id") + "_label";
			$("#" + label + " em").html("");
			$("#" + label + " em").addClass("verplichtSucces")
		}
		else {
			var label = $(this).attr("id") + "_label";
			if (label == "email_label") {
				$("#" + label + " em").html("Vul een geldig e-mailadres in a.u.b.");
			}
			else {
				$("#" + label + " em").html("Vergeet uw bericht niet!");
			}
			$("#" + label + " em").removeClass("verplichtSucces")
			$("#" + label + " em").addClass("verplichtError") 
		}
	});
	
	$("#contactFormulier input:not(:submit), #contactFormulier textarea:not(:submit)").focus(function() {
		$("#contactFormulier input:not(:submit), #contactFormulier textarea:not(:submit)").each(function() {
			$(this).css({
				border: "1px solid #d1cfc8",
				backgroundColor: "#ffffff"
			});											     
		});
		
		$(this).css({
			border: "1px solid #b9b6ab",
			backgroundColor: "#ffffe3"
		});
	});
	
	/* CTA */
	//$(".cta").append("<img src='/img/actionButtonArrow.gif'/>");
	$(".cta").wrapInner("<span>");
	
	// Execute
	placeBg();
	resizeCar();
	$(window).resize(resizeCar);	
});