 function loader()		
	 {window.status = "";}

 function terminate()	
	 {window.close();}

 function indietro()
	 {history.back();}

 function menu()
	 {
	   document.MyForm.action="page1a.asp";
	   document.MyForm.submit();
	 }

 function vis()
	 {
	   document.MyForm.action="cercaab.asp";
	   document.MyForm.submit();
	 }
 
 function vis1()
	 {
	   document.MyForm.action="cerca1.asp";
	   document.MyForm.submit();
	 }
 
  function validate()
	 {
	   document.MyForm.action="validate.asp";
	   document.MyForm.submit();
	 }

 function ins()
	 {
	   document.MyForm.action="inser1.asp";
	   document.MyForm.submit();
	 }


 function ins2()
	 {
	   document.MyForm.action="inser2.asp";
	   document.MyForm.submit();
	 }
 
 function VisModif(idu,idf)
	 {
//	   document.MyForm.ut.value=us;
	   document.MyForm.idu.value=idu;
	   document.MyForm.idf.value=idf;
	   document.MyForm.action="modfoto2.asp";
	   document.MyForm.submit();
	 }

 function modif(cod_app)
	 {
	   document.MyForm.Cod_app.value=cod_app;
	   document.MyForm.action="mod.asp";
	   document.MyForm.submit();
	 }

 function main_menu()
	 {
	   document.MyForm.action="page1a.asp";
	   document.MyForm.submit();
	 }
  
 function lista()
	 {
	   document.MyForm.action="cercaab.asp";
	   document.MyForm.submit();
	 }
 
 function salvarisorsa()
	 {
	   document.MyForm.action="function.asp?method=addRisorsa";
	   document.MyForm.submit();
	 }

 function gest_cliris()
	 {
	   document.MyForm.action="g_anagr.asp";
	   document.MyForm.submit();
	 }

//Restituisce una stringa contenente la rappresentazione di nVal
//con i separatori delle migliaia passato in cSeparator
//
function putSeparators(nVal, cSeparator){
var ValString;

	ValString = "" + parseInt(nVal + 0.4999, 10);
	if (ValString.length < 4) return ValString;
	Modulo = ValString.length % 3;
	Punti = (ValString.length - Modulo) / 3;
	Valore = ValString.substring(0, Modulo);
	j = Modulo;
	
	for (i1 = 1; i1 <= Punti; i1++) {
		if (Valore.length == 0)
			Valore = ValString.substring(j, j + 3);
		else
			Valore = Valore + cSeparator + ValString.substring(j, j + 3);
		
		j = j + 3;
	}
	
	return Valore;
}
//
//Restituisce una stringa contenente la rappresentazione di cString senza gli
//eventuali spazi a sinistra
//
function lTrim(cString){
  var i = 0;

  while (i < cString.length && cString.charAt(i) == " "){
    i++;
  }

  if (i < cString.length){
    cString = cString.substring(i);
  }else{
    cString = "";
  }

  return cString;
}

//
//Restituisce una stringa contenente la rappresentazione di cString senza gli
//eventuali spazi a destra
//
function rTrim(cString){
  var i = cString.length - 1;

  while (i >= 0 && cString.charAt(i) == " "){
    i--;
  }

  if (i >= 0){
    cString = cString.substring(0, i + 1);
  }else{
    cString = "";
  }

  return cString;
}

//
//Restituisce una stringa contenente la rappresentazione di cString senza gli
//eventuali spazi a sinistra e a destra
//
function allTrim(cString){
  return lTrim(rTrim(cString));
}

//
//Restituisce una stringa aggiungendo a destra di cString un numero di caratteri di tipo
//charToFill fino a raggiungere la lunghezza nLength
//
function rPad(cString, nLength, charToFill){
  var cSpace = "";

  for (var i = 0; i < nLength - cString.length; i++){
    cSpace += charToFill;
  }

  cString = cString + cSpace;

  return cString.substring(0, nLength);
}

//
//Restituisce una stringa aggiungendo a sinistra di cString un numero di caratteri di tipo
//charToFill fino a raggiungere la lunghezza nLength
//
function lPad(cString, nLength, charToFill){
  if (cString.length > nLength){
    cString = cString.substring(0, nLength);
  }else{
    var cSpace = "";

    for (var i = 0; i < nLength - cString.length; i++){
      cSpace += charToFill;
    }

    cString = cSpace + cString;
  }
  return cString;
}

function isNumeric(sNumber){
  return !isNaN(sNumber)
}

function isDate(pYear, pMonth, pDay){
 
if (!isNumeric(pYear) || !isNumeric(pMonth) || !isNumeric(pDay)) return false;
 var aDays = new Array(31,28,31,30,31,30,31,31,30,31,30,31);
 var nYear = parseInt(pYear, 10);
 var nMonth = parseInt(pMonth, 10);
 var nDay = parseInt(pDay, 10);
 var zero="0";
// |INIZIO |controllo data maggiore o uguale di quella corrente.
 var oggi = new Date();
 var fmese = '0';
 var fgiorno = '0';
fmese=(oggi.getMonth() + 1);
if (fmese<'10') fmese = zero + fmese;
fgiorno=(oggi.getDate());
if (fgiorno<'10') fgiorno = zero + fgiorno;
var today = "" + oggi.getYear() + fmese + fgiorno;
// var today = "" + oggi.getYear() + (oggi.getMonth() + 1) + oggi.getDate();
// var mese = oggi.getMonth() +1;
// var giorno = oggi.getDate();
 
/* if	(nYear < anno )		return false;
 if	(nMonth < mese )	return false;
 if	(nDay < giorno)		return false;
*/
 if (pYear + pMonth + pDay < today) return false;
  
// |FINE   |controllo data maggiore o uguale di quella corrente.  	 
 if (nYear < 1900 || nYear >= 2500 ) return false;
 
 if (((nYear % 4 == 0) && (nYear % 100 != 0)) || (nYear % 400 == 0)){
   aDays[1]=29;
 } 

 if (nMonth < 1 || nMonth > 12) return false;

 if (nDay < 1 || nDay > aDays[nMonth-1]) return false; 

 return true;
}

// IsDateGeneric Utilizzata in AProgetto, 
// è identica a sopra solo che è stato eliminato il controllo della data d'inserimento (>=) a quella odierna --<

function isDateGeneric(pYear, pMonth, pDay){
 
if (!isNumeric(pYear) || !isNumeric(pMonth) || !isNumeric(pDay)) return false;
 var aDays = new Array(31,28,31,30,31,30,31,31,30,31,30,31);
 var nYear = parseInt(pYear, 10);
 var nMonth = parseInt(pMonth, 10);
 var nDay = parseInt(pDay, 10);
 var zero="0";
// |INIZIO |controllo data maggiore o uguale di quella corrente.
 var oggi = new Date();
 var fmese = '0';
 var fgiorno = '0';
fmese=(oggi.getMonth() + 1);
if (fmese<'10') fmese = zero + fmese;
fgiorno=(oggi.getDate());
if (fgiorno<'10') fgiorno = zero + fgiorno;
var today = "" + oggi.getYear() + fmese + fgiorno;
// var today = "" + oggi.getYear() + (oggi.getMonth() + 1) + oggi.getDate();
// var mese = oggi.getMonth() +1;
// var giorno = oggi.getDate();
 
/* if	(nYear < anno )		return false;
 if	(nMonth < mese )	return false;
 if	(nDay < giorno)		return false;
*/
  
// |FINE   |controllo data maggiore o uguale di quella corrente.  	 
 if (nYear < 1900 || nYear >= 2500 ) return false;
 
 if (((nYear % 4 == 0) && (nYear % 100 != 0)) || (nYear % 400 == 0)){
   aDays[1]=29;
 } 

 if (nMonth < 1 || nMonth > 12) return false;

 if (nDay < 1 || nDay > aDays[nMonth-1]) return false; 

 return true;
}

//Funzione Controllo Data yyyy-mm-dd opp yyyy/mm/dd

function ctrlDate(dataRif){
   //recupero anno
   var year = dataRif.value.substring(0,4);
   
   //recupero mese
   var month = dataRif.value.substring(5,7);
   
   //recupero giorno
   var day = dataRif.value.substring(8,10);
   
   //richiamo funzione validita della data
   if (!isDate(year, month, day)) {
     alert('Data errata');
     dataRif.focus();
   }else{
     dataRif.value = lPad("" + parseInt(year, 10), 4, "0") + "/" + lPad("" + parseInt(month, 10), 2, "0") + "/" + lPad("" + parseInt(day, 10), 2, "0") ;
   }
}
function removeElement(cboCombo, index){
  for (i = index; i < (cboCombo.options.length) - 1; i++){
    cboCombo.options(i).value = cboCombo.options(i + 1).value;
    cboCombo.options(i).text = cboCombo.options(i + 1).text;
  }
  
  cboCombo.options.length--;
}

function addElement(cboCombo, text, value){
  cboCombo.options.length++;
  cboCombo.options(cboCombo.options.length - 1).value = value;
  cboCombo.options(cboCombo.options.length - 1).text = text;
}

// Telefono ----<
function IsTelephone(phone)
{
	if (((index_a=phone.indexOf("+",0))!=(-1)) && (index_a!=0))
		return false;
	for (index_b=0;index_b<phone.length;index_b++)
	{
		if (	(	(phone.charCodeAt(index_b) < "0".charCodeAt(0))
				||	(phone.charCodeAt(index_b) > "9".charCodeAt(0))
				)
				&&	(phone.charAt(index_b)!=".")
				&&	(phone.charAt(index_b)!="+")
				&&	(phone.charAt(index_b)!="-")//Sergio
			)
			return false;
		}
	return true;
}

// Email ----<
//function verEmail(stringa) {
//alert("pippo1")
//if (!stringa) return false;
//var iChars = "*|,\"<:>[]{}`\';()&$#%";
//alert("pippo2")
//for (var i = 0; i < stringa.length; i++) {
//if (iChars.indexOf(stringa.charAt(i)) != -1)
//return false;
//}
//if (stringa.search(/^\w+((-\w+)|(\.\w+))*\@[A-Za-z0-9]+((\.|-)[A-Za-z0-9]+)*\.[A-Za-z0-9]+$/) != -1)
//return false;
//alert("pippo3")
//} 


// Nome ----<
function nome(stringa) {
	strcode = new String(lTrim(stringa));

	if (strcode.length == "") return false;
	if (!stringa) return false;
	var iChars = "*|,\"<:>[]{}`\';()@&$#%";

	for (var i = 0; i < stringa.length; i++) {
	  if (iChars.indexOf(stringa.charAt(i)) != -1){
		return false;
	  }
	}
	return true;
}
// Numeric2 ----<
function Numeric2(num)
{
	if (((index_a=num.indexOf("+",0))!=(-1)) && (index_a!=0))
		return false;
	for (index_b=0;index_b<num.length;index_b++)
	{
		if (	(	(num.charCodeAt(index_b) < "0".charCodeAt(0))
				||	(num.charCodeAt(index_b) > "9".charCodeAt(0))
				)
				&&	(num.charAt(index_b)!="/")
//				&&	(num.charAt(index_b)!="+")
//				&&	(num.charAt(index_b)!="-")
			)
			return false;
		}
	return true;
}

// Numeric ----<
function Numeric(num)
{
	if (num.length == "") return false;
	for (index_b=0;index_b<num.length;index_b++)
	{
		if (	(	(num.charCodeAt(index_b) < "0".charCodeAt(0))
				||	(num.charCodeAt(index_b) > "9".charCodeAt(0))
				)
			)
			return false;
		}
	return true;
}


// INIZIO Email ----<
function emailCheck (emailStr) {

var checkTLD=1;
	var knownDomsPat=/^(com|net|org|edu|int|mil|gov|arpa|biz|aero|name|coop|info|pro|museum)$/;
	var emailPat=/^(.+)@(.+)$/;
	var specialChars="\\(\\)><@,;:\\\\\\\"\\.\\[\\]";
	var validChars="\[^\\s" + specialChars + "\]";
	var quotedUser="(\"[^\"]*\")";
	var ipDomainPat=/^\[(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})\]$/;
	var atom=validChars + '+';
	var word="(" + atom + "|" + quotedUser + ")";
	var userPat=new RegExp("^" + word + "(\\." + word + ")*$");
	var domainPat=new RegExp("^" + atom + "(\\." + atom +")*$");
	var matchArray=emailStr.match(emailPat);

if (matchArray==null) {

//	alert("L'indirizzo Email non è corretto.");
	return false;
	}

	var user=matchArray[1];
	var domain=matchArray[2];

for (i=0; i<user.length; i++) {
if (user.charCodeAt(i)>127) {
//	alert("Lo username contiene caratteri non validi.");
	return false;
	   }
	}
for (i=0; i<domain.length; i++) {
if (domain.charCodeAt(i)>127) {
//	alert("Il dominio contiene caratteri non validi.");
	return false;
	   }
	}

if (user.match(userPat)==null) {
//	alert("Lo username potrebbe non essere valido.");
	return false;
	}

	var IPArray=domain.match(ipDomainPat);
if (IPArray!=null) {

for (var i=1;i<=4;i++) {
if (IPArray[i]>255) {
//	alert("IP di destinazione non valido.");
	return false;
	   }
	}
return true;
}

	var atomPat=new RegExp("^" + atom + "$");
	var domArr=domain.split(".");
	var len=domArr.length;
for (i=0;i<len;i++) {
if (domArr[i].search(atomPat)==-1) {
//	alert("Il nome dominio potrebbe non essere valido.");
	return false;
	   }
	}

if (checkTLD && domArr[domArr.length-1].length!=2 && 
domArr[domArr.length-1].search(knownDomsPat)==-1) {
//	alert("L'indirizzo deve concludersi con una o più lettere valide");
	return false;
	}

if (len<2) {
//	alert("Questo indirizzo non ha un hostname corretto");
	return false;
	}

return true;
}
// FINE Email ----<

function seekElement(cboCombo, sValue){
  for (var i = 0; i < cboCombo.options.length; i++){
    if (cboCombo.options[i].value == sValue){
      cboCombo.selectedIndex = i;
      break;
    }
  }
}

// NumberRoff ----<
function NumberRoff(numR)
{
	for (index_b=0;index_b<numR.length;index_b++)
	{
		if (	(	(numR.charCodeAt(index_b) < "0".charCodeAt(0))
				||	(numR.charCodeAt(index_b) > "9".charCodeAt(0))
				)
			)
			return false;
		}
	return true;
}

//Apertura finestra ----<
function win_popup1(str)
	{
		searchWin =
		window.open(str,'new','scrollbars=no,resizable=yes, width=300, height=200,status=no,location=no,toolbar=no,left=0,screenX=5,screenY=5,top=0');
		searchWin.creator=self
	}

function win_popup2(str)
	{
		searchWin =
		window.open(str,'new','scrollbars=no,resizable=no, width=400, height=250,status=no,location=no,toolbar=no,left=0,screenX=5,screenY=5,top=0');
		searchWin.creator=self
	}

