var ns = (navigator.appName.indexOf("Netscape") != -1);
var d = document;
var border=false;
function JSFX_FloatDiv(id, sx, sy, border)
{
	var el=d.getElementById?d.getElementById(id):d.all?d.all[id]:d.layers[id];
	
	var px = document.layers ? "" : "px";
	
	if(border==null)border=true;
	
	window[id + "_obj"] = el;
	
	//if(d.layers)el.style=el;
	
	el.cx = el.sx = sx;
	
	el.cy = el.sy = sy;
	
	el.sP = function(x,y){
		this.style.left=x+'px';
		this.style.top=y+'px';
		showToolbarOverlay(this);
	};
	
	el.floatIt=function()
	{
	
		try {
		
			var pX, pY;
			pX = (this.sx >= 0) ? 0 : ns ? innerWidth : 
			document.documentElement && document.documentElement.clientWidth ? 
			document.documentElement.clientWidth : document.body.clientWidth;
			
			pY = ns ? pageYOffset : document.documentElement && document.documentElement.scrollTop ? 
			document.documentElement.scrollTop : document.body.scrollTop;
			
			if(this.sy<0) 
				pY += ns ? innerHeight : document.documentElement && document.documentElement.clientHeight ? 
				
			document.documentElement.clientHeight : document.body.clientHeight;
			this.cx += (pX + this.sx - this.cx)/8;this.cy += (pY + this.sy - this.cy)/5;
			
			if (Math.round(this.cy) == pY){
				this.cy = pY;
				setTimeout(this.id + "_obj.floatIt()", 15);
				return el;
			}
			
			if (this.cy - 1 >= floatStart){
				this.sP(this.cx - (border && !document.all ? 2 : 1), (this.cy - floatStart) + 1)
				if(border) this.style.border = '1px solid gray';
				showToolbarOverlay(this);
			}else{
				this.sP(0, 0);
				if(border) this.style.border = '';
				var overs = document.getElementById('toolbaroverlay');
				if(overs) overs.style.display='none';
			}
			setTimeout(this.id + "_obj.floatIt()", 15);
		
		} catch(err) { 
			//alert(err.description) ;
		}
			
	}
	return el;
}
function showToolbarOverlay(obj)
{
	try {
		var overid = 'toolbaroverlay';
		if (!document.getElementById(overid)){
			var iframe = document.createElement('iframe');
			iframe.id = overid;
			iframe.style.position = 'absolute';
			iframe.style.border = '0px';
			iframe.style.left = '0px';
			iframe.style.top = '0px';
			iframe.style.zIndex = '990';
			iframe.setAttribute('frameborder','0');
			iframe.setAttribute('scrolling','no');
			iframe.src='javascript: false;'
			document.body.appendChild(iframe);
			//	document.body.insertAdjacentHTML("afterBegin","<iframe id='" + overid + 
			//	"' src='javascript:false;' style='position:absolute;left:0px;top:0x;z-index:990;display:none' scrolling='no' frameborder='0'></iframe>");
			
		}
		var over = document.getElementById(overid);
		if (!over) return;
		var overs = over.style;
		if(!overs) return;
		overs.top = getFloatPixelTop(obj,'BODY')-1;
		overs.left = getFloatPixelLeft(obj,'BODY')+1;		
		over.width = obj.offsetWidth - (document.all ? 1 : 2);
		over.height = obj.offsetHeight + 1;
		overs.display = 'block';
	} catch(err) { 
			//alert('ShowToolbarOverlay: ' + err.description) ;
	}
}

function getFloatPixelTop(elem, tagName) {
	if (elem == null)
		return -1;
	try {
		var top = 0;
		while (elem.tagName != tagName) {
			top += elem.offsetTop;
			elem = elem.offsetParent;
			if(elem==null)break;
		}
		return top; // - 1;
	} catch(err){ err.description+='>getPixelTop';throw err;}
}
function getFloatPixelLeft(elem, tagName) {
	try{
		var left = 0;
		while (elem.tagName != tagName) {
			left += elem.offsetLeft;
			elem = elem.offsetParent;
			if(elem==null)break;
		}
		return left;
	} catch(err){ err.description+='>getPixelLeft';throw err;}
}

  
