function StatoParagrafo(sDivId)
{
    var oDiv = document.getElementById(sDivId)
    
    if (oDiv.style.display == "none")
    {
            oDiv.style.display = "block";
    }
    else
    {
            oDiv.style.display = "none";
    } 
	window.location.hash="privacy";
}

function StatoParagrafo2(sDivId)
{
	var oDiv = document.getElementById(sDivId);
    oDiv.style.display = "block";
	window.location.hash="privacy";
}




function MaxCaratteri(Object, MaxLen)
{
	
      return (Object.value.length <= MaxLen);
}


function verificaPIVA()
{
	cod = document.nletter.piva.value;
	document.nletter.piva.focus();

	if( cod == '' )
		err = "hai lasciato in bianco il campo!\n";
	else if( cod.length == 11 )
		err = ControllaPIVA(cod);
	else
		err = "Il codice introdotto non è valido:\n\n" +
			"  - una partita IVA deve essere lunga 11 caratteri.\n";

	if( err > '' )
		alert("VALORE ERRATO\n\n" + err + "\nCorreggi e riprova!");
//	else
//		alert("Il codice è valido.");
}


function ControllaPIVA(pi)
{
	if( pi == '' )  return '';
	if( pi.length != 11 )
		return "La lunghezza della partita IVA non è\n" +
			"corretta: la partita IVA dovrebbe essere lunga\n" +
			"esattamente 11 caratteri.\n";
	validi = "0123456789";
	for( i = 0; i < 11; i++ ){
		if( validi.indexOf( pi.charAt(i) ) == -1 )
			return "La partita IVA contiene un carattere non valido `" +
				pi.charAt(i) + "'.\nI caratteri validi sono le cifre.\n";
	}
	s = 0;
	for( i = 0; i <= 9; i += 2 )
		s += pi.charCodeAt(i) - '0'.charCodeAt(0);
	for( i = 1; i <= 9; i += 2 ){
		c = 2*( pi.charCodeAt(i) - '0'.charCodeAt(0) );
		if( c > 9 )  c = c - 9;
		s += c;
	}
	if( ( 10 - s%10 )%10 != pi.charCodeAt(10) - '0'.charCodeAt(0) )
		return "La partita IVA non è valida:\n" +
			"il codice di controllo non corrisponde.\n";
	return '';
}







function verificaCF()
{
	cod2 = document.nletter.cod_fiscale.value;
	document.nletter.cod_fiscale.focus();
	if( cod2 == '' )
		err2 = "hai lasciato in bianco il campo!\n";
	else if( cod2.length == 16 )
		err2 = ControllaCF(cod2);
	else
		err2 = "Il codice introdotto non è valido:\n\n" +
			"  - un codice fiscale deve essere lungo 16 caratteri;\n"

	if( err2 > '' )
		alert("VALORE ERRATO\n\n" + err2 + "\nCorreggi e riprova!");
	//else
	//	alert("Il codice è valido.");
}


function ControllaCF(cf)
{
	var validi, i, s, set1, set2, setpari, setdisp;
	if( cf == '' )  return '';
	cf = cf.toUpperCase();
	if( cf.length != 16 )
		return "La lunghezza del codice fiscale non è\n"
		+"corretta: il codice fiscale dovrebbe essere lungo\n"
		+"esattamente 16 caratteri.\n";
	validi = "ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
	for( i = 0; i < 16; i++ ){
		if( validi.indexOf( cf.charAt(i) ) == -1 )
			return "Il codice fiscale contiene un carattere non valido `" +
				cf.charAt(i) +
				"'.\nI caratteri validi sono le lettere e le cifre.\n";
	}
	set1 = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ";
	set2 = "ABCDEFGHIJABCDEFGHIJKLMNOPQRSTUVWXYZ";
	setpari = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
	setdisp = "BAKPLCQDREVOSFTGUHMINJWZYX";
	s = 0;
	for( i = 1; i <= 13; i += 2 )
		s += setpari.indexOf( set2.charAt( set1.indexOf( cf.charAt(i) )));
	for( i = 0; i <= 14; i += 2 )
		s += setdisp.indexOf( set2.charAt( set1.indexOf( cf.charAt(i) )));
	if( s%26 != cf.charCodeAt(15)-'A'.charCodeAt(0) )
		return "Il codice fiscale non è corretto:\n"+
			"il codice di controllo non corrisponde.\n";
	return "";
}



function verificaIBAN()
{
	cod3 = document.nletter.iban.value;
	cod3 =cod3.replace(/\s/g,"");
	document.nletter.iban.focus();

	if( cod3 == '' ) {
		err3 = "hai lasciato in bianco il campo!\n";
	}
	else if( cod3.length == 27 ) {
		err3 = ControllaIBAN(cod3);
	}
	else {
		err3 = "Il codice introdotto non è valido:\n\n" +
			"  - il codice IBAN deve essere lungo 27 caratteri.\n";
	}
	if( err3 > '' ) {
		alert("VALORE ERRATO\n\n" + err3 + "\nCorreggi e riprova!");
		document.nletter.iban.focus();
		return false;
	}
}


function ControllaIBAN(ib)
{
	var iban,validi3, u, parte1;
	var iban = ib.replace(/\s/g,"");
	//document.nletter.iban.value = iban;
	if( iban == '' )  return '';
	iban = iban.toUpperCase();
	if( iban.length != 27 ) {
		return "La lunghezza del codice IBAN non è\n"
		+"corretta: il codice IBAN dovrebbe essere lungo\n"
		+"esattamente 27 caratteri.\n";
		document.nletter.iban.focus();
		return false;
	}
	validi3 = "ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
	for( u = 0; u < 27; u++ ){
		if( validi3.indexOf( iban.charAt(u) ) == -1 ) {
			return "Il codice IBAN contiene un carattere non valido '" +
				iban.charAt(u) +
				"'.\nI caratteri validi sono le lettere e le cifre.\n";
				document.nletter.iban.focus();
		return false;
		}
	}
	
	
	/*parte1 = iban.slice(0,2) 
	//parte2 = iban.substr(15,12)

	var espressione = /[a-zA-Z]/; // solo alfabetico
	if(!espressione.test(parte1))
		return "Il codice IBAN non è corretto:\n"+
		"il codice di controllo non corrisponde.\n";
	//return "";*/
}
