window.onload = function () {
	//OPERAZIONI ESEGUITE AL CARICAMENTO DELLA PAGINA

	//Preload delle immagini
	MM_preloadImages('icaro/img/nav_contattaci_1.gif', 'icaro/img/nav_piscina_1.gif', 'icaro/img/nav_ristorante_1.gif', 'icaro/img/nav_discoteca_0.gif', 'icaro/img/nav_aviosuperficie_0.gif', 'icaro/img/nav_calcio5_1.gif', 'icaro/img/nav_parcogiochi_1.gif', 'icaro/img/nav_eventi_1.gif', 'icaro/img/nav_contatti_1.gif');
	if (document.getElementById('hint')) {
		SetHint(0);
		SetHintFunctions();
	}

	//Focus sul campo username
	GetFocus('user_email');
}

function GetFocus(elem_id) {
	var elem = document.getElementById(elem_id);
	if (elem) {
		elem.focus();
	}
}

function IsDate(dt) {
	if (dt.length != 10) {
		return 'La data deve essere di 10 caratteri';
	} else {
		var dtDay = dt.substr(0, 2);
		var dtMonth = dt.substr(3, 2);
		var dtYear = dt.substr(6, 4);
		if (isNaN(dtDay) || isNaN(dtMonth) || isNaN(dtYear)) {
			return 'Nella data sono stati immessi valori non numerici';
		} else {
			dt = new Date(dtYear, (dtMonth - 1), dtDay);
			if (dtDay != dt.getDate() || (dtMonth - 1) != dt.getMonth() || dtYear != dt.getFullYear()) {
				return 'Data non valida';
			} else {
				return '';
			}
		}
	}
}

function SetHintFunctions() {
	//IMPOSTA PER OGNI CAMPO DEL MODULO LA VISUALIZZAZIONE DEL SUGGERIMENTO IN CASO DI SELEZIONE / DESELEZIONE
	document.getElementById('Nome').onfocus = function() {SetHint(1);}
	document.getElementById('Nome').onblur = function() {SetHint(0);}
	
	document.getElementById('Cognome').onfocus = function() {SetHint(2);}
	document.getElementById('Cognome').onblur = function() {SetHint(0);}
	
	document.getElementById('Indirizzo').onfocus = function() {SetHint(3);}
	document.getElementById('Indirizzo').onblur = function() {SetHint(0);}
	
	document.getElementById('Citta').onfocus = function() {SetHint(4);}
	document.getElementById('Citta').onblur = function() {SetHint(0);}
	
	document.getElementById('Prov').onfocus = function() {SetHint(5);}
	document.getElementById('Prov').onblur = function() {SetHint(0);}
	
	document.getElementById('Telefono').onfocus = function() {SetHint(6);}
	document.getElementById('Telefono').onblur = function() {SetHint(0);}
	
	document.getElementById('Email').onfocus = function() {SetHint(8);}
	document.getElementById('Email').onblur = function() {SetHint(0);}
	
	document.getElementById('Password1').onfocus = function() {SetHint(7);}
	document.getElementById('Password1').onblur = function() {SetHint(0);}
	
	document.getElementById('Password2').onfocus = function() {SetHint(7);}
	document.getElementById('Password2').onblur = function() {SetHint(0);}
}

function SetHint(n) {
	//VISUALIZZA IL SUGGERIMENTO PER IL CAMPO SELEZIONATO NEL MODULO
	var Obj = document.getElementById('hint');
	var hint;
	switch (n) {
		case 0:
			hint = 'Selezionare un campo per avere suggerimenti sui dati da immettere';
			break;
		case 1:
		case 2:
		case 4:
			hint = 'Massimo 50 caratteri, consentiti caratteri alfabetici, apice singolo (&#39;), trattino (-) e spazio';
			break;
		case 3:
			hint = 'Massimo 100 caratteri, consentiti caratteri alfabetici, virgola (,), apice singolo (&#39;), trattino (-), slash (/), punto (.) e spazio';
			break;
		case 5:
			hint = '2 caratteri alfabetici';
			break;
		case 6:
			hint = 'Da 3 a 8 cifre';
			break;
		case 7:
			hint = 'Da 6 e 15 caratteri, esclusi maggiore (&#62;), minore (&#60;), doppi apici (&#34;) e punto esclamativo (!)';
			break;
		case 8:
			hint = 'Indirizzo di posta elettronica valido';
			break;
	}
	Obj.innerHTML = hint;
}

//Visualizza il giorno precedente o successivo in base al valore del parametro 'diff'
function ShowDay(diff) {
	var elem = document.getElementById('diff');
	var frm = document.getElementById('frmCalendario');
	if (elem && frm) {
		elem.value = diff;
		frm.submit();
	}
}

function SetHiddenFieldsAndSend(pitch, hour, minutes, length) {
	var campo = document.getElementById('book_campo');
	var ora = document.getElementById('book_ora');
	var minuti = document.getElementById('book_minuti');
	var durata = document.getElementById('book_durata');
	var frm = document.getElementById('frmCalendario');
	if (frm && campo && ora && minuti && durata) {
		campo.value = pitch;
		ora.value = hour;
		minuti.value = minutes;
		durata.value = length;
		frm.submit();
	}
}

function SetDataAndSubmit() {
	var b_dt = document.getElementById('book_data');
	var u_dt = document.getElementById('user_data');
	if (b_dt && u_dt) {
		u_dt.value = b_dt.value;
	}
}

function DeleteIfConfirm(id, pitch, hour) {
	var campo;
	if (pitch == 'ap') {
		campo = 'all\'aperto';
	} else {
		campo = 'coperto'
	}
	if (confirm('Cancellare la prenotazione?\n\n' + hour + ', campo ' + campo)) {
		var num = document.getElementById('book_id');
		if (num) {
			num.value = id;
			SetHiddenFieldsAndSend(pitch, hour);
		}
	}
}

function CheckSectionAndSubmit(frm) {
	var msg = '';
	if (document.getElementById('section_id').value < 0) {
		msg += '\nSelezionare la sezione';
	}
	if (document.getElementById('rate_titolo').value == '') {
		msg += '\nTitolo obbligatorio';
	}
	if (isNaN(document.getElementById('rate_euro').value) || document.getElementById('rate_euro').value == '' || document.getElementById('rate_euro').value < 0) {
		msg += '\nImporto non valido';
	}
	if (document.getElementById('rate_scadenza').value != '') {
		var dateMessage = IsDate(document.getElementById('rate_scadenza').value);
		if (dateMessage.length > 0) {
			msg += ('\n' + dateMessage);
		}
	}
	if (msg.length > 0) {
		msg = 'Attenzione!\n' + msg;
		alert(msg);
	} else {
		frm.submit();
	}
}

function SetFormAndSubmit(frm, pars) {
	document.getElementById('rate_id').value = pars[0];
	document.getElementById('rate_operazione').value = pars[1];
	if (pars[1] != 'delete' || confirm('Eliminare la tariffa?')) {
		frm.submit();
	}
}



function CheckField(eForm) {
	var result = false;
	for (var i = 0; i < eForm.Campo.length; i++) {
		if (eForm.Campo[i].checked) {
			result = true;
		}
	}
	if (!result) {
		alert("ATTENZIONE:\n\per proseguire e' necessario selezionare\nil campo aperto o il campo coperto!");
	}
	return result;
}

function CheckOra(eForm) {
	var isHourSelected = false;
	for (var i = 0; i < eForm.ora.length; i++) {
		if (eForm.ora[i].checked) {
			isHourSelected = true;
			var values = eForm.ora[i].value.split(':');
			break;
		}
	}
	if (!isHourSelected) {
		alert("ATTENZIONE:\n\per proseguire e' necessario selezionare una fascia oraria");
		return false;
	}
	var ora = values[0];
	document.getElementById('book_ora').value = ora;
	var minuti = values[1];
	document.getElementById('book_minuti').value = minuti;
	var durata = document.getElementById('h_' + ora + minuti).value
	document.getElementById('book_durata').value = durata;
	return true;
}



function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}
