function BOB_checkLengthItem(campo, lunghezza, nome, formo) {
	
	var sValue;	
	if (formo == null) {formo = "bob_formo"}	
	sValue = document.forms[formo].elements[campo].value;
	if (sValue.length > lunghezza) {
		alert ("La lunghezza del campo '" + nome + "' dev'essere minore di " + lunghezza + " caratteri.\n\nTu ne hai digitati " + sValue.length);
		document.forms[formo].elements[campo].focus();
		return false
	} else {
		return true
	}
}

function BOB_RegExpTest(patrn, strng) {
	var regEx = new RegExp(patrn);
	//alert("patrn: " + patrn + "\n strng: " + strng + "\n esito: " + regEx.test(strng));
	return regEx.test(strng)
}

function BOB_checkForm(lingua, formo) {
	
	var i, sName;
	
	// 22/03/2005 - controllo sicurezza input (sono nell'area riservata?)
	var isAR = false;
	var percorso = document.URL.split("/");	
	for (var loop=0; loop < percorso.length; loop++) { if (percorso[loop] == "areariservata") {isAR = true;break};}
	
	if (formo == null) {formo = "bob_formo"}	
	for (i=0;i < document.forms[formo].length; i++) {
		sName = document.forms[formo].elements[i].name;
		sValue = document.forms[formo].elements[i].value;
		
		// 22/03/2005 - controllo sicurezza input
		if ((sValue != "") && (!isAR)) {
			if ((sValue.indexOf('<') > -1)) {
				alert("Carattere '<' nel campo '" + sName + "' non valido!");
				document.forms[formo].elements[i].focus();
				break
			}
			if ((sValue.indexOf('>') > -1)) {
				alert("Carattere '>' nel campo '" + sName + "' non valido!");
				document.forms[formo].elements[i].focus();
				break
			}
		}
		
		if (sName.charAt(0) != "_") {
			//alert("sName: " + sName)
			
			if (sValue == "") {			
				if (lingua == "ita") alert ("Il campo  [ " + sName + " ]  è obbligatorio!")
				else if (lingua == "spa") alert ("Todas las casillas son obligatorias!")
				else if (lingua == "ing") alert ("Please compile the [ " + sName + " ]  obligatory field!")
				else if (lingua == "ted") alert ("Alle Einträge sind obligatorisch!")
				else if (lingua == "fra") alert ("Tous les champs sont obligatoires!")
				else if (lingua == "por") alert ("Please compile the [ " + sName + " ]  obligatory field!")
				else alert ("...");
				
				document.forms[formo].elements[i].focus();
				
				break
			} else {
				pt = "^([a-zA-Z0-9]{1,})([\\w\-])*([\.])*([\\w\-])*([a-zA-Z0-9]{1,})([\@])([a-zA-Z0-9]{1,})([\\w\-])*([\.])*([\\w\-])*([a-zA-Z0-9]{1,})([\.])([a-zA-Z]{2,})$";
				if (((sName == "email") || (sName == "email_mittente") || (sName == "email_destinatario"))
					&& (!BOB_RegExpTest(pt, sValue))) { 
				/*if (((sName == "email") || (sName == "email_mittente") || (sName == "email_destinatario"))
				 && ((sValue.indexOf("@")==-1) || (sValue.indexOf(".")==-1))
				 ) {*/
					if (lingua == "ita") alert ("L'email inserita non è valida!")
					else if (lingua == "spa") alert ("La dirección e-mail no es correcta!")
					else if (lingua == "ing") alert ("Please insert a valid e-mail address!")
					else if (lingua == "ted") alert ("Please insert a valid e-mail address!")
					else if (lingua == "fra") alert ("Please insert a valid e-mail address!")
					else if (lingua == "por") alert ("Please insert a valid e-mail address!")
					else alert ("...");
					
					document.forms[formo].elements[i].focus();
					
					break
				}
			}
		}
	}

	if (i == document.forms[formo].length) {
		return true
	} else {
		return false
	}
}


function BOB_submit(lingua, formo) {
	if (formo == null) {formo = "bob_formo"}
	if (BOB_checkForm(lingua, formo)) {
		document.forms[formo].submit();
	}
}

function BOB_saveformo(tabella, lingua) {
	testo = "?";
	if (lingua == "ita") {testo = "Sei sicuro di voler aggiornare quest" + tabella + "?"}

	if (confirm(testo)) {
		if (BOB_checkForm(lingua)) {
			document.bob_formo.submit()
		}
	}
}

function BOB_delart(tabella, lingua) {
	testo1 = "?";
	testo2 = "!";
	if (lingua == "ita") {
		testo1 = "Sei sicuro di voler eliminare quest" + tabella + "?"
		testo2 = "Nessun" + tabella + " selezionata!"
	}

	if (confirm(testo1)) {
		if (document.bob_formo._ID.value == "") {
			alert (testo2);
		} else {
			document.bob_formo._Cosa.value = "Del";
			document.bob_formo.submit()
		}
	}
}

function BOB_openBrWindow(theURL,winName,features) {
  mywin = window.open(theURL,winName,features);
  mywin.focus();
}

function BOB_openPassaparola() {
	BOB_openBrWindow('../portale/passaparola.asp','pspwin','scrollbars=no,width=450,height=360');
}

function BOB_openMailing(a) {
	var s = document.URL;
	var aS = s.split("/");
	var w = "";
	i = -1;
	do {
		i += 1;
		w += aS[i] + "/";
	}
	while ((aS[i] != "portale") && (aS[i] != "messaggero") && (aS[i] != "messaggero_emi"))
	BOB_openBrWindow(w + '../portale/mailing.asp?a=' + a,'malwin','scrollbars=no,width=400,height=300');
}

function BOB_setDiesis() {
	if (document.bob_formo.link_cartella.value == "#") {document.bob_formo.link.value = "top"}
}

function BOB_setInternalPage(i,t) {
	document.bob_formo.link_cartella.value = "/portale/";	
	document.bob_formo.link.value = "pagina.asp?ID=" + i + "&T=" + t;
}

function BOB_setForum() {
	document.bob_formo.link_cartella.value = "/portale/";	
	document.bob_formo.link.value = "forum.asp?ID=" + document.bob_formo._forum.value
}

function BOB_openAlmanacco(i, id) {
	if (id == null) {id = ""}
	if (i == 1) { // santo
		san=window.open('almanacco/sagiorno.asp?ID=' + id,'sanwin','scrollbars=yes,top=0,left=0,width=360,height=500');
		san.focus();
	}
	if (i == 2) { // aforisma
		afor=window.open('almanacco/afgiorno.asp?ID=' + id,'afowin','scrollbars=yes,top=0,left=0,width=360,height=500');
		afor.focus();
	}
	if (i == 3) { // calendario
		cal=window.open('almanacco/caliturgico.asp?ID=' + id,'calwin','scrollbars=yes,top=0,left=0,width=360,height=500');
		cal.focus();
	}
}

function IsNumeric(sText)
{
	var ValidChars = "0123456789._";
	var IsNumber=true;
	var Char;
	
	for (i = 0; i < sText.length && IsNumber == true; i++) {
		Char = sText.charAt(i); 
		if (ValidChars.indexOf(Char) == -1) {IsNumber = false;}
	}
	
	return IsNumber;
}

