//equivalente funz. trim vb
function trim(value){
	var tmp=value;
	while (tmp.indexOf(" ",0) != -1) {
		if (tmp.indexOf(" ",0) != 0) break;
		if (tmp.indexOf(" ",0) == 0) {
			tmp = tmp.substr(1);
		}
	}
	while (tmp.indexOf(" ",tmp.length-1) != -1) {
		if (tmp.indexOf(" ",tmp.length-1) == tmp.length-1){
				tmp = tmp.substr(0,tmp.length-1);
		}
	}
	return tmp;
}


//rest. true se il value è nullo
function isNull(item) {
	if (trim(item) == "") return true; 
	return false;
}

/*//rest. true se il value rispetta la lunghezza
function ValidLength(item, len) {
	return (item.length >= len);
}*/

function isAlfaNumeric(item){
	var strRicerca = new RegExp("[^0-9a-zA-Z\+-_./' ]","g");
	var strRicerca2 = new RegExp("[<>=;:?^\]","g");
	var strRicerca3;
	strRicerca3= "\\";
	if ((item.search(strRicerca) != -1)||(item.search(strRicerca2)!= -1)||(item.indexOf(strRicerca3,1)!= -1))	return false;
	return true;
}


function isSurname(item){
	var strRicerca = new RegExp("[^a-zA-Z\'èéòàìù ]","g");
	var strRicerca2 = new RegExp("[<>=.;:?/^\]","g");
	var strRicerca3;
	strRicerca3= "\\";
	if ((item.search(strRicerca) != -1)||(item.search(strRicerca2)!= -1)||(item.indexOf(strRicerca3,1)!= -1))	return false;
	return true;
}

function isIndirizzo(item){
	var strRicerca = new RegExp("[^0-9a-zA-Z\+-_'èéòàìù./  ]","g");
	var strRicerca2 = new RegExp("[<>=;:?^\]","g");
	var strRicerca3;
	strRicerca3= "\\";
	if ((item.search(strRicerca) != -1)||(item.search(strRicerca2)!= -1)||(item.indexOf(strRicerca3,1)!= -1))	return false;
	return true;
}


function isName(item){
	var strRicerca = new RegExp("[^a-zA-Z\'èéòàìù/ ]","g");
	var strRicerca2 = new RegExp("[<>=.;:?/^\]","g");
	var strRicerca3;
	strRicerca3= "\\";
	if ((item.search(strRicerca) != -1)||(item.search(strRicerca2)!= -1)||(item.indexOf(strRicerca3,1)!= -1))	return false;
	return true;
}



// VERIFICA URL
function isURL(item){
	var strTmp = new RegExp("HTTP:\/\/([a-zA-Z\.0-9]{2,})\. ([a-zA-Z\.0-9]{2,})");
	if(!strTmp.test(item))  return false;
	return true;
}

// VERIFICA TEL/FAX
function isTelFax(item){
	if (isNaN(item) == true) return false; 
	return true;
}




// VERIFICA Partita IVA
function isPIVA(what)
{
if(what.length>0)
{
var i=new RegExp("[0-9]{11}");
if(!i.test(what)) { alert("Il campo PARTITA IVA non è valido."); }
}
return true;
}


//rest. true se il value è numerico
function isNumber(item) {
	if (isNaN(item) == true) return false; 
	return true;
}


//rest. true se il value è numerico
function isCap(item) {
	if ( item.length != 5) return false; 
	if (!isNumber(item)) return false; 
	return true;
}

//rest. true se il value è un ind. e-mail valido,
function isEmail(item) {
	var pos; var pos1;
	var strTmp;
	if (item.length < 6) return false;
	if (item.indexOf ('@', 0) == -1) return false;
	pos = item.indexOf('@');
	if (item.indexOf ('.', 0) < 1) return false;
	if (item.indexOf ('@', pos + 1) >= 0) return false;
	strTmp =  new RegExp("[^0-9a-zA-Z\+-_]","g");//caratteri possibili
	if(strTmp.test(item) == true)   return false;
	pos1 = item.indexOf('.');
	strTmp = item.substring(0,pos);//nome
	if (strTmp.length < 2) return false;
	if (item.substring(pos + 1).length > 63) return false;//max cons. x dominio.est
	strTmp = item.substring(pos + 1, pos1);//provider
	if (strTmp.length < 2) return false;
	strTmp = item.substring(pos1+1);//estensione
	if (strTmp.length < 2) return false;
	return true;
}


//rest. true se il value è una data valida
function isDate(gg, mm, aaaa){
	var inizioSecolo;
	var DayCompare;
	var month = new Array();
	//day x month
	month[1] = 31;//gen
	month[2] = 28;//feb
	month[3] = 31;//mar
	month[4] = 30;//apr
	month[5] = 31;//mag
	month[6] = 30;//giu
	month[7] = 31;//lug
	month[8] = 31;//ago
	month[9] = 30;//sett
	month[10] = 31;//ott
	month[11] = 30;//nov
	month[12] = 31;//dic
	
	//formattazione nel caso il num di cifre è min.
	if ((isNaN(gg))||(isNaN(mm))||(isNaN(aaaa))) return false;
	if (gg.length == 1) gg = "0" + gg;
	if (mm.length == 1) mm = "0" + mm;
	switch (aaaa.length) {//cifre anno
		case 1:
			aaaa = "200" + aaaa;
			break;
		case 2:
			if (parseInt(aaaa) < 50)
				aaaa = "20" + aaaa;
			else
				aaaa = "19" + aaaa;
			break;
		case 3:
			if (parseInt(aaaa) < 50)
				aaaa = "2" + aaaa;
			else
				aaaa = "1" + aaaa;
			break;
	}
	//fine formattazione
	
	inizioSecolo=aaaa.substr(aaaa.length-2,2);
	if (inizioSecolo=="00")
		inizioSecolo=true
	else
		inizioSecolo=false
		
	if ((gg.length != 2)||(mm.length != 2)||(aaaa.length != 4)) return false;
	
	//controlli num. :
	gg = parseInt(gg); mm = parseInt(mm); aaaa = parseInt(aaaa);
	if ((mm > 12)||(mm <= 0)) return false;

	DayCompare = month[mm];
	//contr. bisestile
	if (mm == 2) { //se il mese è febbraio
		if (inizioSecolo) { //se è l'anno di inizio secolo
			if (((aaaa % 400) == 0) && (mm == 2))	DayCompare = 29;
		}else{
			if ((aaaa % 4) == 0)	DayCompare = 29; //anno bisestile
		}
	}//fine bisestile
	if ((gg > DayCompare)||(gg <= 0)) return false;//se il giorno supera il max consent. x mese
	if (aaaa <= 0) return false;
	if ((aaaa < 1910) || (aaaa > 2070)) return false;//intervallo consentito x l'anno
	//alert("gg: " + gg);	alert("mm: " + mm);	alert("aaaa: " + aaaa);
	return true;
}



// VERIFICA CF
function isCF(what)
{
   var i=new RegExp("([a-zA-Z0-9]{16})");
   if(!i.test(what)) return false;
   return true;
}


// VERIFICA Numero carta di credito
function isCCNumber(what)
{
   var i=new RegExp("([0-9]{16,20})");
   if(!i.test(what)) return false;
   return true;
}





// VERIFICA Scadenza carta di credito
function isCCExpiration(what)
{
   var i=new RegExp("([0-9]{1,2})/([0-9]{4})$");
   if(i.test(what))
   {
	datePart=what.split("/");
	mese=(datePart[0]>=1) && (datePart[0]<=12);
	anno=(datePart[1]>=1900) && (datePart[1]<=9999);

	if(!mese || !anno) { alert("Il campo SCADENZA CARTA non è valido."); return false }
	
   }  
   else
   {
	alert("Il campo SCADENZA CARTA non è valido"); return false
   }
   return true;
}

  //  FINESTRA CARICAMENTO:ASP
  
 //  var popCar=0;	
//  function caricamento()
// {
 //   if(popCar)
//    {
 //   if(!popCar.closed) popCar.close();
//    }
//        popCar = open('caricamento.asp','popCar', 'toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbar=no,resizable=no,copyhistory=yes,width=220,height=120,left=200,top=200');
//       }	
