//FUNZIONE PER MENU TENDINA
//parametri: il contenitore del menu
//associa le classi "hafigli" agli elementi di una lista che contengono una sottolista
//associa la classe "active" agli elementi attivati dal mouseover e mostra la lista sottostante
function rollmenu(container) {
	var arr = document.getElementById(container).getElementsByTagName("li");
	var i;
	for (i=0; i<arr.length; i++) {

	 	if (arr[i].getElementsByTagName("ul")[0]) {
			arr[i].getElementsByTagName("a")[0].className += " hafigli ";		
		}

		arr[i].onmouseover = function() {
			this.getElementsByTagName("a")[0].className += " active ";
			if (this.getElementsByTagName("ul")[0]) this.getElementsByTagName("ul")[0].style.display="block";
		}
		arr[i].onmouseout = function() {
			this.getElementsByTagName("a")[0].className=this.getElementsByTagName("a")[0].className.replace("active","");			
			if (this.getElementsByTagName("ul")[0]) this.getElementsByTagName("ul")[0].style.display="none";
		}
	}
}

//SIMULA LA PSEUDO-CLASSE "FOCUS" - v.1.1 (ora può avere la propria classe, ne viene aggiunta un'altra)
function setFocus(elemento) {
	elemento.className+=" focus";
}

function unsetFocus(elemento) {
	elemento.className=elemento.className.replace('focus', '');
}

//FUNZIONE PER MOSTRARE I LINK ATTIVI
// richiamare la funzione nel tag body con onLoad e passare come parametro l'id del contenitore del menu
// non serve assegnare nessun valore particolare all'html.
// non funziona coi link indicizzabili ma tanto nel menu di navigazione non ci sono le categorie ;)

function currentlink(contenitore) {

	var stringa_get = document.location.href;		
	var menu = new Array();		
	menu = document.getElementById(contenitore).getElementsByTagName("a");
	if (stringa_get.match("php")) { //cioè se sono nel caso www.nomedominio.com/qualcosa.PHP <--
		var i;
		for (i=0; i<menu.length; i++) {			
			if (stringa_get.match(menu[i].href)) menu[i].className = "active";
		}
	} else menu[0].className = "";
}

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];}}
}


var wiN;

function openWin(nomeFile,nomeFinestra,parametri,larghezza,altezza,barre,ridimensione,centrato) {

	option="toolbar=no,width=" + larghezza + ",height=" + altezza +",resizable=" + ridimensione + ",scrollbars=" + barre
	if (centrato=='yes') {
		LeftPosition = (screen.width) ? (screen.width-larghezza)/2 : 0;
		TopPosition = (screen.height) ? (screen.height-altezza)/2 : 0;
		option=option + ",top="+TopPosition+",left="+LeftPosition
	}
	wiN = window.open(nomeFile + "?titolo=" + nomeFinestra + parametri,nomeFinestra,option);
}

 function checkFormPrivacy(dest) {
 
    obj=eval("document.contatti");
    nome=obj.nome.value;
    email=obj.email.value;
    messaggio=obj.messaggio.value;
    privacy=obj.privacy.checked;
    
    var regExEmail = new RegExp(/^[a-z0-9!#$%&\'*+\/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&\'*+\/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+(?:[A-Z]{2}|com|org|net|gov|mil|biz|info|mobi|name|aero|jobs|museum|it|eu|uk|cn|nl|ca|ch)\b$/);
    var regExDest = new RegExp(/^[0-9]+$/);

	error = false;
	msgError = "";

	if (nome == "") {
		error = true;
		msgError += "Compilare il campo 'nome'\r\n";
	}

	if (!email.match(regExEmail)) {
		error = true;
		msgError += "Compilare il campo 'email' correttamente\r\n";
	}
	
	if (messaggio == "") {
		error = true;
		msgError += "Compilare il campo 'testo'\r\n";
	}
	
	if (!privacy) {
		error = true;
		msgError += "Accettare l'informativa sulla privacy.\r\n";
	}
	
	if (!dest.match(regExDest)) {
		error = true;
		msgError += "Errore interno. Impossibile inviare il messaggio di contatto\r\n";
	}
	
	if (error) {
		alert(msgError);
	} else {
		if(confirm("Sei sicuro di voler inviare la richiesta di contatto?")) {
			obj.destmail.value = dest;
        	obj.submit(); 
        }	
	}
	
	
}

 function checkForm() {
    obj=eval("document.contatti");
    nome=obj.nome.value;
    cognome=obj.cognome.value;
    prov=obj.provincia.value;
    email=obj.email.value;
    messaggio=obj.messaggio.value;
    if ( (nome=="") || (cognome=="") || (prov==-1) || (email=="") || (messaggio=="") )
	{
        alert("ATTENZIONE\nCompletare tutti i dati obbligatori per inviare la richiesta\n\nGrazie")
    }
    else if(confirm("Sei sicuro di voler inviare la richiesta di contatto?"))
    {
        obj.submit();
    }
 }

 // Spam-proof email by deanq.com
function vmemail(who,subject,domain,body) {
  if (!who) var who = "info";
  if (!domain) var domain = "sito.com";
  if (!subject) var subject = "Richiesta Informazioni";
  if (!body) var body = " ";
  eval("location.href='mailto:" + who + "@" + domain + "?subject=" + subject + "&body=" + body + "'");
}

function vmemail2(who,subject,body) {
  if (!who) var who = "info";
  if (!subject) var subject = "Richiesta Informazioni";
  if (!body) var body = " ";
  eval("location.href='mailto:"+who+ "?subject=" + encodeURIComponent(subject) + "&body=" + body + "'");
}

function verificaUsername() {
	if (document.frmVerificaUsername.username.value=="") {
		alert("Devi inserire la tua username con la quale hai effettuato l'iscrizione");
	} else {
		document.frmVerificaUsername.submit();
	}
}

function cambiaPwd() {
	if (confirm("Sei sicuro di voler ottenere una nuova password?")) {
		document.frmCambiaPwd.submit();
	} else {
		return false;
	}
}


function ckForm() {
	// ck la form per inserire un nuovo cliente

	/**
	 *	Controllo solo Ragione sociale, Telefono, Email
	 *	gli altri controlli li lascio per dopo.
	 */

	error = false;
	msgError = "";
	fieldToFocus = "";

	form = eval("document.new_customer");

	if (form.privacy.checked) {
	
		ragSoc = form.elements["cliente[rag_soc]"].value;
		indirizzo = form.elements["cliente[indirizzo]"].value;
		citta = form.elements["cliente[comune]"].value;
        cap = form.elements["cliente[CAP]"].value;
        provincia = form.elements["cliente[nazione]"].value;
		username = form.elements["cliente[user]"].value;
		pwd1 = form.elements["cliente[pwd1]"].value;
		pwd2 = form.elements["cliente[pwd2]"].value;
		
		if ((pwd1 == "") || (pwd2 == "")) {
			error = true;
			msgError += "Compilare il campo 'Password'.\n";
			if (pwd1 == "") {
				fieldToFocus = "cliente[pwd1]";
			} else {
				fieldToFocus = "cliente[pwd2]";
			}
		} else {
			if (pwd1 != pwd2) {
				error = true;
				msgError = "Le password inserite devono coincidere.\n"+msgError;
				fieldToFocus = "cliente[pwd2]";
			} else {
				if (pwd1.length < 6) {
					error = true;
					msgError = "La password deve contenere almeno 6 caratteri.\n"+msgError;
					fieldToFocus = "cliente[pwd1]";
				}
			}
		}
		
		if (username == "") {
			error = true;
			msgError = "Compilare il campo 'Email/Username'.\n"+msgError;
			fieldToFocus = "cliente[user]";
		}		
		
        if (provincia == -1) {
			error = true;
			msgError = "Compilare il campo 'Nazione'.\n"+msgError;
			fieldToFocus = "cliente[nazione]";
		}
		
        if (cap == "") {
			error = true;
			msgError = "Compilare il campo 'CAP'.\n"+msgError;
			fieldToFocus = "cliente[CAP]";
		}

		if (citta == "") {
			error = true;
			msgError = "Compilare il campo 'Città'.\n"+msgError;
			fieldToFocus = "cliente[comune]";
		}

        if (indirizzo == "") {
			error = true;
			msgError = "Compilare il campo 'Indirizzo'.\n"+msgError;
			fieldToFocus = "cliente[indirizzo]";
		}

		if (ragSoc == "") {
			error = true;
			msgError = "Compilare il campo 'Nome e Cognome'.\n"+msgError;
			fieldToFocus = "cliente[rag_soc]";
		}

		if (!error) {
			// nn ci sn errori
			if (confirm("Confermi i dati inseriti?")) {
				document.new_customer.azione.value="salva";
				document.new_customer.submit();
			}
		} else {
			alert(msgError);
			form.elements[fieldToFocus].focus();
		}
	} else {
		alert("E' necessario accettare l'autorizzazione per il trattamento dei dati personali per procedere con l'iscrizione.")
	}
}

function cambiaInfoUtente() {

	form = eval("document.frmCambiaInfoUtente");
	error = false;
	msgError="";

	ragSoc = form.elements["rag_soc"].value;
	citta = form.elements["citta"].value;
    cap = form.elements["cap"].value;
    provincia = form.elements["provincia"].value;
	email = form.elements["email"].value;
    indirizzo = form.elements["indirizzo"].value;

	if (email == "") {
		error = true;
		msgError = "Compilare il campo 'Email/Username'.\n"+msgError;
	}
	if (citta == "") {
		error = true;
		msgError = "Compilare il campo 'Città'.\n"+msgError;
	}
    if (cap == "") {
		error = true;
		msgError = "Compilare il campo 'CAP'.\n"+msgError;
	}
    /*
    if (provincia == -1) {
		error = true;
		msgError = "Compilare il campo 'Provincia'.\n"+msgError;
	}
    
	if (telefono == "") {
		error = true;
		msgError = "Compilare il campo 'Telefono'.\n"+msgError;
	}
    */
    if (indirizzo == "") {
		error = true;
		msgError = "Compilare il campo 'Indirizzo'.\n"+msgError;
	}
	if (ragSoc == "") {
		error = true;
		msgError = "Compilare il campo 'Ragione Sociale'.\n"+msgError;
	}

	if (!error) {
		// nn ci sn errori
		if (confirm("Confermi i dati inseriti?")) {
			document.frmCambiaInfoUtente.submit();
		}
	} else {
		alert(msgError);
	}

}


function controllaPermessi() {
	if ((window.opener!==null) && (window.opener!==undefined) ) {
	} else {
		window.location.href = "http://www.blisite.net";
	}
}


function ckFormInglese() {
    // ck la form per inserire un nuovo cliente

    /**
     *    Controllo solo Ragione sociale, Telefono, Email
     *    gli altri controlli li lascio per dopo.
     */

    error = false;
    msgError = "";
    fieldToFocus = "";

    form = eval("document.new_customer");

    if (form.privacy.checked) {
    
        ragSoc = form.elements["cliente[rag_soc]"].value;
        indirizzo = form.elements["cliente[indirizzo]"].value;
        citta = form.elements["cliente[comune]"].value;
        cap = form.elements["cliente[CAP]"].value;
        provincia = form.elements["cliente[nazione]"].value;
        username = form.elements["cliente[user]"].value;
        pwd1 = form.elements["cliente[pwd1]"].value;
        pwd2 = form.elements["cliente[pwd2]"].value;
        
        if ((pwd1 == "") || (pwd2 == "")) {
            error = true;
            msgError += "Field 'Password' is mandatory.\n";
            if (pwd1 == "") {
                fieldToFocus = "cliente[pwd1]";
            } else {
                fieldToFocus = "cliente[pwd2]";
            }
        } else {
            if (pwd1 != pwd2) {
                error = true;
                msgError = "Password fields must be equal.\n"+msgError;
                fieldToFocus = "cliente[pwd2]";
            } else {
                if (pwd1.length < 6) {
                    error = true;
                    msgError = "Password field must contain at least 6 characters.\n"+msgError;
                    fieldToFocus = "cliente[pwd1]";
                }
            }
        }
        
        if (username == "") {
            error = true;
            msgError = "Field 'Email/Username' is mandatory.\n"+msgError;
            fieldToFocus = "cliente[user]";
        }        
        
        if (provincia == -1) {
            error = true;
            msgError = "Field 'Country' is mandatory.\n"+msgError;
            fieldToFocus = "cliente[nazione]";
        }
        
        if (cap == "") {
            error = true;
            msgError = "Field 'Postalcode' is mandatory.\n"+msgError;
            fieldToFocus = "cliente[CAP]";
        }

        if (citta == "") {
            error = true;
            msgError = "Field 'City' is mandatory.\n"+msgError;
            fieldToFocus = "cliente[comune]";
        }

        if (indirizzo == "") {
            error = true;
            msgError = "Field 'address' is mandatory.\n"+msgError;
            fieldToFocus = "cliente[indirizzo]";
        }

        if (ragSoc == "") {
            error = true;
            msgError = "Field 'First and last name' is mandatory.\n"+msgError;
            fieldToFocus = "cliente[rag_soc]";
        }

        if (!error) {
            // nn ci sn errori
            if (confirm("Do You confirm this information?")) {
                document.new_customer.azione.value="salva";
                document.new_customer.submit();
            }
        } else {
            alert(msgError);
            form.elements[fieldToFocus].focus();
        }
    } else {
        alert("Privacy field must be accepted to continue the registration");
    }
}