

//funzione di controllo validit della mail
function controllomail(mail){

var controllo=1

var espressione = /^[_a-z0-9+-]+(\.[_a-z0-9+-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)+$/;	

if (!espressione.test(mail))	
	{	    	
		controllo=0;
	}

	if (InStr(mail,"'")>0)	{controllo=0;}
	if (InStr(mail,"%")>0)	{controllo=0;}
	if (InStr(mail,"&")>0)	{controllo=0;}
	if (InStr(mail,"/")>0)	{controllo=0;}
	if (InStr(mail,")")>0)	{controllo=0;}
	if (InStr(mail,"(")>0)	{controllo=0;}
	if (InStr(mail,"!")>0)	{controllo=0;}
	if (InStr(mail,"£")>0)	{controllo=0;}
	if (InStr(mail,"$")>0)	{controllo=0;}
	if (InStr(mail,"?")>0)	{controllo=0;}
	if (InStr(mail,"^")>0)	{controllo=0;}
	if (InStr(mail,"°")>0)	{controllo=0;}
	if (InStr(mail,"#")>0)	{controllo=0;}
	if (InStr(mail,"§")>0)	{controllo=0;}
	if (InStr(mail,"ç")>0)	{controllo=0;}
	if (InStr(mail,"|")>0)	{controllo=0;}
	if (InStr(mail,"*")>0)	{controllo=0;}
	if (InStr(mail,"{")>0)	{controllo=0;}
	if (InStr(mail,"}")>0)	{controllo=0;}
	if (InStr(mail,":")>0)	{controllo=0;}
	if (InStr(mail,";")>0)	{controllo=0;}
	if (InStr(mail,"<")>0)	{controllo=0;}
	if (InStr(mail,">")>0)	{controllo=0;}

return controllo
}

function Len(valore)
		{
			if (valore== null)
				return (false);
    
			return String(valore).length;
		}

function Mid(String, Start, Length)
{
    if (String == null)
        return (false);
    
    if (Start > String.length)
        return '';
    
    if (Length == null || Length.length == 0)
        return (false);
    
    return String.substr((Start - 1), Length);
}


function InStr(String1, String2)
{
    var a = 0;
    
    if (String1 == null || String2 == null)
        return (false);
    
    String1 = String1.toLowerCase();
    String2 = String2.toLowerCase();
    
    a = String1.indexOf(String2);
    if (a == -1)
        return 0;
    else
        return a + 1;
}
function controllo_data(stringa){	
	var espressione = /^[0-9]{2}\/[0-9]{2}\/[0-9]{4}$/;	
	if (!espressione.test(stringa))	{	    
		return false;	
	}
	else
	{		
		anno = parseInt(stringa.substr(6),10);		
		mese = parseInt(stringa.substr(3, 2),10);		
		giorno = parseInt(stringa.substr(0, 2),10);				
		var data=new Date(anno, mese-1, giorno);		
		if(data.getFullYear()==anno && data.getMonth()+1==mese && data.getDate()==giorno){
			return true;		
		}else{
			return false;
		}
	}
}
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;
   
   }

function ControllaCF(cf)
{
	var validi, i, s, set1, set2, setpari, setdisp;
	if( cf == '' )  return false;
	cf = cf.toUpperCase();
	if( cf.length != 16 )
		return false
	validi = "ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
	for( i = 0; i < 16; i++ ){
		if( validi.indexOf( cf.charAt(i) ) == -1 )
			return false
	}
	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 false
	return true;
}
//non serve al mom ma la metto lo stesso ;) ste
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 '';
}
