$(function()
{
	// png fix
	$.ifixpng(submap + '/img/pixel.gif'); 
	$('#merken li').ifixpng();
	$('#producten div.sale').ifixpng();
	$('#shop li a, #shop li span').ifixpng();
	$('input.image').ifixpng();
	
	$('#shop *').ifixpng();
	
	// flash in de header
	var so = new SWFObject(submap + "/fla/header.swf", "flash", "564", "149", "6", "#fff"); 
	so.addVariable("datamap", submap + "/fla/header");
	so.addVariable("dataxml", "images.xml?5");
	so.addParam("menu", false);
	so.addParam("wmode", "transparent");
	so.write("flashimg"); 


	/**************************************************
					contactgegevens
	**************************************************/	
	if ( $("#frm_contactgegevens").length )
	{
		$("#frm_contactgegevens").validate(
		{				
			errorClass: "error",			
			errorPlacement: function(error, element) 
			{	
				if ($("#formulier_melding").length < 1)
				{
					$(".links").append("<div id='formulier_melding' style='color: red; margin: 5px 0;'>Gelieve de rood gemarkeerde velden correct in te vullen.</div>");
				}				
				element.addClass("error");
			},	 	
			rules: 
			{
				Voornaam: "required",
				Achternaam: "required",
				Geslacht: "required",
				Telefoonnummer: "required",			
				Emailadres: 
				{
					required: true,
					email: true
				},
				Straatnaam: "required",
				Huisnummer: "required",
				Postcode: "required",
				Plaats: "required",
				
				aflever_Straatnaam: 
				{
					required: function() 
					{	
						return $("#afleveradres_ja").is(":checked");
					}
				},
				aflever_Huisnummer: 
				{
					required: function() 
					{	
						return $("#afleveradres_ja").is(":checked");
					}
				},
				aflever_Postcode: 
				{
					required: function() 
					{	
						return $("#afleveradres_ja").is(":checked");
					}
				},
				aflever_Plaats: 
				{
					required: function() 
					{	
						return $("#afleveradres_ja").is(":checked");
					}
				}
			}
		});
		
		$("#frm_contactgegevens").submit( function()
		{
			var betalingsmethode_geselecteerd = false;
			
			// controleer of er een bank is geselecteerd voor iDEAL
			if ( $("#betalenIdeal").length )
			{				
				// ideal mogelijk
				if ( $("#betalenIdeal").is(":checked") )
				{
					var betalingsmethode_geselecteerd = true;
					
					// controleer of er een bank is geselecteerd	
					if ( $('#issuerID').val() == "0" || $('#issuerID').val() == "")
					{
						$('#melding').html("U heeft geen bank gekozen.");
						$("#melding").show();
						
						return false;
					}
				}
			}
			
			// controleer of zelf_overboeken is geselecteerd
			if ( $("#zelf_overboeken").is(":checked") )
			{
				var betalingsmethode_geselecteerd = true;		
			}
			
			// geen betalingsmethode gekozen
			if (!betalingsmethode_geselecteerd)
			{
				$('#melding').html("Let op: U heeft geen betalingsmethode gekozen.");
				$("#melding").show();
								
				return false;
			}
			else
			{
				$("#melding").hide();
			}
			
			return true;
		});
		
		// afleveradres tonen/verbergen
		var aflever_velden = $("dl#_afleveradres")[ $("#afleveradres_ja").is(":checked") ? "show" : "hide" ]();
		
		// toon als afleveradres op ja staat
		$("#afleveradres_ja").click(function() 
		{
			//setTimeout("", 1000);
			aflever_velden[this.checked ? "show" : "hide"]();
		});
		
		$("#afleveradres_nee").click(function() 
		{
			//setTimeout("", 1000);
			aflever_velden[this.checked ? "hide" : "show"]();
		});	
	}
	
	
	/**************************************************
					update winkelwagen
	**************************************************/	
	$("form#frm_update_winkelwagen").submit( function()
	{
		var error = false;
		
		$("input:text", this).each(function()
		{			
			if ( !$(this).val().match(/^[1-9]{1}([0-9]+)?$/) )
			{
				error = true;
				$(this).addClass("error");				
			}			
			else
			{
				$(this).removeClass("error");
			}
		});
		
		return (error == true) ? false : true;
	});
	
	
	/**************************************************
			product in winkelmand plaatsen
	**************************************************/	
	$("form#bestellen").submit( function()
	{				
		if ( $('#product_aantal').val().search(/^\b[0-9]*\b$/) == -1 || $('#product_aantal').val() < 1 ) 
		{
			alert("U heeft niet alle velden correct ingevoerd:\n\n- Aantal moet een getal zijn");
			return false;
		}
		else
		{
			// controleer aantal en voorraad
			var data_geselecteerd = getSelectedVariant();
			
			if ( parseInt( $("#product_aantal").val() ) > parseInt( data_geselecteerd[2] ) )
			{
				// aantal groter als voorraad
				alert("Let op: Vanwege beperkte voorraad kunt u niet meer dan "+data_geselecteerd[2]+" stuk(s) van dit product bestellen.");
				$("#product_aantal").val(data_geselecteerd[2]);
				return false;
			}
			else
			{
				$("#id_variant, #ww_soort_id_variant").val( data_geselecteerd[1] );
			}
		}
		
		return true;
	});

	function getSelectedVariant()
	{
		var selected_id = $("#select_variant option:selected").attr("id");
		var a_selected = selected_id.split("_");
		
		return a_selected;	
	}
	
	
	/**************************************************
					filters formulier
	**************************************************/
	$("#btn_reset_filters").click( function()
	{	
		$('#filter select').each( function()
		{
			$(this).val(""); // reset waarde
		});
		
		$(this).submit();
	});
	
});
