function closeBox(obj, d)
{
	if (typeof(obj) == 'string')
	{
		obj = document.getElementById(obj);
	}
	
	obj.style.display = "none";
	if (typeof(d) != 'undefined') Element.remove(d);
}

function openBox(hook, msg, obj, l, t, d)
{
	if (typeof(hook) == 'string')
	{
		hook = document.getElementById(hook);
	}

	var box = document.getElementById(obj);
	var oBody = (document.compatMode && document.compatMode!="BackCompat" ) ? document.documentElement : document.body;
	var msg = msg ? msg : "";

	var intLayerWidth = 310;
	var intLayerIntval = 0;
	var intArrowIntval = 15;
	
	var intHookLeft = getOffsetLeft(hook);
	var intHookTop = getOffsetTop(hook);

	if (intHookLeft + intLayerWidth > oBody.scrollWidth)
	{
		intLayerLeft = oBody.scrollWidth - intLayerWidth - 5;
		intArrowLeft = intHookLeft-intLayerLeft+intLayerIntval+intArrowIntval;
	}
	else 
	{
		intLayerLeft = intHookLeft+intLayerIntval;
		intArrowLeft = intArrowIntval;
	}
	
	intLayerTop = intHookTop + t;

	box.style.left = intLayerLeft - l + "px";
	box.style.top = intLayerTop + "px";
	document.getElementById("loginArrow").style.marginLeft = intArrowLeft + "px";
	if (msg) document.getElementById("loginMsg").innerHTML = msg;
	
	var oFloating;

	box.style.display = "block";
	oFloating = DisplayFloating(d, true, '#000', 10);

	oFloating.onmousedown = function()
	{
		 if (typeof(d) != 'undefined') Element.remove(d);
		 box.style.display = "none";
	}
	
	//var userid = document.getElementById('txtUserID');
	//if ( userid && typeof(userid) != 'undefined' ) userid.focus();
}

function DisplayFloating(id, bShow, strColor, intOpacity)
{
	 var intOpacity = intOpacity ? intOpacity : 20 ;
	 var intVal = bShow ? intOpacity : 0 ;
	 var strColor = strColor ? strColor : '#5e5e5e' ;
 
	 var oBody = (document.compatMode && document.compatMode!="BackCompat" ) ? document.documentElement : document.body;
 
	 if ( bShow == null || bShow == true )
	 {
		 DisplayFloating(id, false) ;
		 // set styles
		 var oStyle = {
			 opacity: (intVal / 100),
			 filter: 'alpha(opacity=' +intVal + ')',
			 position: 'absolute',
			 backgroundColor: strColor,
			 top: 0,
			 left: 0,
			 zIndex: 1000,
			 width: oBody.scrollWidth + 'px',
			 height: ( oBody.scrollHeight > oBody.clientHeight ? oBody.scrollHeight : oBody.clientHeight  ) + 'px',
			 textAlign: 'center'
		 };

		 // creates DIV Element
		 var divBack = document.createElement('div') ;
		 divBack.setAttribute('id', id) ;
		 document.getElementsByTagName("body")[0].appendChild(divBack) ;
 
		 Element.setStyle( divBack, oStyle ) ;
		 return divBack;
	 }
}

function getOffsetTop(obj)
{ 
	return obj ? obj.offsetTop + getOffsetTop(obj.offsetParent) : 0;
}

function getOffsetLeft(obj)
{
	return obj ? obj.offsetLeft + getOffsetLeft(obj.offsetParent) : 0;
}
