Event.observe(window, 'load', initLightBox);
//Event.observe(window, 'mousemove', getCoords);

var overlay;
var lb;
var lightBoxShown;

var dinamicPopUp_timeout;
var moveDinPopUp_timeout;
var x;
var y;
var moveControl;
var lightbox_elements;

function setLightBoxElements(elements)
{
	lightbox_elements = elements;
}

function initLightBox(elements){
// Initialization section ***************************
	var bod 				= document.getElementsByTagName('body')[0];
	overlay		 			= document.createElement('div');
	overlay.id				= 'overlay';
	lb						= $('lightBox');
//	lb.id					= 'LoadingLightBox';
	bod.appendChild(overlay);
//	bod.appendChild(lb);
	lightBoxShown = false;
	x = 0;
	y = 0;
	moveControl = false;
}

function showLightBox(_width, _height){//alwaysOnTopMessage 
//	alert("test");
	var width = _width;
	var height = _height;
	
	var wx = 0;
	var hy = 0;
	var browser=navigator.appName;
	var b_version=navigator.appVersion;
	var version=parseFloat(b_version);
	if ( (browser=="Microsoft Internet Explorer") && (version>=4) ){
		x = document.body.scrollLeft;
		y = document.body.scrollTop; 
		wx = document.body.clientWidth;
		hy = document.body.clientHeight;
		// Hide Background ******************
			getScroll();
			prepareIE('100%', 'hidden');
			setScroll(0,0);
			hideSelects(true);
	}// if Microsoft Internet Explorer
	if ( browser=="Netscape" ){
		x = window.pageXOffset;
		y = window.pageYOffset; 
		wx = window.innerWidth;
		hy = window.innerHeight;
	}// if Netscape

		if (lb) {
		
			if ( !lightBoxShown ){
				overlay.style.display = "block";
				lightBoxShown = true;
			}
			
			lb.style.zindex=9999;
			lb.style.position="absolute";
			lb.style.left = x+(wx/2 - width/2);
			lb.style.top = y+(hy/2 - height/2);
			lb.style.display = 'block';
			lb.style.visibility = "visible";
			showLightBoxElements(false);
		}//if
		dinamicPopUp_timeout=setTimeout('showLightBox(' + width + ',' + height + ')',200);	
}

function hideLightBox(){

	if ( lb ){
		var browser=navigator.appName
		var b_version=navigator.appVersion
		var version=parseFloat(b_version)
		if ( (browser=="Microsoft Internet Explorer") && (version>=4) ){
			setScroll(0,this.yPos);
			prepareIE("auto", "auto");
			hideSelects(false);
		}
		clearTimeout(dinamicPopUp_timeout);
		clearTimeout(moveDinPopUp_timeout);
		lb.style.display = 'none';
		lb.style.visibility = "hidden";
		overlay.style.display = "none";
		lightBoxShown = false;
	}
}

	function prepareIE (height, overflow){
		var bod = document.getElementsByTagName('body')[0];
		bod.style.height = height;
		bod.style.overflow = overflow;
  
		var htm = document.getElementsByTagName('html')[0];
		htm.style.height = height;
		htm.style.overflow = overflow; 
	}
	
	// In IE, select elements hover on top of the lightbox
	function hideSelects(visible){
		selects = document.getElementsByTagName('select');
		for(i = 0; i < selects.length; i++) {
			selects[i].disabled = visible;
		}
	}
	
	// Taken from lightbox implementation found at http://www.huddletogether.com/projects/lightbox/
	function getScroll(){
		if (self.pageYOffset) {
			this.yPos = self.pageYOffset;
		} else if (document.documentElement && document.documentElement.scrollTop){
			this.yPos = document.documentElement.scrollTop; 
		} else if (document.body) {
			this.yPos = document.body.scrollTop;
		}
	}
	
	function setScroll(x, y){ window.scrollTo(x, y); }


// Loading *****************************

// **************************************************************************

/*
function openDinPopUp(resultDiv, _width, _height){// 
	var width = _width;
	var height = _height;
	var div = document.getElementById(resultDiv);
	var wx = 0;
	var hy = 0;
//	var x = 0;
//	var y = 0;
	var browser=navigator.appName
	var b_version=navigator.appVersion
	var version=parseFloat(b_version)
	if ( (browser=="Microsoft Internet Explorer") && (version>=4) ){
		x = document.body.scrollLeft;
		y = document.body.scrollTop; 
		wx = document.body.clientWidth;
		hy = document.body.clientHeight;
	}// if Microsoft Internet Explorer
	if ( browser=="Netscape" ){
		x = window.pageXOffset;
		y = window.pageYOffset; 
		wx = window.innerWidth;
		hy = window.innerHeight;

	}// if Netscape

		if (div) {
			div.style.left = x+(wx/2 - width/2);
			div.style.top = y+(hy/2 - height/2);
			div.className = 'POPUP_SHOW';
		//	document.body.className = 'HIDDEN_BODY';
		}//if
		dinamicPopUp_timeout=setTimeout('openDinPopUp("' + resultDiv + '", "' + width + '", "' + height + '")',200);
}

function closePDFPopUp(resultDiv){
	var div = document.getElementById(resultDiv);
	if (div) {
		stopMoveDinPopUp();
		clearTimeout(dinamicPopUp_timeout);
		div.className = 'POPUP_HIDE';
	}//if (div)
}//closePDFReportPopUp(resultDiv)
*/

function getCoords(event){
	x=event.clientX;
	y=event.clientY;
//	alert("X coords: " + x + ", Y coords: " + y);
//	getCoords_timeout=setTimeout('getCoords()',100);
//	document.getElementById('xcoord').innerHTML = x;
//	document.getElementById('ycoord').innerHTML = y;
}


function moveDinPopUp(){
	if ( moveControl ){
		clearTimeout(dinamicPopUp_timeout);
//		var div = document.getElementById(resultDiv);
		if (lb) {
			lb.style.left = x-15;
			lb.style.top = y-15;
		//	lb.className = 'POPUP_SHOW';
		}//if
		moveDinPopUp_timeout=setTimeout('moveDinPopUp()',10);
	}else{ stopMoveDinPopUp(); }
}

function stopMoveDinPopUp(){ clearTimeout(moveDinPopUp_timeout); }

function move(){ moveControl = !moveControl; }

function showLightBoxElements(visible)
{
	if ( lightbox_elements )
	{
		for (var i = 0; i < lightbox_elements.length; i++)
		{
			var element = document.getElementById(lightbox_elements[i]);
			if ( element )
			{
				element.disabled = visible;
			}// if ( element )
		}// for i
	}
}

//***********************************************************************************
