<!--

function mailto(scrivi) {
	var dominio = "spaziografico.it"
	var utente = "info"
	var destinatario = utente + "@" + dominio
	var indirizzo = "mailto:" + destinatario
	if (!scrivi) location.href=indirizzo;
	else document.write(destinatario.link(indirizzo));
}

function apriFin(PageURL){
	l = (screen.availwidth - 540) / 2;
	t = (screen.availheight - 450) / 2;
	WindowName="MyPopUpWindow";
	settings="toolbar=no,location=no,directories=no,"+
	"status=no,menubar=no,scrollbars=yes,"+
	"resizable=no,width=540,height=450,left="+l+",top="+t+";"
	MyNewWindow=window.open(PageURL,WindowName,settings); 
	MyNewWindow.focus(); 
}


function checkQuote (txt) {
	if (txt.value.indexOf("'") != -1) {
		alert("Il carattere apice (') non è consentito");
		txt.focus();
	}
}


function filtra_file(mytext, type) {
	mytxt = mytext.value ;
	if(mytxt.indexOf(type) == -1) {
		alert("Attenzione il file selezionato non è corretto.\n\nDeve essere un file di tipo " + type + ".");
		mytext.focus();		
		return false ;
	} else {
		return true ;
	}
}

function type_of_file(namefile, id, typeofile) {
	id.className = "typefile";
	if (typeofile=="") ok = true  ;  else ok = false  ;
	if (namefile.indexOf(".exe") != -1) {
		if (typeofile==".exe") ok = true;
		typefile = "File EXE / File di Programma";
	} else if (namefile.indexOf(".com") != -1) {
		if (typeofile==".com") ok = true;
		typefile = "File COM / Eseguibile";
	} else if (namefile.indexOf(".zip") != -1) {
		if (typeofile==".zip") ok = true;
		typefile = "File ZIP / Compresso WinZip";
	} else if (namefile.indexOf(".jpg") != -1) {
		if (typeofile==".jpg") ok = true;
		typefile = "File JPEG / Immagine";
	} else if (namefile.indexOf(".gif") != -1) {
		if (typeofile==".gif") ok = true;
		typefile = "File GIF / Immagine";
	} else if (namefile.indexOf(".png") != -1) {
		if (typeofile==".png") ok = true;
		typefile = "File PNG / Immagine";
	} else if (namefile.indexOf(".pdf") != -1) {
		if (typeofile==".pdf") ok = true;
		typefile = "File PDF / Documento Acrobat";
	} else if (namefile.indexOf(".doc") != -1) {
		if (typeofile==".doc") ok = true;
		typefile = "File DOC / Documento Word";
	} else if (namefile.indexOf(".xls") != -1) {
		if (typeofile==".xls") ok = true;
		typefile = "File XLS / Documento Excel";
	} else if (namefile.indexOf(".txt") != -1) {
		if (typeofile==".txt") ok = true;
		typefile = "File TXT / Testo";
	} else {
		typefile = "File non supportato";
		ok = false;
	}	
	if (ok) {
		if (document.getElementById('ok')!=null) document.getElementById('ok').disabled=false;
		id.className = "typefile";
	}	else {
		if (document.getElementById('ok')!=null) document.getElementById('ok').disabled=true;
		id.className = "typefile-err";
	}
	id.innerHTML = '<a href="' + namefile + '" target="_blank">' + typefile + '</a>' ;
}

function valuta(price) 
{
   string = "" + price ;
   if (string=="") {
		return '0.00' ;		
   } else {
		number = string.length - string.indexOf('.');
		if (string.indexOf('.') == -1)
		  return string + '.00';
		if (number == 1)
		  return string + '00';
		if (number == 2)
		  return string + '0';
		if (number > 3)
		  return string.substring(0,string.length-number+3);
		return string;
	}
}

function check_valuta(mytx) {
	price=mytx.value;
	mytx.value=valuta(price);
}


function verificaEt(myEmail){
	mail = myEmail.value;
	if (mail!="") {
		if ( mail.indexOf("@",1)==-1 || mail.indexOf(".",1)==-1) {
			myEmail.value="";
			myEmail.focus();				
			alert("Il formato dell'e-mail non è valido");
		}
	}
}


function checkAnni(txNato, txAnni) {
	// converte la data in formato americano mm/gg/aa per i caloli
	strNato = txNato.value ;
	strNato = strNato.toString(); 
	gg = strNato.substring(0,2)
	mm = strNato.substring(3,5)
	aa = strNato.substring(6,10)
	dataconv=mm+"/"+gg+"/"+aa
	// crea 2 oggetti date. Uno con la data odierna e l'altro con la data inserita
	datanasc=new Date(dataconv)
	oggi=new Date()
	// calola la differenza in millesecondi fra le 2 date
	mesims=oggi.getTime() - datanasc.getTime()
	// converte i millisecondi in anni per stabilire l'età considerando ogni mese
	// lungo 30.416 giorni che è la media ottenuta da 365 giorni divisi per 12 mesi
	anni=Math.floor((mesims / (1000 * 60 * 60 * 24 * 30.416)/12));
	if(anni<0) {
		alert("Risultato non accettato, verificare le date!")
		txAnni.value="";		
		txNato.value="";
		txNato.focus();
	}	else {
		if (txAnni!=null) txAnni.value = anni ;
		return anni;
	}
}


function datediff(per, datainput, myText) 
  {
	 
	if (datainput!="") {
		anni = parseInt(datainput.substr(6,4),10);
		mesi = parseInt(datainput.substr(3,2),10)-1;
		giorni = parseInt(datainput.substr(0,2),10);
		
		var oggi = new Date();
		var anno = (oggi.getYear()>99 && oggi.getYear()<1970) ? oggi.getYear()+1900 : oggi.getYear();
		var data1 = new Date(anno,oggi.getMonth(),oggi.getDate());
		var data2 = new Date(anni,mesi,giorni); 
		data1time = data1.getTime(); 
		data2time = data2.getTime(); 
		difftime = Math.abs(data1time-data2time); 
		var giornilontano = parseInt(difftime/1000/60/60/24); 
		var datadiff=new Date(); 
		datadiff.setTime(difftime); 
		
		alert(data1 + " " + data2);
		
		switch(per) {
			case "y": diff = parseInt(datadiff.getFullYear()-anno); 
			case "m": diff = datadiff.getMonth(); 
			case "g": diff = datadiff.getDate();
		}
		
		if (myText!=null) myText.value = diff ;
		
		return diff;
	}	
	
} 


function calcoladiff(per,d1,d2) {
   var d = (d2.getTime()-d1.getTime())/1000
   switch(per) {
      case "yyyy": d/=12
      case "m": d*=12*7/365.25
      case "ww": d/=7
      case "d": d/=24
      case "h": d/=60
      case "n": d/=60
   }
   return Math.round(d);
}


function giornidiff(date1, date2) {
    splitvar   = date1.substring(2,3);
    var parts1 = new Array();
    var parts2 = new Array();
    var parts3 = new Array();
    var months = new Array();

    year = parts1[2];
    yeardays = 365;
    months[1]  = 31;
    months[2]  = 28; if (Math.floor(year/4)*4 == year ) {months[2] += 1; yeardays+=1}
    months[3]  = 31;
    months[4]  = 30;
    months[5]  = 31;
    months[6]  = 30;
    months[7]  = 31;
    months[8]  = 31;
    months[9]  = 30;
    months[10] = 31;
    months[11] = 30;
    months[12] = 31;

    var parts1 = date1.split(splitvar);
    var parts2 = date2.split(splitvar);

    part = ''; part+= parts1[2]; part+= parts1[1]; part+= parts1[0]; part1 = eval(part*1);
    part = ''; part+= parts2[2]; part+= parts2[1]; part+= parts2[0]; part2 = eval(part*1);

    if ( part1 > part2 ) {
         parts3 = parts2;
         parts2 = parts1;
         parts1 = parts3;
    }

    days=0;
    for   ( i=eval(parts1[2]*1); i<eval(parts2[2]*1); i+=1) { days+= yeardays; }
    for   ( i=eval(parts1[1]*1); i<eval(parts2[1]*1); i+=1) { days+= months[i];}
    if ( eval(parts1[0]*1) > eval(parts2[0]*1) ) {
      for ( i=eval(parts2[0]*1); i<eval(parts1[0]*1); i+=1) { days-= 1;        }
    } else {
      for ( i=eval(parts1[0]*1); i<eval(parts2[0]*1); i+=1) { days+= 1;        }
    }
    if ( parts3[0] > 0 )                   { days*=-1 }

    return(days);
} 



function verificaDataMag(myDate, preDate, nowData) {
	
	if (verificaData(myDate)) {
	
		obj=myDate.value.replace(/[^\d]/g,"0");
		gg=obj.substr(0,2)
		mm=obj.substr(3,2);
		aa=obj.substr(6,4);
		data = new Date(aa,mm,gg);

		obj_pre=preDate.replace(/[^\d]/g,"0");
		gg_pre=obj_pre.substr(0,2)
		mm_pre=obj_pre.substr(3,2);
		aa_pre=obj_pre.substr(6,4);
		data_pre = new Date(aa_pre,mm_pre,gg_pre);

		obj_now=preDate.replace(/[^\d]/g,"0");
		gg_now=obj_now.substr(0,2)
		mm_now=obj_now.substr(3,2);
		aa_now=obj_now.substr(6,4);
		data_now = new Date(aa_now,mm_now,gg_now);

		data_ = (data_pre > data_now)?data_pre:data_now;
		strData = data_.getDate().toString() + "/" + data_.getMonth().toString() + "/" + data_.getFullYear().toString();
		if (data_ > data) {
			alert("Attenzione la data inserita non è valida\ninserire una data superiore a:\n\n" + strData);
			return false ;
		} else {
			return true ;
		}

	}
	
}
function verificaData(myDate) {

	if (myDate.value!='') {
		err = false;	
		obj=myDate.value.replace(/[^\d]/g,"0");
		obj = obj.toString();
		
		if (obj.length != 10) err = true ;
		
		gg=obj.substr(0,2)
		mm=obj.substr(3,2);
		aa=obj.substr(6,4);
		
		strdata=gg+"/"+mm+"/"+aa;
		
		data = new Date(aa,mm-1,gg);
		daa=data.getFullYear().toString() ; 
		dmm=(data.getMonth()+1).toString();
		dmm=dmm.length==1?"0"+dmm:dmm
		dgg=data.getDate().toString();
		dgg=dgg.length==1?"0"+dgg:dgg
		dddata=dgg+"/"+dmm+"/"+daa
		
		if (dddata!=strdata) err = true; 
	
		if (err) {	
			alert("Verificare che la data sia inserita nel formato gg/mm/aaaa\ne che sia una data esistente.");
			myDate.focus(); //...viene ridato il focus per il reinserimento
			//      myDate.value=""; // Il campo viene cancellato e...
		} else {
			myDate.value=dddata; // Nel campo viene scritta la data generata	
		}
		return !err;
	}
			
}


function stampa() {
	document.getElementById('go_stampa').style.visibility = 'hidden';
	window.print();
	document.getElementById('go_stampa').style.visibility = 'visible';		
}


function check_keycode(myText) {
	myText.value = event.keyCode ;
	event.returnValue=false;
}


function solo_numeri() {
	if ( !( event.keyCode<=47 || (event.keyCode>=48 && event.keyCode<=57) || (event.keyCode>=96 && event.keyCode<=105) ) ) {
		event.returnValue=false;
  	alert ("Attenzione puoi inserire solo i caratteri\n1234567890");
	}
}

function solo_tel() {
	if ( !( event.keyCode<=47 || event.keyCode==109 || event.keyCode==189 || (event.keyCode>=48 && event.keyCode<=57) || (event.keyCode>=96 && event.keyCode<=105) ) ) {
		event.returnValue=false;
  	//alert ("Attenzione il formato di un n.ro di telefonico deve essere\n####-#######");
	}
}

function solo_data() {
	if ( !( event.keyCode<=47 || event.keyCode==55 || event.keyCode==111 || (event.keyCode>=48 && event.keyCode<=57) || (event.keyCode>=96 && event.keyCode<=105) ) ) {
		event.returnValue=false;
  	//alert ("Attenzione il formato della data deve essere\n##/##/####");
	}
}

function solo_valuta() {
	if ( !( event.keyCode<=47 || (event.keyCode>=48 && event.keyCode<=57) || (event.keyCode>=96 && event.keyCode<=105) || event.keyCode==190 || event.keyCode==110 )) {
		event.returnValue=false;
  	alert ("Attenzione puoi inserire solo i caratteri\n1234567890 ed il . per i decimali.");
	}
}
function apri_popup (url, id, width, height) {
	if (width=='') width='800';
	if (height=='') height='600';
	if (id=='') id='popup' ;
	window.open(url, id, 'width=' + width + ',height=' + height + ',toolbar=0,location=0,directories=0,status=1,menuBar=0,scrollBars=1,resizable=1');
}


function MM_findObj(n, d) { //v3.0
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document); return x;
}
function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}
function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_preloadImages() { //v3.0
 var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
   var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
   if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_reloadPage(init) {  //reloads the window if Nav4 resized
  if (init==true) with (navigator) {if ((appName=="Netscape")&&(parseInt(appVersion)==4)) {
    document.MM_pgW=innerWidth; document.MM_pgH=innerHeight; onresize=MM_reloadPage; }}
  else if (innerWidth!=document.MM_pgW || innerHeight!=document.MM_pgH) location.reload();
}
MM_reloadPage(true);

function MM_showHideLayers() { //v3.0
  var i,p,v,obj,args=MM_showHideLayers.arguments;
  for (i=0; i<(args.length-2); i+=3) if ((obj=MM_findObj(args[i]))!=null) { v=args[i+2];
    if (obj.style) { obj=obj.style; v=(v=='show')?'visible':(v='hide')?'hidden':v; }
    obj.visibility=v; }
}

