// JavaScript Document

function BSE_OpenWin(file, w, h, scrollbar)
{
	// var n = window.open(file,'Display','top=6,left=32,width=806,height=700,toolbar=no,status=no,directories=no,location=no,scrollbars=no,menubar=no,resizable=no');
	
	var n= window.open(file,'Display','width='+w+',height='+h+',toolbar=no,status=no,directories=no,location=no,scrollbars='+scrollbar+',menubar=no,resizable=no, top=100, left=120'); 
}

function BSE_ViewImage(prefix,dbid,copyright) 
{
	if (!copyright)
    	show = 'image.htm?prefix='+prefix+'?'+'index='+dbid
	else
    	show = 'image(c).htm?prefix='+prefix+'?'+'index='+dbid
		
	var n = window.open(show,'ViewImage','top=6,left=32,width=752,height=584,toolbar=no,status=no,directories=no,location=no,scrollbars=yes,menubar=no,resizable=no');
}

function BSE_ViewImage_Sponsor(filename,copyright) 
{
   	show = 'image_sponsorship.htm?prefix='+filename
	
	var n = window.open(show,'ViewImageSponsor','top=6,left=32,width=752,height=584,toolbar=no,status=no,directories=no,location=no,scrollbars=yes,menubar=no,resizable=no');
}

function BSE_EmbedFlashObj(swf, w, h, color, wmode) 
{
    document.write('<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=8,0,0,0" width='+w+' height='+h+'>\n');
	document.write('<param name="movie" value=' + swf +'> \n');
    document.write('<param name="quality" value="high"> \n');
	document.write('<param name="menu" value="false"> \n');
	document.write('<param name="allowScriptAccess" value="sameDomain"> \n');
	
	if (color != undefined)
		document.write('<param NAME="BGColor" value="' + color + '">');
		
	if (wmode != undefined)
		document.write('<param name="wmode" value="' + wmode + '">'); // transparent

    document.write('<embed src='+swf+' quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" width='+w+' height='+h+' allowScriptAccess="sameDomain" ></embed>');

    document.write('</object>\n');
}

//---------------------------------------------------------------------------------------------------------
//
//---------------------------------------------------------------------------------------------------------

function DivHide(id, hide)
{
	if (document.getElementById)
	{
		if (hide == true) 
			document.getElementById(id).style.display = 'none';
		else
			document.getElementById(id).style.display = 'block';
	}
}

//---------------------------------------------------------------------------------------------------------
//
//---------------------------------------------------------------------------------------------------------

function FloatingDiv(div_id, startX, startY, limit_up, verticalpos) // verticalpos "frombottom" or "fromtop"
{
	var ns = (navigator.appName.indexOf("Netscape") != -1);
	var d = document;
	
	function ml(id)
	{
		var el = d.getElementById?d.getElementById(id):d.all?d.all[id]:d.layers[id];
		if(d.layers)el.style = el;
		
		el.sP=function(x,y){this.style.left=x;this.style.top=y;};
		el.x = startX;
		
		if (verticalpos=="fromtop")
			el.y = startY;
		else
		{
			el.y = ns ? pageYOffset + innerHeight : document.body.scrollTop + document.body.clientHeight;
			el.y -= startY;
		}
		return el;
	}
	
	window.UpdateFloatingLayer=function(limit_up)
	{
		if (verticalpos=="fromtop")
		{
			var pY = ns ? pageYOffset : document.body.scrollTop;
			ftlObj.y += (pY + startY - ftlObj.y)/20;
		}
		else
		{
			var pY = ns ? pageYOffset + innerHeight : document.body.scrollTop + document.body.clientHeight;

			//----------------------------------------------------------
			// Per evitare che il layer finisca fuori dalla finestra quando 
			// questa viene ridotta oltre lo spazio occupato in altezza dal layer stesso.
			var cHeight = ns ? innerHeight : document.body.clientHeight
			if (cHeight < (startY + limit_up))
				pY = ns ? pageYOffset : document.body.scrollTop + (startY + limit_up);
			//----------------------------------------------------------
			
			var y_next = ftlObj.y + (pY - startY - ftlObj.y)/20;
			
			/*
			if (y_next > (offset_Y + limit_up))
				ftlObj.y += (pY - startY - ftlObj.y)/20;
			else
				ftlObj.y = (offset_Y + limit_up);
			*/
			
			ftlObj.y += (pY - startY - ftlObj.y)/20;
		}
		
		ftlObj.sP(ftlObj.x, ftlObj.y);
		setTimeout("UpdateFloatingLayer("+limit_up+")", 10);
	}
	
	ftlObj = ml(div_id);
	UpdateFloatingLayer(limit_up);
}
