        $(document).ready(function(){
            //$("#wpcf7-f15-p2449-o1 form").formToWizard({ submitButton: 'Bevestigen en naar iDeal' })
            //$("#wpcf7-f16-p2586-o1 form").formToWizard({ submitButton: 'Bevestigen en naar iDeal' })
            //$("#wpcf7-f16-p2594-o1 form").formToWizard({ submitButton: 'Bevestigen en naar iDeal' })
            $("form").has("#WizardMe").formToWizard({ submitButton: 'Bevestigen en naar iDeal' })
			
			$("#geen-javascript").hide();
			$("#x_ideal_placeholder").text(" ");
			
			
			//harde reset voor type aanvraag
			$('#type-aanvraag').val('0'); // selects "---"
			
			
			//global achtige vars
			var typeaanvraag;
			var buitengebied = false;
			var totaalbedrag = 0;
			var kenmerk = "Geen kenmerk";
			
			//checkbox value fixes
			/*
			$("span.xvalidateme input[type='checkbox']").each(function(i) {
				
				var actualvalue = $(this).next("span:first").html();
				//$(this).val(actualvalue);
				var name = $(this).attr("name");
				$("input[name='" + name + "']:eq(" + i + ")").val(actualvalue);
				
				//console.log("Fixed value for " + $(this).val() + " with " + actualvalue);
				
			});*/
		
			
			//start
			
					//type oppas
	$(".Incidentele_oppas, .Vaste_oppas, .Invaloppas").hide();
	$("#type-aanvraag").change(function() {
	//console.log("type aanvraag click");
	$(".Incidentele_oppas, .Vaste_oppas, .Invaloppas").hide();
	var divje = $(this).val()+"";

	divje = divje.replace(" ", "_"); // strip
	//console.log(divje);
	
	if(typeaanvraag != divje){ //no legacy, reset.
		$(".Incidentele_oppas input[type=text], .Vaste_oppas input[type=text], .Invaloppas input[type=text]").each(function() {
			$(this).val("");
		});
		$(".Incidentele_oppas input[type=checkbox], .Vaste_oppas input[type=checkbox], .Invaloppas input[type=checkbox]").each(function() {
			$(this).removeAttr('checked');
		});
		$(".Incidentele_oppas select, .Vaste_oppas select, .Invaloppas select").each(function() {
			$(this).find("option[index='0']").attr("selected","selected");
		});		
	}
	
	typeaanvraag = divje; // global!
	herberekenen();
	
	$("." + divje).show();

	}	
	);
	
	//voor binnen/buiten gebied gebaseerd op postcode
	

	
	$("input[name=postcode]").change(function() {

	
	herberekenen(); //binnen of buiten gebied is van invloed op totaalbedrag

	
	
		}
	);
	
	$("#vastetijden input").change(function() {
	herberekenen();
	});
	
	$('[class*=" dagweek"]').change(function() {
	herberekenen();
	});
	
	$('#wanneernodig .delButton').click(function() { 
	herberekenen();
	});
	
	//kosten berekenen
	/*
								binnen gebied 	buiten gebied		code
Invaloppas per dag* 				€ 10,00 	€ 15,00 			type = inval, count aantal dagen
Incidentele oppas** 				€ 15,00 	€ 20,00				type = incidenteel, CHECK TARIEVEN OP SITE, APART FORMULIER ?!
Eén vaste oppasdag/week*** 			€ 45,00 	€ 65,00				type = vast, 1 dag ingevuld
Per extra vaste oppasdag/week**** 	€ 25,00		€ 35,00				type = vast, elke extra ingevulde dag
	*/
	
	//vaste oppas
	var tarief_eenvasteoppasdagperweek = 45;
	var tarief_extravasteoppasdagperweek = 25;
	var add_eenvasteoppasdagperweek_buitengebied = 20;
	var add_extravasteoppasdagperweek_buitengebied = 10;
	//incidentele oppas
	var tarief_incidenteleoppas = 15;
	var add_incidenteleoppas = 5;
	//inval
	var tarief_invaloppasperdag = 10;
	var add_invaloppasperdag = 5;
	
	function herberekenen() {
	
	//postcodes

	
	
	
		var postcode = $("input[name=postcode]").val()+"";
	var postcodestripped = postcode.substring(0,4);
	//console.log(postcodestripped);
	
	var postcodes = [ 
"1011",
"1012",
"1013",
"1014",
"1015",
"1016",
"1017",
"1018",
"1019",
"1021",
"1022",
"1023",
"1024",
"1025",
"1031",
"1032",
"1033",
"1034",
"1035",
"1043",
"1051",
"1052",
"1053",
"1054",
"1055",
"1056",
"1057",
"1058",
"1059",
"1060",
"1061",
"1062",
"1063",
"1064",
"1065",
"1066",
"1068",
"1069",
"1071",
"1072",
"1073",
"1074",
"1075",
"1076",
"1077",
"1078",
"1079",
"1081",
"1082",
"1083",
"1087",
"1091",
"1092",
"1093",
"1094",
"1095",
"1096",
"1097",
"1098",
"1113",
"1181",
"1182",
"3511",
"3512",
"3513",
"3514",
"3515",
"3521",
"3522",
"3523",
"3524",
"3525",
"3526",
"3527",
"3531",
"3532",
"3533",
"3534",
"3535",
"3536",
"3541",
"3542",
"3551",
"3552",
"3554",
"3555",
"3561",
"3562",
"3563",
"3564",
"3565",
"3571",
"3572",
"3573",
"3581",
"3582",
"3583",
"3584",
"3585",
"3611" ];
	var binnenbuitengebied = $.inArray(postcodestripped, postcodes)
	
	if(binnenbuitengebied == -1){
	//console.log("Buiten gebied!");
	buitengebied = true;
	}
	else{
	//console.log("Binnen gebied!");
	buitengebied = false;
	}
	
	
	
	
	
			//voor ideal
	$('input[name=idealpostcode]').val(postcode);
	
	
	
	
		totaalbedrag = 0; //reset
		var totaalaantaldagen = 0;
		
		if(typeaanvraag == "Invaloppas"){
			//console.log("herberekening voor "+typeaanvraag);
			var aantalinvaldagen = 0;
			var invaldag1 = $('.dagweek select:first option:selected[value!="---"]').length;
			var invaldag2 = $('.dagweek2 select:first option:selected[value!="---"]').length;
			var invaldag3 = $('.dagweek3 select:first option:selected[value!="---"]').length;
			aantalinvaldagen = invaldag1 + invaldag2 + invaldag3;
			//console.log("aantal invaldagen "+aantalinvaldagen+" x "+tarief_invaloppasperdag);
			totaalbedrag += (aantalinvaldagen * tarief_invaloppasperdag);
				if(buitengebied){
					//console.log("Buiten gebied dus + "+aantalinvaldagen+" x "+add_invaloppasperdag+" euro");
					totaalbedrag += (aantalinvaldagen * add_invaloppasperdag);
				}		
			totaalaantaldagen = aantalinvaldagen;
		}
		else if(typeaanvraag == "Incidentele_oppas"){
			//console.log("herberekening voor "+typeaanvraag);
			//console.log("Incidentele oppas "+tarief_incidenteleoppas+" euro");
			totaalbedrag += tarief_incidenteleoppas;
				if(buitengebied){
					//console.log("Buiten gebied dus +"+add_incidenteleoppas+" euro");
					totaalbedrag += add_incidenteleoppas;
				}
		}
		else if(typeaanvraag == "Vaste_oppas"){
			//console.log("herberekening voor "+typeaanvraag);			
			//TRICKY! Hij checkt alle input velden, dus maandagochtend en maandagmiddag samen telt als twee dagen, maar dat is misschien ook wel gewoon zoveel werk
			var aantaldagen = $('#vastetijden input[value!=""]').length;
			//console.log("aantal dagen "+aantaldagen);
			if(aantaldagen <= 1){
				//console.log("1 of minder dagen dus "+tarief_eenvasteoppasdagperweek+" euro");
				totaalbedrag += tarief_eenvasteoppasdagperweek;
					if(buitengebied){
						//console.log("Buiten gebied dus +"+add_eenvasteoppasdagperweek_buitengebied+" euro");
						totaalbedrag += add_eenvasteoppasdagperweek_buitengebied;
					}
			}
			if(aantaldagen > 1){
				//console.log("Tarief voor eerste vaste dag "+tarief_eenvasteoppasdagperweek+" euro");
				totaalbedrag += tarief_eenvasteoppasdagperweek;
					if(buitengebied){
						//console.log("Buiten gebied dus +"+add_eenvasteoppasdagperweek_buitengebied+" euro");
						totaalbedrag += add_eenvasteoppasdagperweek_buitengebied;
					}
				var aantalextradagen = (aantaldagen - 1);
				//console.log("extra dagen: "+aantalextradagen+" x "+tarief_extravasteoppasdagperweek+" euro");
				totaalbedrag += (aantalextradagen * tarief_extravasteoppasdagperweek);
					if(buitengebied){
						//console.log("Buiten gebied dus + "+aantalextradagen+" x "+add_extravasteoppasdagperweek_buitengebied+" euro");
						totaalbedrag += (aantalextradagen * add_extravasteoppasdagperweek_buitengebied);
					}
			}
			totaalaantaldagen = aantaldagen;

		}
		//console.log("Totaalbedrag: "+totaalbedrag);

		//herschrijven!
		if(typeaanvraag){
		var typeaanvraagclean = typeaanvraag.replace("_", " "); // bring back spaces
		$('#x_overzicht li.overzicht-type-aanvraag').remove();
		$('#x_overzicht li.overzicht-aantaldagen').remove();
		$('#x_overzicht li.overzicht-gebied').remove();
		$('#x_overzicht').append('<li class="overzicht-type-aanvraag">'+typeaanvraagclean+'</li>');
		if(totaalaantaldagen == 1){
		$('#x_overzicht').append('<li class="overzicht-aantaldagen">1 dag</li>');
		}
		else if(totaalaantaldagen > 1){
		$('#x_overzicht').append('<li class="overzicht-aantaldagen">'+totaalaantaldagen+' dagen</li>');
		}
		if(buitengebied){
			$('#x_overzicht').append('<li class="overzicht-gebied">Buiten gebied</li>');
			}
		//Update overzicht
		$('span.totaalbedrag').html(totaalbedrag);
		//voor ideal
		$('input[name=totaalbedrag]').val(totaalbedrag);
		}

	}
		//voor ideal
		$("input[name=achternaam_ouder_1]").change(function() {
			var oudernaam = $(this).val()+"";
			$('input[name=idealoudernaam]').val(oudernaam);
		});		
		/*
		//voor het overzicht
		$("input[name=voornaam_ouder_1]").change(function() {
			var oudervoornaam = $(this).val()+"";
			$('#x_voornaam_ouder_1').html(oudervoornaam);
		});
	*/
	/*
	//welke stad
		$("#stad input:checkbox").change(function() {
	//console.log("checkbox click");
	var stad = $(this).val()+"";
		$('#x_overzicht li.stad').remove();
		$('#x_overzicht').append('<li class="stad">'+stad+'</li>');
	}
	);*/
	
	//ideal knopje
	$("#x_ideal_loader").click(function(){  
	var postcode = $("input[name=postcode]").val();
	var achternaam = $("input[name=achternaam_ouder_1]").val();
	kenmerk = postcode + " " + achternaam;
	var totaalbedragideal = (totaalbedrag * 100);
	//console.log("ideal loader click");
      $("#x_ideal_placeholder").load("http://www.oppasstudent.nl/wp-content/themes/oppasstudent2/x_formulieren/ideal.php", { 'Waardes[]': [kenmerk, totaalbedragideal] });  
    });  
	
	//overzicht
	$(".next:last").click(function(){  
		herberekenen();
		//console.log("laatste stap voltooid!");
		//full reset
		$('#x_naw_naam').html("");
		$('#x_naw_adres').html("");
		$('#x_naw_postcode').html("");
		$('#x_naw_plaats').html("");
		$('#x_naw_telefoon').html("");
		$('#x_naw_email').html("");
		$('#x_bank_rekening').html("");
		$('#x_bank_naamhouder').html("");
		$('#x_bank_plaats').html("");
		$('#x_aanvraag_typeoppas').html("");
		$('#x_aanvraag_data1').html("");
		$('#x_aanvraag_data2').html("");
		//variables
		var naw_voornaam = $("input[name=voornaam_ouder_1]").val();
		var naw_achternaam = $("input[name=achternaam_ouder_1]").val();
		var naw_naam = naw_voornaam + " " + naw_achternaam;
		var naw_adres = $("input[name=adres]").val();
		var naw_huisnummer = $("input[name=huisnummer]").val();
		var naw_postcode = $("input[name=postcode]").val();
		var naw_plaats = $("input[name=plaats]").val();
		var naw_telefoon = $("input[name=telefoonnummer]").val();
		var naw_email = $("input[name=e-mailadres]").val();
		var bank_rekening = $("input[name=bankrekening]").val();
		var bank_naamhouder = $("input[name=rekeninghouder]").val();
		var bank_plaats = $("input[name=rekeninghouderplaats]").val();
		var aanvraag_typeoppas = $("select[name=type-aanvraag] option:selected").html().toLowerCase(); // html ipv val?!
		//incidenteel: geen data
		//vast: +/- twee of drie keer per maand  wekelijks meerdere keren per week PLUS TIJDEN
		//inval: precieze datum
		var aanvraag_data1 = ""; //complex
		var aanvraag_data2 = ""; //complex
		//vaste oppas
		if(aanvraag_typeoppas == "vaste oppas" || aanvraag_typeoppas == "permanent babysitter"){
			var checked = $(".hoe_vaak input[type=checkbox]:checked");
			aanvraag_data1 = $(checked).next("span:first").html();
			
			//cycle through data
			$("#vastetijden input").each(function() {
			   if($(this).val() != ""){
			   var ingevuldedata = $(this).val();
			   var dag = $(this).parents("tr").find("td:first").html();
			   //capitalize first letter of day
				dag = dag.toLowerCase().replace(/\b[a-z]/g, function(letter) {
					return letter.toUpperCase();
				});
				aanvraag_data2 += "<label>" + dag + "</label> " + ingevuldedata + "<br />";
				}
			});
		}
		//inval oppas
		if(aanvraag_typeoppas == "invaloppas" || aanvraag_typeoppas == "replacement babysitter"){
			//console.log("running inval oppas options...");
			//cycle through data
			$("#wanneernodig div").each(function() {
			////console.log("#wanneernodig: " + $(this));
			var divid = $(this).attr("id");
			//console.log("#wanneernodig " + divid);
				$("#" + divid + " option:selected").each(function(i, value) {
				//console.log("option:selected " + $(this));
					 if($(this).val() != "---"){
						var ingevuldedata = $(this).html();
						if(i == 0){ // hoofdletter en label voor de dag
						ingevuldedata = ingevuldedata.toLowerCase().replace(/\b[a-z]/g, function(letter) {
							return letter.toUpperCase();
						});
						aanvraag_data2 += "<label>" + ingevuldedata + " ";
						}
						else if(i == 2){ // einde label
						aanvraag_data2 += ingevuldedata + ":</label> ";
						}
						else if(i == 4){ // streepje voor de tijden
						aanvraag_data2 += ingevuldedata + " - ";
						}
						else{
						aanvraag_data2 += ingevuldedata + " ";
						}
					}
				});
				if(aanvraag_data2 != ""){
				//if($("#" + divid).is(':visible')){
				aanvraag_data2 += "<br />";
				}
			});
		}
		//naw
		$('#x_naw_naam').html(naw_naam);
		$('#x_naw_adres').html(naw_adres + " " + naw_huisnummer);
		$('#x_naw_postcode').html(naw_postcode);
		$('#x_naw_plaats').html(naw_plaats);
		$('#x_naw_telefoon').html(naw_telefoon);
		$('#x_naw_email').html(naw_email);
		//bankgegevens
		$('#x_bank_rekening').html(bank_rekening);
		$('#x_bank_naamhouder').html(bank_naamhouder);
		$('#x_bank_plaats').html(bank_plaats);
		//aanvraag
		aanvraag_typeoppas = aanvraag_typeoppas.toLowerCase().replace(/\b[a-z]/g, function(letter) {
				return letter.toUpperCase();
		});
		$('#x_aanvraag_typeoppas').html(aanvraag_typeoppas);
		if(aanvraag_data1 != ""){
		$('#x_aanvraag_data1').html(aanvraag_data1);
		}
		if(aanvraag_data2 != ""){
		$('#x_aanvraag_data2').html("<br />" + aanvraag_data2);
		}

	});
	
		
			
        });
		
		//dit is buiten alles om!
			function loadideal() {
			
			//chrome hack, remove all required classes
			//$('.wpcf7-validates-as-required').removeClass('wpcf7-validates-as-required');
			//$('.wpcf7-validates-as-email').removeClass('wpcf7-validates-as-email');
			//end of chrome hack
			
			var language = "nl";

			var currenturl = $(location).attr('href');
			if( currenturl.indexOf( "/en/" ) !== -1 )
			{
				language = "en";
			}

	var totaalbedrag = $("input[name=totaalbedrag]").val();
	var postcode = $("input[name=idealpostcode]").val();
	var achternaam = $("input[name=idealoudernaam]").val();
	var kenmerk = postcode + " " + achternaam;
	var totaalbedragideal = (totaalbedrag * 100);
	//console.log("ideal loader click");
      $("#x_ideal_placeholder").load("http://www.oppasstudent.nl/wp-content/themes/oppasstudent2/x_formulieren/ideal.php", { 'Waardes[]': [kenmerk, totaalbedragideal, language] });  
	$(".prev, .wpcf7-submit").hide(); //hide knopjes

	$("#x_ideal_placeholder").addClass("redborder");
	$("#x_ideal_placeholder").appendTo("div.wpcf7");
	$("#WizardMe").remove();
	}
