

//validatie 



function validate(){



	var frm = document.forms[0];

		

	var aanhef = '';

	

	for (var i = 0; i< frm['aanhef'].length; i++){

	    if (frm['aanhef'][i].checked){

	      aanhef = frm['aanhef'][i].value;

	     }

	}

	

	var size = frm['size'].value;

	var voorletters = frm['voorletters'].value;

	var achternaam = frm['achternaam'].value;

	var hh_gb_dag = frm['hh_gb_dag'].value;

	var hh_gb_maand = frm['hh_gb_maand'].value;

	var hh_gb_jaar = frm['hh_gb_jaar'].value;

	var adres = frm['adres'].value;

	var nummer = frm['nummer'].value;

	var postcode = frm['postcode'].value;

	var plaats = frm['plaats'].value;

	var land = frm['land'].value;

	var telefoon = frm['telefoon'].value;

	var mobiel = frm['mobiel'].value;

	var email = frm['email'].value;

	

		

	var dag = '';

	var maand = '';

	var jaar = '';

	var dag_ = 0;

	var maand_ = 0;

	var jaar_ = 0;

	

	for( var i = 0; i < size; i++){

	

		dag = frm['adag['+i+']'].value;

		if (dag != '') var dag_ = 1;

		maand = frm['amaand['+i+']'].value;

		if (maand != '') var maand_ = 1;

		jaar = frm['ajaar['+i+']'].value;

		if (jaar != '') var jaar_ = 1;

	}

	

	if (dag_ == 0) {

		alert('Wilt u dag aankomst kiezen?');

        return false;

	}

	else if (maand_ == 0) {

		alert('Wilt u maand aankomst kiezen?');

        return false;

	}

	else if (jaar_ == 0) {

		alert('Wilt u jaar aankomst kiezen?');

        return false;

	}

		

	for (i = 0; i < size; i++){		

		

		var huisnaam = frm['huisnaam[' + i + ']'].value;
	var huisID = frm['huis_id[' + i + ']'].value;

		var adag = frm['adag[' + i + ']'].value; 

		var amaand = frm['amaand[' + i + ']'].value; 

		var ajaar = frm['ajaar[' + i + ']'].value; 

		

		var vdag = frm['vdag[' + i + ']'].value; 

		var vmaand = frm['vmaand[' + i + ']'].value; 

		var vjaar = frm['vjaar[' + i + ']'].value; 

		

		var aantal = frm['aantal[' + i + ']'].value; 

		

	   

	   if (adag == '' && amaand != '' && ajaar != ''){

           alert('Selecteer a.u.b. dag aankomst ' + huisnaam + '.');

		   frm['adag[' + i + ']'].focus();

           return false;

       }

	   

	   else if (adag != '' && amaand == '' && ajaar != ''){

           alert('Selecteer a.u.b. maand aankomst ' + huisnaam + '.');

		   frm['amaand[' + i + ']'].focus();

           return false;

       }

	   

	   else if (adag != '' && amaand != '' && ajaar == ''){

           alert('Selecteer a.u.b. jaar aankomst ' + huisnaam + '.');

		   frm['ajaar[' + i + ']'].focus();

           return false;

       }

	   

	   else if (adag != '' && amaand != '' && ajaar != '' && vdag == ''){

           alert('Selecteer a.u.b. dag vertrek ' + huisnaam + '.');

		   frm['vdag[' + i + ']'].focus();

           return false;

       }

	   

	   else if (adag != '' && amaand != '' && ajaar != '' && vmaand == ''){

           alert('Selecteer a.u.b. maand vertrek ' + huisnaam + '.');

		   frm['vmaand[' + i + ']'].focus();

           return false;

       }

	   

	   else if (adag != '' && amaand != '' && ajaar != '' && vjaar == ''){

           alert('Selecteer a.u.b. jaar vertrek ' + huisnaam + '.');

		   frm['vjaar[' + i + ']'].focus();

           return false;

       }

	   

	   else if (vdag == '' && vmaand != '' && vjaar != ''){

           alert('Selecteer a.u.b. dag vertrek ' + huisnaam + '.');

		   frm['vdag[' + i + ']'].focus();

           return false;

       }

	   

	   else if (vdag != '' && vmaand == '' && vjaar != ''){

           alert('Selecteer a.u.b. maand vertrek  ' + huisnaam + '.');

		   frm['vmaand[' + i + ']'].focus();

           return false;

       }

	   

	   else if (vdag != '' && vmaand != '' && vjaar == ''){

           alert('Selecteer a.u.b. jaar vertrek  ' + huisnaam + '.');

		   frm['vjaar[' + i + ']'].focus();

           return false;

       }

	   

	   else if (vdag != '' && vmaand != '' && vjaar != '' && (adag == '' || amaand == '' || ajaar == '')){

           alert('Selecteer a.u.b. datum aankomst ' + huisnaam + '.');

		   frm['adag[' + i + ']'].focus();

           return false;

       }

	   

	   else if (adag != '' && amaand != '' && ajaar != '' && aantal == 0){

           alert('Selecteer a.u.b. aantal personen voor ' + huisnaam + '.');

		   frm['aantal[' + i + ']'].focus();

           return false;

       }

	   

	   else if (vdag != '' && vmaand != '' && vjaar != '' && aantal == 0){

           alert('Selecteer a.u.b. aantal personen ' + huisnaam + '.');

		   frm['aantal[' + i + ']'].focus();

           return false;

       }

	}

	

	// validatie minimaal aantal nachten

	

	// validatie minimaal aantal nachten
for (i = 0; i < size; i++)
{	
	var huisnaam = frm['huisnaam[' + i + ']'].value;
	var huisID = frm['huis_id[' + i + ']'].value;

	var adag = frm['adag[' + i + ']'].value; 
	var amaand = frm['amaand[' + i + ']'].value; 
	var ajaar = frm['ajaar[' + i + ']'].value; 
	ajaar = Number(ajaar);		

	var vdag = frm['vdag[' + i + ']'].value;
	var vmaand = frm['vmaand[' + i + ']'].value; 
	var vjaar = frm['vjaar[' + i + ']'].value; 

	if (adag != '' && amaand != '' && ajaar != '' && vdag != '' && vmaand != '' && vjaar != '')
	{
		// correctie maandwaarde 0  - 11	

		var date_a = new Date(ajaar, amaand - 1, adag);

		var date_v = new Date(vjaar, vmaand - 1, vdag);	

		var tmp_a = date_a.getTime();  // timestamp aankomst

		var tmp_v = date_v.getTime();  // timestamp vertrek	

		var aantal_dagen = ((tmp_v - tmp_a) / 1000) / (60 * 60 * 24);

		var tmp_zn = 60 * 60 * 24 * 7 * 1000;  // aantal milisecondes in zeven dagen			

		// timestamps periode 1/7 tot 31/8, bj begin juli tot eind augustus
		var obj_bj = new Date(ajaar, 6, 1);
		var obj_ea = new Date(ajaar, 7, 31);

		var tmp_bj = obj_bj.getTime();
		var tmp_ea = obj_ea.getTime();	

		// timestamp kerstdagen 25 en 26 december, ek eerste kerstdag en tk tweede kerstdag
		var obj_ek = new Date(ajaar, 11, 25);
		var obj_tk = new Date(ajaar, 11, 26);

		var tmp_ek = obj_ek.getTime();	
		var tmp_tk = obj_tk.getTime();		

		// timestamp oudjaar en nieuwjaar, oj en nj	
		var nieuwjaar = ajaar + 1;
		var obj_oj = new Date(ajaar, 11, 31);

		var obj_nj = new Date(nieuwjaar, 0, 1);
		var tmp_oj = obj_oj.getTime();	

		var tmp_nj = obj_nj.getTime();		

		// controleer of de boeking binnen de zomer periode valt

		if ((tmp_a >= tmp_bj && tmp_a <= tmp_ea) && (tmp_v >= tmp_bj && tmp_v <= tmp_ea)) // aankomst en vertrek binnen de periode
		{ 
			if (aantal_dagen < 7) 				
			{
				alert(huisnaam + ': In juli en augustus minimaal 7 nachten boeken.');
				frm['adag['+i+']'].focus();
          		return false;		
			}	
		}
		else if (tmp_v == tmp_ek || tmp_v == tmp_tk) // kerst
		{ 
			alert(huisnaam + ': Kerstmis  minimaal 3 nachten boeken.');
			frm['adag['+i+']'].focus();
          	return false;	
		}
		else if (tmp_a <= tmp_ek && tmp_v >= tmp_tk) // kerst
		{
			// minimaal 3 nachten
			if (aantal_dagen < 3) 
			{
				alert(huisnaam + ': Kerstmis  minimaal 3 nachten boeken.');
				frm['adag['+i+']'].focus();
          		return false;
			}	
		}
		else if (tmp_a <= tmp_oj && tmp_v >= tmp_nj) // nieuwjaar
		{ 
			// minimaal 3 nachten
			if (aantal_dagen < 3) 
			{
				alert(huisnaam + ': Nieuwjaar  minimaal 3 nachten boeken.');
				frm['adag['+i+']'].focus();
          		return false;		
			}
		}
		else if(aantal_dagen < 2 && huisID != 7) 
		{
			alert(huisnaam + ': minimaal 2 nachten boeken.'); // Minimum two nights except Casa Estrella 
			frm['adag['+i+']'].focus();
          	return false;	
		}
		else if(aantal_dagen < 3 && huisID == 7) // Casa Estrella minimum three nights
		{
			alert(huisnaam + ': minimaal 3 nachten boeken.');
			frm['adag['+i+']'].focus();
          	return false;	
		}	
	}	
}

	

	// validatie persoonsgegevens en gegevens medehuurders 	

	   

	  if(aanhef == ""){

            alert ("Kies a.u.b. een aanhef.");

            frm['aanhef'][0].focus();

            return false;

        }

		else if (voorletters == ""){

            alert ("Voer a.u.b. uw voorletter in");

            frm['voorletters'].focus();

            return false;

        }		

		else if (achternaam == ""){

            alert ("Voer a.u.b. uw achternaam in");

            frm['achternaam'].focus();

            return false;

        }		

		else if (hh_gb_dag == ""){

            alert ("Voer a.u.b. geboortedag hoofdhuurder in.");

            frm['hh_gb_dag'].focus();

            return false;

        }	

		else if (hh_gb_maand == ""){

            alert ("Voer a.u.b. geboortemaand hoofdhuurder in.");

            frm['hh_gb_maand'].focus();

            return false;

        }

		else if (hh_gb_jaar == ""){

            alert ("Voer a.u.b. geboortejaar hoofdhuurder in.");

            frm['hh_gb_jaar'].focus();

            return false;

        }

		else if (adres == ""){

            alert ("Voer a.u.b. uw adres in");

            frm['adres'].focus();

            return false;

        }

		else if (nummer == ""){

            alert ("Voer a.u.b. uw huisnummer in");

            frm['nummer'].focus();

            return false;

        }

		else if (postcode == ""){

            alert ("Voer a.u.b. postcode in");

            frm['postcode'].focus();

            return false;

        }

		else if (plaats == ""){

            alert ("Voer a.u.b. uw woonplaats in");

            frm['plaats'].focus();

            return false;

        }

		else if (email == ""){

            alert ("Voer a.u.b. uw e-mail adres in");

            frm['email'].focus();

            return false;

       }   	    

		else if (telefoon == '' && mobiel == ''){

            alert ("Voer a.u.b. uw telefoonnummer of mobielnummer in");

            frm['telefoon'].focus();

            return false;

       } 	    

	     

		if(frm.email.value.indexOf("@") == -1){

			alert("Er staat geen @ in het E-mail adres, en het is dus ongeldig");

			frm['email'].focus();

			return(false);

		} 	

}

	