 var nidificazione=new Array();
 var counter_dim=0; 
 function dimensioni() {
  //vecchia: passava come primo parametro reset_dim, come secondo dim_aggiuntiva
  setTimeout("dimensiona()",1);
 }
 //ver 1.1 => se nella dichiarazione del frame metto no_redim non lo ridimensiona
 //ver 1.2 => inseriti try-catch
 //ver 1.3 => se frame=varie e altezza<565 => altezza=565
 //ver 1.5 => max_redim=xxx per limitare l'altezza massima del frame
 //ver 1.6 => loop?
 //ver 1.7 => opera loop?
 function is_opera(version, param){
    if (version == null){
      var version = '';
    }
    var agt = navigator.userAgent.toLowerCase();
    if (param == null){
        return (agt.indexOf("opera "+version) != -1 || agt.indexOf("opera/"+version) != -1);
    } else {
        var vers = parseInt(agt.charAt(agt.indexOf("Opera")+7));
        if (param == 'gte'){
            return (vers >= version);
        }
        else if (param == 'gt'){
            return (vers > version);
        }
        else if (param == 'lte'){
            return (vers <= version);
        }
        else if (param == 'lt'){
            return (vers < version);
        }
    }
}
 function dimensiona(obj,non_azzerare) {
 if ((counter_dim>10))
	{
	if (!(is_opera())) counter_dim=0;
	return;
	}

 if (nidificazione.length>1)
	{
	for(var x=0;x<nidificazione.length-1;x++)
		for(var y=(x+1);y<nidificazione.length;y++)
			if ((nidificazione[x]==nidificazione[y])&&(nidificazione[x]!="undefined")&&(nidificazione[x]!="undefined")) return true;
	}
  function isnumeric(s,dec,separatore) {
   if (s==null) return true;
   //dec=0 NON considera decimali, altrimenti li considera
   //separatore: se non lo indico prende il . altrimenti usa quello indicato come separatore
   //se è negativo rimuovo simbolo
   if (String(s).substr(0,1)=="-") s=String(s).substr(1);
   if ((dec!="0")&&((String("1234567890").indexOf(String(s).substr(0,1))==-1)||(String("1234567890").indexOf(String(s).substr(String(s).length-1,1))==-1))) return false;
   separatore=(String(separatore)=="undefined")?".":separatore;
   var filtronumber="1234567890"+((dec=="0")?"":separatore);
   s=String(s).replace(/,|\./g,separatore);
   var x;
   for (x=0;x<s.length;x++) 
    if (filtronumber.indexOf(s.substr(x,1))==-1) return false;
   if (dec!="0")
 	if ((s.indexOf(separatore)!=-1)&&((s.substr(s.indexOf(separatore)+1).indexOf(separatore)!=-1))) return false;
   return true;
 }
  //ATTENZIONE: USA NAME E NON ID !!! METTERE SEMPRE NAME
  if(!non_azzerare) 
	{
	nidificazione.length=0;	
	}
  if(String(obj)=="undefined") obj=document;
   //se p.e. da legnone ho un frame su executive (es. garanzia generale) segnala accesso negato, e non vi è modo di saperlo
  try{nidificazione[nidificazione.length]=obj.name} catch(e){return}
  var objframes=obj.frames;
  if (objframes==null) return;
  for (var x=0;x<obj.frames.length;x++) 
   dimensiona(obj.frames[x],true);
  if(String(obj.name)=="undefined") return;
  var str="";
  for(var x=1;x<nidificazione.length-1;x++)
   str+="document.frames['"+nidificazione[x]+"'].";
str2="document.all['"+nidificazione[nidificazione.length-1]+"']."; 
  nidificazione.length--;
  //stesso discorso di sopra per frame in domini diversi
  try {	eval(str+(String(str2).replace(/all/,"frames"))+"location.hostname==top.location.hostname")} catch(e){return}
  if(eval(String(str+str2+"no_redim"))!="") {
   try{var h=eval(str+(String(str2).replace(/all/,"frames"))+"document.body.scrollHeight+document.body.offsetHeight-document.body.clientHeight+Number(document.body.topMargin)+5");}catch(e){var h=565}
 if((String(str2).toUpperCase()=="DOCUMENT.ALL['VARIE'].")&&(h<565)) h=565;
 if((String(str2).toUpperCase()=="DOCUMENT.ALL['VARIE2'].")&&(h<200)) h=200; 
 //v1.4: clausola "max_redim=xxx" per indicare di non ridimensionare oltre xx
 if(String(eval(String(str+str2+"max_redim"))).toUpperCase()!="UNDEFINED") {
  try{
   var h_provv="";
   eval("h_provv="+str+str2+"max_redim");
   if((isnumeric(h_provv,0))&&(h_provv<h)) h=h_provv;
  } catch(e){}
 } 
 try{
	eval(str+str2+"style.height="+h);
	counter_dim++;
	} catch(e)
	{
  //try{eval(str+str2+"height="+h);} catch(e){alert("errore durante il ridimensionamento.\n\nContattare il Sysop indicando il seguente errore:\n\n"+e.description)}
  //alert("errore durante il ridimensionamento.\n\nContattare il Sysop indicando il seguente errore:\n\n"+e.description)
 }
 //try{eval(str+str2+"height="+h);} catch(e){alert("errore durante il ridimensionamento.\n\nContattare il Sysop indicando il seguente errore:\n\n"+e.description)}
 } //escludo se no_redim
 }
function dimensioni_bak(reset_dim,dim_aggiuntiva)
{
	var dimensionefissa="100%";
	try 
	{
		if (dim_originale==0)dim_originale=top.document.all["tr_varie"].scrollHeight
		if(reset_dim)
		{
			//top.document.all["tr_varie"].style.height=dim_originale;
			top.document.all["tr_varie"].style.height=dimensionefissa;
			return true;
		}
		if(dim_originale<=varie.document.body.scrollHeight)
		{
			if (typeof dim_aggiuntiva =="undefined")
			{
				top.document.all["tr_varie"].style.height=varie.document.body.scrollHeight+20;
			}
			else
			{
				top.document.all["tr_varie"].style.height=varie.document.body.scrollHeight+20+dim_aggiuntiva;			
			}
		}
		else
		{
			//top.document.all["tr_varie"].style.height=dim_originale;
			top.document.all["tr_varie"].style.height=dimensionefissa;
		}
		return true;
	}
	catch (e)
	{
	return false;
	}
}


function mostra_news_e_dimensiona()
{
top.document.getElementById("fr_varie2").style.display="none";
top.document.getElementById("fr_varie2").style.visibility="hidden";
top.dimensioni();
top.document.getElementById("varie").style.height="565";
top.document.varie.document.location.href="/new/mostra_news.asp";
}