// è un file UTF-8 - © www.broken-arts.com

function dom_Elm_wh_get( elm ) {
	// i valori potrebbe essere seguiti da 'px', ad esempio: '20px'
	// devo quindi forzare la tipizzazione a numero con parseInt()
	var w = parseInt(elm.offsetWidth);
	var h = parseInt(elm.offsetHeight);
	return {w:w, h:h}; 
}


var dom_debug_elm = null;
function dom_debug_write( st, add ) {
	if (dom_debug_elm == null) { // create a new div element and give it some content
		dom_debug_elm = document.createElement("div");
		rm_Elm_xy_set( dom_debug_elm, 0, 0 );
		dom_debug_elm.style.backgroundColor="#FFFFFF";
		dom_debug_elm.innerHTML = "Debug area";
		e_arr = document.getElementsByTagName("body");
		// inserisco il div prima del primo child di <body>
		e_arr[0].insertBefore(dom_debug_elm,e_arr[0].firstChild);
	}
	xy = rm_Elm_xy_get( dom_debug_elm );
	wsxy = rm_Win_scroll_get();
	if ( (wsxy.x!=xy.x) || (wsxy.y!=xy.y) )
		rm_Elm_xy_set( dom_debug_elm, wsxy.x, wsxy.y );
	if (add)
		dom_debug_elm.innerHTML+= '<br />'+st;
	else
		dom_debug_elm.innerHTML = st;
}
function dom_Win_scroll_get() {
	var scrOfX = 0, scrOfY = 0;
	if( document.body && ( document.body.scrollLeft || document.body.scrollTop ) ) {
		//DOM compliant
		scrOfY = document.body.scrollTop;
		scrOfX = document.body.scrollLeft;
	} else if( document.documentElement && ( document.documentElement.scrollLeft || document.documentElement.scrollTop ) ) {
		//IE6 standards compliant mode
		scrOfY = document.documentElement.scrollTop;
		scrOfX = document.documentElement.scrollLeft;
	} else if( typeof( window.pageYOffset ) == 'number' ) {
		//Netscape compliant
		scrOfY = window.pageYOffset;
		scrOfX = window.pageXOffset;
	}
	return { x:scrOfX, y:scrOfY };
}


// funzioni per il pop-up
if (document.layers) {navigator.family = "nn4"}
if (document.all) {navigator.family = "ie4"}
if (window.navigator.userAgent.toLowerCase().match("gecko")) {navigator.family = "gecko"}
popcol_bordo = "#000000";
popcolbg_tit = "#1F5BA5";
popcoltxt_tit = "#FFFFFF";
popcolbg_msg = "#FFFFCC";
popcoltxt_msg = "#000000";
poplarg = 0;
poprelposx = 15;
poprelposy = -5;
// poplarg = 250';
function setPopUpRelPos( x, y ) {
	poprelposx = x;
	poprelposy = y;
}
function resetPopUpRelPos() {
	poprelposx = 15;
	poprelposy = -5;
}

function get_scroll() {
	var ofs_x = 0;
	var ofs_y = 0;
	if( typeof( window.pageYOffset ) == 'number' ) {
		// Netscape compliant
		ofs_x = window.pageXOffset;
		ofs_y = window.pageYOffset;
	} else if( document.body && ( document.body.scrollLeft || document.body.scrollTop ) ) {
		// DOM compliant
		ofs_x = document.body.scrollLeft;
		ofs_y = document.body.scrollTop;
	} else if( document.documentElement && ( document.documentElement.scrollLeft || document.documentElement.scrollTop ) ) { 
		// IE6 standards compliant mode
		ofs_x = document.documentElement.scrollLeft;
		ofs_y = document.documentElement.scrollTop;
	}
	var w=0;
	var h=0;
	if( typeof( window.innerWidth ) == 'number' ) {
		// Non-IE
		w = window.innerWidth;
		h = window.innerHeight;
	} else if ( document.documentElement && ( document.documentElement.clientWidth || document.documentElement.clientHeight ) ) {
		// IE 6+ in 'standards compliant mode'
		w = document.documentElement.clientWidth;
		h = document.documentElement.clientHeight;
	} else if ( document.body && ( document.body.clientWidth || document.body.clientHeight ) ) {
		//IE 4 compatible
		w = document.body.clientWidth;
		h = document.body.clientHeight;
	}
	return {x:ofs_x, y:ofs_y, w:w, h:h}; 
}

function hide_forms() {
	for (i=0; i<document.forms.length; i++)
		document.forms[i].style.visibility="hidden";
}

function show_forms() {
	for (i=0; i<document.forms.length; i++)
		document.forms[i].style.visibility="visible";
}

function PopUp_is_visibile() {
	return document.getElementById("objpopup").style.visibility=="visible";
}

function show_PopUp_attesa( stmsg ) {
	if (PopUp_is_visibile())
		return; // se in un pop up visibile c'è una form la pagina non si carica, per cui se il pop up è visibile evito di mostrare il messaggio di attesa
	hide_forms();
	lar = 300;
	alt = 200;
	
	var c = get_scroll();
	xpos = c.x + ((c.w - lar) / 2);
	ypos = c.y + ((c.h - alt) / 2);
	align = '../../img/align.gif';
	desc ='';
	desc+='<table width='+lar+' cellspacing="0" cellpadding="0" border="0">\n';
	desc+='<tr><td bgcolor="'+popcol_bordo+'" colspan="3"><img src="'+align+'" width="'+lar+'" height="1"></td></tr>\n';
	desc+='<tr>';
	desc+='<td bgcolor="'+popcol_bordo+'"><img src="'+align+'" width="1" height="'+(alt-2)+'"></td>\n';
	desc+='<td align="center" bgcolor="'+popcolbg_msg+'"><img src="'+align+'" width="'+(lar-2)+'" height="1"><br />\n';
	desc+='<FONT COLOR="'+popcoltxt_msg+'">'+stmsg+'</FONT>\n';
	desc+='</td>\n';
	desc+='<td bgcolor="'+popcol_bordo+'"><img src="'+align+'" width="1" height="'+(alt-2)+'"></td>\n';
	desc+='</tr>\n';
	desc+='<tr><td bgcolor="'+popcol_bordo+'" colspan="3"><img src="'+align+'" width="'+lar+'" height="1"></td></tr>\n';
	desc+='</table>\n';
	//
	obj = document.getElementById("objpopup");
	obj.innerHTML=desc;
	obj.style.left=xpos+'px';
	obj.style.top=ypos+'px';
	obj.style.visibility="visible";
}

function hide_PopUp_attesa( stmsg ) {
	document.getElementById("objpopup").style.visibility="hidden";
	show_forms();
}

function show_PopUp( sttit, stmsg, larg, centra, bclose ) {
//	var sttit="";
	if (larg == 0)
		larg = poplarg;
	stlarg = '';
	if (larg > 0)
		stlarg = 'WIDTH="'+larg+'"';
	var desc="";
	desc = '<TABLE '+stlarg+' cellspacing="0" cellpadding="1" border="0">\n'
		+'<TR><TD BGCOLOR="'+popcol_bordo+'">\n';
	if (sttit!="") desc+='<TABLE width="100%" cellspacing="0" cellpadding="2" border="0"><TR><TD BGCOLOR="'+popcolbg_tit+'"><FONT COLOR="'+popcoltxt_tit+'"><B>'+sttit+'</B></FONT></TD></TR></TABLE>\n';
	desc+='<TABLE width="100%" cellspacing="0" cellpadding="2" border="0"><TR><TD BGCOLOR="'+popcolbg_msg+'"><FONT COLOR="'+popcoltxt_msg+'">'+stmsg+'</FONT></TD></TR></TABLE>\n';
	if (bclose) {
		desc+='<TABLE width="100%" cellspacing="0" cellpadding="2" border="0"><TR><TD align="center" BGCOLOR="'+popcolbg_msg+'"><a href="javascript:hidePopUp()">Chiudi questa finestra</a></TD></TR></TABLE>\n';
	}
	desc+='</TD></TR>\n';
	desc+='</TABLE>\n';
	if ( centra && (larg > 0) ) {
		xpos = mouse_x- (larg / 2);
		ypos = mouse_y+poprelposy;
	} else {
		xpos = mouse_x+poprelposx;
		ypos = mouse_y+poprelposy;
	}
	if (xpos < 5)
		xpos = 5;
	//
	obj = document.getElementById("objpopup");
	obj.innerHTML=desc;
	obj.style.left=xpos+"px";
	obj.style.top=ypos+"px";
	// se la finestra va troppo sotto, la tiro su
	var c = get_scroll();
	win_y2 = c.y+c.h;
	wh = dom_Elm_wh_get( obj );
	wh.h+=10;
	if ((ypos+wh.h) > win_y2)
		obj.style.top = win_y2-wh.h;
	obj.style.visibility="visible";
}
function showPopUp( stmsg ) {
	show_PopUp( "", stmsg, 0, false, false );
}
function hidePopUp() {
	document.getElementById("objpopup").style.visibility="hidden";
}
function hide_PopUp() {
	hidePopUp();
}


