var s_indgcheckin = "Indicare il giorno della data di arrivo in albergo, grazie.\n\n";var s_indmcheckin = "Indicare il mese della data di arrivo in albergo, grazie.\n\n";var s_indacheckin = "Indicare l'anno della data di arrivo in albergo, grazie.\n\n";var s_indgcheckout = "Indicare il giorno della data di partenza dall'albergo, grazie.\n\n";var s_indmcheckout = "Indicare il mese della data di partenza dall'albergo, grazie.\n\n";var s_indacheckout = "Indicare l'anno della data di partenza dall'albergo, grazie.\n\n";var s_inddcheckinv = "Indicare una data di arrivo in albergo valida, grazie.\n\n"var s_inddcheckoutv = "Indicare una data di partenza dall'albergo valida, grazie.\n\n"var s_datacheckoutc = "La data di partenza deve essere compresa fra il ";var s_datacheckinc = "La data di arrivo deve essere compresa fra il ";var s_datacheckinc2 = " e il ";var s_indadulti = "Indicare il numero di persone adulte da ospitare, grazie.\n\n";var s_totsup = "Il numero totale degli adulti e dei bambini dai 2 ai 12 anni e' superiore alla disponibilita' dei posti in una singola camera (";var s_totsup2 = " posti).\n\nSi consiglia di effettuare due o piu' prenotazioni dividendo gli ospiti in piu' camere, grazie.\n\n";var s_gsucc = "E' necessario indicare un giorno di partenza dall'albergo successivo a quello di arrivo in albergo.\n\n Si prega di correggere le date, grazie.\n\n";var s_60gg = "Non e' possibile prenotare un soggiorno di durata superiore ai 60 giorni. Per periodi piu' lunghi effettuare due prenotazioni.\n\n Si prega di correggere le date, grazie.\n\n";var s_mesi = new Array("", "Gennaio", "Febbraio", "Marzo", "Aprile", "Maggio", "Giugno", "Luglio", "Agosto", "Settembre", "Ottobre", "Novembre", "Dicembre");var maxpeople = 0;var maxpeople = 0;var firstday = "";var lastday = "";function buildselect(theSelect, theMax){	var k = theSelect.options.length - 1;	for(var i = 0; i < k; i++)		theSelect.options[1] = null;	for (var i = 1; i <= theMax; i++)		theSelect.options[theSelect.options.length] = new Option(i, i);	}	function enable(theMaxPlaces, theFirstDay, theLastDay, theHotel){	var firstdayD = new Date();	var lastdayD = new Date();	var mesiA = document.getElementById("arrive_mt");	var mesiD = document.getElementById("departure_mt");	document.getElementById("hotel").value = theHotel;		document.getElementById("submit").disabled=false;	maxpeople=theMaxPlaces;	firstday=theFirstDay;	lastday=theLastDay;	buildselect(document.step1.numbambini, theMaxPlaces);	buildselect(document.step1.numadulti, theMaxPlaces);	firstdayD.setFullYear(getInt(firstday.substring(0, 4)), (getInt(firstday.substring(5, 7)) - 1), getInt(firstday.substring(8, 10)));	lastdayD.setFullYear(getInt(lastday.substring(0, 4)), (getInt(lastday.substring(5, 7)) - 1), getInt(lastday.substring(8, 10)));		var k = mesiA.options.length - 1;	for(var i = 0; i < k; i++)		mesiA.options[1] = null;	var k = mesiD.options.length - 1;	for(var i = 0; i < k; i++)		mesiD.options[1] = null;			var currM = firstdayD.getMonth();	var currY = firstdayD.getFullYear();	mesiA.options[mesiA.options.length] = new Option(getMese(currM + 1) + ' ' + currY, currY + '' + addZero(currM + 1));	mesiD.options[mesiD.options.length] = new Option(getMese(currM + 1) + ' ' + currY, currY + '' + addZero(currM + 1));	var stopM = false;	var tmpD = new Date();		while(!stopM) {		currM = nextMonth(currM);		if(currM == 0) currY++;		tmpD.setFullYear(currY, currM, 1);		//if((currM <= lastdayD.getMonth()) || (currY <= lastdayD.getFullYear())) {		if(tmpD <= lastdayD) {			mesiA.options[mesiA.options.length] = new Option(getMese(currM + 1) + ' ' + currY, currY + '' + addZero(currM + 1));			mesiD.options[mesiD.options.length] = new Option(getMese(currM + 1) + ' ' + currY, currY + '' + addZero(currM + 1));			}		else			stopM = true;		}	}	function disable(){	document.getElementById("fields").style.display='none';	document.getElementById("submit").disabled=true;	document.step1.hotelselect.selectedIndex=0;	}	function getDateString(y_obj,m_obj,d_obj) {	var y = y_obj.options[y_obj.selectedIndex].value;	var m = m_obj.options[m_obj.selectedIndex].value;	var d = d_obj.options[d_obj.selectedIndex].value;	if (y=="" || m=="") { return null; }	if (d=="") { d=1; }	return str= y+'-'+m+'-'+d;	}	function addZero(arg) {	if(arg < 10) return '0' + arg;		else return arg;	}	function checkForm(form){ 	var tErrors="";	var adulti = parseInt(form.numadulti.options[form.numadulti.selectedIndex].value);	var bambini_312 = parseInt(form.numbambini.options[form.numbambini.selectedIndex].value);		var arrive = new Date();	var departure = new Date();	arrive.setFullYear(form.arrive_y.value, form.arrive_m.value, form.arrive_d.options[form.arrive_d.selectedIndex].value);	departure.setFullYear(form.departure_y.value, form.departure_m.value, form.departure_d.options[form.departure_d.selectedIndex].value);		if (form.arrive_mt.selectedIndex == 0){		tErrors+=s_indmcheckin;		}	if (form.arrive_d.selectedIndex == 0){		tErrors+=s_indgcheckin;		}	if (form.departure_mt.selectedIndex == 0){		tErrors+=s_indmcheckout;		}	if (form.departure_d.selectedIndex == 0){		tErrors+=s_indgcheckout;		}			var firstdayI = parseInt(firstday.replace(/-/g, ''));	var lastdayI = parseInt(lastday.replace(/-/g, ''));	var arriveI = parseInt(form.arrive_y.value + addZero(form.arrive_m.value) + addZero(form.arrive_d.options[form.arrive_d.selectedIndex].value));	var departureI = parseInt(form.departure_y.value + addZero(form.departure_m.value) + addZero(form.departure_d.options[form.departure_d.selectedIndex].value));	if((arriveI < firstdayI) || (arriveI > lastdayI)) tErrors+= s_datacheckinc + invertiData(firstday) + s_datacheckinc2 + invertiData(lastday) + ".\n\n";	if((departureI < firstdayI) || (departureI > lastdayI)) tErrors+= s_datacheckoutc + invertiData(firstday) + s_datacheckinc2 + invertiData(lastday) + ".\n\n";		if (form.numadulti.selectedIndex == 0){		tErrors+="Indicare il numero di persone adulte da ospitare, grazie.\n\n" ;		}	if((adulti + bambini_312) > maxpeople){		tErrors += s_totsup + maxpeople + s_totsup2;		}	if(arriveI >= departureI){		tErrors += s_gsucc;		}	if(departure.getTime() - arrive.getTime() > 5184000000){		tErrors += s_60gg;		}	if (tErrors!=""){		alert(tErrors);		return false;		}	return true;}function invertiData(arg) {	if(arg.length == 10) {		var giorno = arg.substring(8, 10);		var mese = arg.substring(5, 7);		var anno = arg.substring(0, 4);		return giorno + '-' + mese + '-' + anno;		}	else		return '';	}	function setDays(selMonth, selDays) {	var mesi = document.getElementById(selMonth);	var giorni = document.getElementById(selDays);		var idx = mesi.selectedIndex;	var mese = mesi.options[idx].value.substring(4, 6);	var anno = mesi.options[idx].value.substring(0, 4);	if(selMonth == 'arrive_mt') {		if(mese.substring(0, 1) == '0')			document.getElementById("arrive_m").value = mese.substring(1, 2);		else			document.getElementById("arrive_m").value = mese;		document.getElementById("arrive_y").value = anno;		}	else if(selMonth == 'departure_mt') {		if(mese.substring(0, 1) == '0')			document.getElementById("departure_m").value = mese.substring(1, 2);		else			document.getElementById("departure_m").value = mese;		document.getElementById("departure_y").value = anno;		}			var k = giorni.options.length - 1;	for(var i = 0; i < k; i++)		giorni.options[1] = null;			switch(mese) {		case '02':			if(parseInt(anno) % 4 == 0)				addDays(giorni, 29, mese, anno);			else				addDays(giorni, 28, mese, anno);			break;		case '04':			addDays(giorni, 30, mese, anno);			break;		case '06':			addDays(giorni, 30, mese, anno);			break;		case '09':			addDays(giorni, 30, mese, anno);			break;		case '11':			addDays(giorni, 30, mese, anno);			break;		default:			addDays(giorni, 31, mese, anno);			break;		}			}	function addDays(arg, num, mese, anno) {	var firstdayI = parseInt(firstday.replace(/-/g, ''));	var lastdayI = parseInt(lastday.replace(/-/g, ''));		for (var i = 1; i <= num; i++) {		if((parseInt(anno + mese + addZero(i)) >= firstdayI) && (parseInt(anno + mese + addZero(i)) <= lastdayI))			arg.options[arg.options.length] = new Option(i, i);		}	}	function nextMonth(arg) {	var m = arg + 1;		if(m % 12 == 0) return 0;		else return m;	}	function getMese(arg) {	return s_mesi[arg];}function getInt(arg) {	var str = arg;	while(str.substring(0, 1) == '0')		str = str.slice(1);	return parseInt(str);}
