function newWindow(url,name,w,h,scroll,bNoResize)
{
 LeftPosition = (screen.width) ? (screen.width-w)/2 : 0;
 TopPosition = (screen.height) ? (screen.height-h)/2 : 0;
 settings = 'height='+h+',width='+w+',top='+TopPosition+
 			',left='+LeftPosition+',scrollbars='+scroll;

 if(bNoResize)	
   settings += ',resizable=no';
 else
   settings += ',resizable=yes';

 win = window.open(url,name,settings)

 win.focus();

 return win;
}

/**
 * Disabilita tutti i bottoni della form (se specificata) o della pagina (altrimenti),
 * impedendo all'utente di bombardare di richieste il server
 */
function disableButtons(form)
{
  if(document.all || document.getElementsByTagName)
  {
		if(form)
		{
			for (i=0;i<form.elements.length;i++)
			{
				disableElem(form.elements[i]);
			}
		}
		else
		{
			var elems = document.getElementsByTagName("input");
			
			for (i=0;i<elems.length;i++)
			{
				disableElem(elems[i]);
			}
		}
  }
}

function disableButtonsInFrame(frame)
{
  if(frame.document.all || frame.document.getElementsByTagName)
  {
		var elems = frame.document.getElementsByTagName("input");
		
		for (i=0;i<elems.length;i++)
		{
			disableElem(elems[i]);
		}
  }
}

function disableElem(elem)
{
	if(elem.type.toLowerCase()=="submit" || 
		 elem.type.toLowerCase()=="reset"  ||
		 elem.type.toLowerCase()=="button")
	{
		elem.disabled=true;
	}
}

/**
 * Disabilita tutti i link del documento,
 * impedendo all'utente di bombardare di richieste il server
 */
function disableLinks(doc)
{
	var links = doc.getElementsByTagName("a");
	var fakeLink = 'javascript:void(0)';	
		
	for(var i=0; i<links.length; i++)
	{
		links[i].disabled = true;
		links[i].href = fakeLink;
	}
}

/////////// Funzioni per i tooltip

g_iTTFontSize = 12
g_sTTFontFamily = 'Arial, Helvetica, sans-serif'
g_sTTBorder = '1px black solid'
g_sTTColor = 'black'
g_sTTBgColor = 'black'

function showtip(current,e,text)
{
        if (document.layers)
        {
                sStyleString =         'border:' + g_sTTBorder +
                                                   ';font-size:' + g_sTTFontSize +
                                                ';font-family:' + g_sTTFontFamily +
                                                ';color:' + g_sTTColor + ';';

                this.document.tooltip.document.write('<layer bgColor="' + g_sTTBgColor + '" style="' + sStyleString + '">'+text+'</layer>')
                this.document.tooltip.document.close()
                this.document.tooltip.left=e.pageX+5
                this.document.tooltip.top=e.pageY+5
                this.document.tooltip.visibility="show"
        }
        else if (this.document.all)
        {
                thetitle=text.split('<br>')
                if (thetitle.length>1)
                {
                        thetitles=''
                        for (i=0;i<thetitle.length;i++)
                                thetitles+=thetitle[i]
                        current.title=thetitles
                }
                else
                        current.title=text
        }

}

function hidetip()
{
                if (this.document.layers)
                        this.document.tooltip.visibility="hidden"
}

function getStyle(component)
{
	var numSheets = document.styleSheets.length;
	var retVal = null;
	var tema = ".ts_tema_"+component;
	
	for(j=0; j<numSheets; j++)
	{
		var rules;
		if(navigator.appName == "Netscape"){
			rules = document.styleSheets[j].cssRules;
		}else{
			rules = document.styleSheets[j].rules;
		}
		var ruleLen = rules.length;
		for(i=0; i<ruleLen; i++)
		{
			rule = rules[i];
			if(rule.selectorText == tema)
			{
				retVal = rule.style;
				break;
			}
		}
	}
	return retVal;
}
