function validateAndSubmitForm(form,a,b,c)
{
	var today = new Date();
	oggi = (today.getMonth()+1) + "/" + today.getDate() + "/" + today.getYear();
	
	var val = a.value.split("/");
	if(!isDate(val[2],val[1],val[0])){
		alert('inserci una Data di Arrivo corretta');
		return;
	}

	if(oggi,suycDateDiff(oggi,val[1] +"/"+ val[0] + "/" + val[2], "d", true)<0){
		alert('inserci una Data di Arrivo corretta');
		return;
	}

	var val = b.value.split("/");
	if(!isDate(val[2],val[1],val[0])){
		alert('inserci una Data di Partenza corretta');
		return;
	}
	
	if(oggi,suycDateDiff(oggi,val[1] +"/"+ val[0] + "/" + val[2], "d", true)<0){
		alert('inserci una Data di Partenza corretta');
		return;
	}

	if(Diff(form,a,b) > 30){
		alert('Il periodo scelto va dal giorno '+ a + ' al giorno ' + b + '. Non si accettano prenotazioni per periodi superiori ad un mese');
		return;
	}

	if(Diff(form,a,b) < 0){
		alert('Controlla le date e calcola un numero valido di notti di permanenza');
		return;
	}
	else if(Diff(form,a,b) == 0){
		alert('Il sistema calcola disponibilità e prezzo per periodi non inferiori ai 7 giorni.\n Per periodi più brevi verifica la disponibilità in tempo reale e chiama Monica al numero 349 0848163');
		return;
	}

	if(form.numeroPersone.value == 0){
		alert('inserci un numero valido di Adulti');
		return;
	}

	//-- un solo adulto con più bimbi di età inferiore ai 4 anni
	if((form.numeroPersone.value == 1) && (form.b2.value>0)){
		alert('Mi dispiace, il pernottamento di bimbi di età inferiore ai 4 anni è gratuito solo se accompagnati da due adulti');
		return;
	}

	//-- un solo adulto con più bimbi di età inferiore ai 10 anni
	if((form.numeroPersone.value == 1) && (form.b10.value>0)){
		alert('Mi dispiace, bimbi di età compresa fra 4 e 10 anni beneficiano dello scondo del 50% solo se accompagnati da due adulti');
		return;
	}

	//-- un solo adulto
	if((form.numeroPersone.value == 1) ){
		alert('Mi dispiace, l\'agriturismo non dispone di camere singole');
		return;
	}


	//form.elements["action"].value=action;
	form.submit();
}


function isValidDate(field)
{
	var val = field.value.split("/");
	if(!isDate(val[2],val[1],val[0])){
		return 0;
	}
	else
		return 1;
}

function Diff(form,dataArrivo,dataPartenza)
{
	if (isValidDate(dataArrivo) && isValidDate(dataPartenza))
	{
		var valA = dataArrivo.value.split("/");
		dataA = valA[1] +"/"+ valA[0] + "/" + valA[2];
		var valP = dataPartenza.value.split("/");
		dataP = valP[1] +"/"+ valP[0] + "/" + valP[2];
		numeroNotti = suycDateDiff(dataA,dataP, "d", true);
		form.numeroNotti.value = numeroNotti;	
		if (numeroNotti > 1)
		{
			return 1;
		}
		else if (numeroNotti <=0)
			{
				return -1;
			}
			else // numero notti compreso fra 0 e 0 - estremi esclusi
				return 0;
	}
	return -1;
}

