resized=false;
// Find the X position of an element
// Arguments:
//      0: Object:			HTML element
function findX(objElement) {
	var lngLeft = 0;
	// Not Netscape
	if (objElement.offsetParent) {
		// Add up the horizontal offsets by scrolling through the parent
		// objects and finding each of their offsets
		while (objElement.offsetParent) {
			lngLeft += objElement.offsetLeft;
			objElement = objElement.offsetParent;
		}
	// Netscape
	} else if (objElement.x) {
		// Use Netscape's X property
		lngLeft += objElement.x;
	}
	return lngLeft;
}

// Find the Y position of an element
// Arguments:
//      0: Object:			HTML element
function findY(objElement) {
	var lngTop = 0;
	// Not Netscape
	if (objElement.offsetParent) {
		// Add up the vertical offsets by scrolling through the parent
		// objects and finding each of their offsets
		while (objElement.offsetParent) {
			lngTop += objElement.offsetTop;
			objElement = objElement.offsetParent;
		}
	// Netscape
	} else if (objElement.y) {
		// Use Netscape's Y property
		lngTop += objElement.y;
	}
	return lngTop;
}

// Cross-platform div/layer finder
// Arguments:
//      0: String:			ID/name of the div/layer
function getLayer(strLayer) {
	// XML-based browsers (IE 4+/Netscape 6+/Mozilla/Gecko)
	if (document.getElementById(strLayer)) {
		return document.getElementById(strLayer);
	// IE
	} else if (document.all) {
		return document.all[strLayer];
	// Netscape
	} else if (document.layers) {
		return document.layers[strLayer];
	}
}

// Cross-platform element finder
// Arguments:
//      0: String:			ID/name of the element
function getElement(strElement) {
	// XML-based browsers (IE 4+/Netscape 6+/Mozilla/Gecko)
	if (document.getElementById(strElement)) {
		return document.getElementById(strElement);
	// IE
	} else if (document.all) {
		return document.all[strElement];
	// Netscape
	} else if (document.layers) {
		return document[strElement];
	}
}

// Show a div/layer
// Arguments:
//      0: Object:			HTML element
//      1: String:			ID/name of the div/layer
//		2: Long Integer:	Left offset in pixels relative to the left of the HTML element
//		3: Long Integer:	Top offset in pixels relative to the top of the HTML element
function showLayer(objElement, strLayer, lngOffX, lngOffY) {

	var objLayer = getLayer(strLayer);
	if(objLayer == null)
	    return;
	
	if (objLayer.offsetParent) {
		objLayer.style.left = (findX(objElement) + lngOffX) + "px";
		objLayer.style.top = (findY(objElement) + lngOffY) + "px";
		objLayer.style.visibility = "visible";
	} else if (objLayer.x && objLayer.y) {
		objLayer.x = (findX(objElement) + lngOffX) + "px";
		objLayer.y = (findY(objElement) + lngOffY) + "px";
		objLayer.show();
	}
	objLayer.style.zIndex = 10000;
	resized = true;
}

// Hide a div/layer
// Arguments:
//      0: String:			ID/name of the div/layer
function hideLayer(strLayer) {
	var objLayer = getLayer(strLayer);
	if(objLayer == null)
	    return;
	    
	objLayer.style.zIndex = 0;
//	pause(1, strLayer);
	(document.layers) ? objLayer.hide() : objLayer.style.visibility = "hidden";
}

// Pause
// Arguments:
//      0: Long Integer:	Number of milliseconds to wait before hiding layer
//      1: String:			ID/name of the div/layer
function pause(lngMS, strLayer) {
	lngInterval = 100;
	if (lngMS > 0) {
		toTimer = setTimeout("pause(" + (lngMS - lngInterval) + ", '" + strLayer + "')", lngInterval);
	} else {
		clearTimeout(toTimer);
		var objLayer = getLayer(strLayer);
		objLayer.style.zIndex = 0;
		(document.layers) ? objLayer.hide() : objLayer.style.visibility = "hidden";
	}
}




