// JavaScript Document

<!--
function MM_openBrWindow(theURL,winName,features) { //v2.0
  window.open(theURL,winName,features);
}

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_findObj(n, d) { //v4.01
  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);
  if(!x && d.getElementById) x=d.getElementById(n);

  return x;
}

// Example: showHideLayers(Layer1,'','show',Layer2,'','hide');
function showHideLayers()
{
   
  var i, visStr, obj, args = showHideLayers.arguments;
  for (i=0; i<(args.length-2); i+=3)
  {
    
    if ((obj = MM_findObj(args[i])) != null)
    {
      visStr = args[i+2];
      if (obj.style)
      {
        obj = obj.style;
        if(visStr == 'show') visStr = 'visible';
        else if(visStr == 'hide') visStr = 'hidden';
      }
      obj.visibility = visStr;
    }
  }
}
//------



 function P7_Snap() { //v2.63 by PVII
 var x,y,ox,bx,oy,p,tx,a,b,k,d,da,e,el,tw,q0,xx,yy,w1,pa='px',  args=P7_Snap.arguments;
 a=parseInt(a);
 if(document.layers||window.opera) // se il browsere è netscape o opera
 {
 	pa='';
 }
 for(k=0;k<(args.length);k+=4)     // per ogni livello...   (visto che args è un vettore con gli argomenti della funzione e per ogni livello di sono 4 parametri)
 {
 	if((g=MM_findObj(args[k]))!=null) // se riesco a trovare l'immagine a cui ancorarmi
	{
		if((el=MM_findObj(args[k+1]))!=null) // se riesco a trovare il livello
		{
 			a=parseInt(args[k+2]);	// distanza X fra ancora e livello
			b=parseInt(args[k+3]);	// Distanza Y fra ancora e livello
			x=0;
			y=0;
			ox=0;
			oy=0;
			p="";
			tx=1;
 			da="document.all['"+args[k]+"']";
			
			if(document.getElementById)		// Se Explorer 5...
			{
 				d="document.getElementsByName('"+args[k]+"')[0]";
				if(!eval(d))
				{
 					d="document.getElementById('"+args[k]+"')";
					if(!eval(d))
					{
						d=da;
					}
				}
 			}
			else if(document.all)
			{
				d=da;
			}
			if(document.all||document.getElementById)
			{
				while(tx==1)
				{
 					p+=".offsetParent";
					if(eval(d+p))
					{
						x+=parseInt(eval(d+p+".offsetLeft"));y+=parseInt(eval(d+p+".offsetTop"));
 					}
					else
					{
						tx=0;
					}
				}
				ox=parseInt(g.offsetLeft);
				oy=parseInt(g.offsetTop);
				tw=x+ox+y+oy;
 				if(tw==0||(navigator.appVersion.indexOf("MSIE 4")>-1&&navigator.appVersion.indexOf("Mac")>-1))
				{
  					ox=0;oy=0;
					if(g.style.left)
					{
						x=parseInt(g.style.left);
						y=parseInt(g.style.top);
					}
					else
					{
  						w1=parseInt(el.style.width);
						bx=(a<0)?-5-w1:-10;a=(Math.abs(a)<1000)?0:a;b=(Math.abs(b)<1000)?0:b;
  						x=document.body.scrollLeft+event.clientX+bx;y=document.body.scrollTop+event.clientY;
					}
				}
 			}
			else 
			if(document.layers)
			{
				x=g.x;
				y=g.y;
				q0=document.layers,dd="";
				for(var s=0;s<q0.length;s++)
				{
  					dd='document.'+q0[s].name;
					if(eval(dd+'.document.'+args[k]))
					{
						x+=eval(dd+'.left');
						y+=eval(dd+'.top');
  						break;
					}
				}
			}
			e=(document.layers)?el:el.style;xx=parseInt(x+ox+a),yy=parseInt(y+oy+b);
 			if(navigator.appVersion.indexOf("MSIE 5")>-1 && navigator.appVersion.indexOf("Mac")>-1)
			{
  				xx+=parseInt(document.body.leftMargin);
				yy+=parseInt(document.body.topMargin);
			}
 			e.left=xx+pa;e.top=yy+pa;
		}
	}

  showHideLayers(args[k+1],'','show');
}
}

function MM_setTextOfLayer(objName,x,newText) { //v4.01
  if ((obj=MM_findObj(objName))!=null) with (obj)
    if (document.layers) {document.write("<span class=\"StatusBar\">"+unescape(newText))+"</span>"; document.close();}
    else innerHTML = unescape(newText);
}
//-->


