// FUNZIONI GENERALI
// Controllo validità della data
function isValidDate(dateStr){
	// Checks for the following valid date formats:
	// YYYY-MM-DD
	// Also separates date into year, month, and day variables
	var datePat = /^(\d{4})(-)(\d{1,2})\2(\d{1,2})$/;
	var matchArray = dateStr.match(datePat); // is the format ok?
	if (matchArray == null){
		alert("La data inserita non è nel formato richiesto!")
		return false;
	}
	year = matchArray[1]; // parse date into variables
	month = matchArray[3];
	day = matchArray[4];	
	if (month < 1 || month > 12){ // check month range
		alert("I mesi devono essere compresi tra 1 e 12!");
		return false;
	}
	if (day < 1 || day > 31){
		alert("I giorni devono essere compresi tra 1 e 31!");
		return false;
	}
	if ((month==4 || month==6 || month==9 || month==11) && day==31){
		alert("Il mese di "+month+" non ha 31 giorni!")
		return false
	}
	if (month == 2) { // check for february 29th
		var isleap = (year % 4 == 0 && (year % 100 != 0 || year % 400 == 0));
		if (day>29 || (day==29 && !isleap)){
			alert("Febbraio " + year + " non ha " + day + " giorni!");
			return false;
   		}
	}
	return true;  // date is valid
}
// Controllo validità indirizzo e-mail
function check_email(indirizzo){
    if (!(indirizzo.match(/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,4})+$/))){
		alert("ATTENZIONE: hai inserito un indirizzo E-Mail in un formato non valido!");
		return false;
    } else {
		return true;
	}
}
// Controllo visibilità informazioni
function view_info(tagid){
	var el=document.getElementById(tagid);
	el.style.visibility="visible";
}
function no_info(tagid){
	var el=document.getElementById(tagid);
	el.style.visibility="hidden";
}

// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
// SEZIONE OFFERTE

function checkdati_offerta_novembre(){
	var doc=document.getElementById('modulo_contatti');
	var errore="";
	var rispondo=false;
	if (doc.nome.value == ""){
		errore=errore+"- Nome\n";
	}
	if (doc.cognome.value == ""){
		errore=errore+"- Cognome\n";	
	}
	if (doc.email.value == ""){
		errore=errore+"- E-Mail\n";	
	}
	if (doc.arrivo.value == ""){
		errore=errore+"- Data di arrivo\n";	
	}
	if (doc.giorni.value == ""){
		errore=errore+"- Giorni di permanenza\n";	
	}
	if (doc.persone.value == ""){
		errore=errore+"- Persone Totali\n";	
	}
	if (doc.contenuto.value == ""){
		errore=errore+"- Richiesta\n";	
	}
	if (doc.cod_antispam.value == ""){
		errore=errore+"- Codice Antispam\n";	
	}
	if (errore){
		alert("ATTENZIONE: ci sono dei dati richiesti non inseriti! \n\n"+errore);
		rispondo=false;
	} else {
		rispondo=check_email(doc.email.value);
		if (rispondo) rispondo=isValidDate(doc.arrivo.value);
		if (rispondo){
				// Verifico l'accettazione della privacy
				if (doc.privacy.checked){
					rispondo=true;
				} else {
					alert("ATTENZIONE: per completare la richiesta dovete sottoscrivere l'informativa per la privacy ed accettare il trattamento dei dati personali.\n");
					rispondo=false;
				}
			}
	}
	return rispondo;
}

function checkdati_mailing(){
	var doc=document.getElementById('mail_offerte');
	var errore="";
	var rispondo=false;
	if (doc.nome.value == ""){
		errore=errore+"- Nome\n";
	}
	if (doc.cognome.value == ""){
		errore=errore+"- Cognome\n";
	}
	if (doc.email.value == ""){
		errore=errore+"- E-Mail\n";	
	}
	if (errore){
		alert("ATTENZIONE: ci sono dei dati richiesti non inseriti! \n\n"+errore);
		rispondo=false;
	} else {
		rispondo = check_email(doc.email.value);
		if (rispondo){
				// Verifico l'accettazione della privacy
				if (doc.privacy_mailing.checked){
					rispondo=true;
				} else {
					alert("ATTENZIONE: per completare la richiesta dovete sottoscrivere l'informativa per la privacy ed accettare il trattamento dei dati personali.\n");
					rispondo=false;
				}
			}
	}

	return rispondo;
}