function getElement(E) {
	if(document.all!=null) return document.all[E];
	else if(document.layers) return null;
	else return document.getElementById(E);
}

function getY(Element)
{
	if(Element==null) return 0;
	return Element.offsetTop + getY(Element.offsetParent);
}

function getX(Element)
{
	if(Element==null) return 0;
	return Element.offsetLeft + getX(Element.offsetParent);
}

function setOpacity(Element,Level)
{
	if(Level==1) MozLevel = 0.99;
	else MozLevel = Level;
	
	Element.style.opacity = Level;
	Element.style.MozOpacity = MozLevel;
	Element.style.KhtmlOpacity = Level;
	Element.style.filter = "alpha(opacity=" + (Level * 100) + ")";
}

// Help Box Stuff
var HeadingHelp = null;
var ActiveTopic = 0;
var AJAXHelpRequest = null;
var HelpCloseCode = "<div class='small_right'><a href='javascript:HideHelp()'>Close</a></div>";

function ShowHelp(Topic,Link)
{
	E = getElement("HelpWindow");	
	L = getElement(Link);
	if(E!=null && L!=null) PositionAndShowHelp(E,L);
	ActiveTopic = Topic;
	
	if(HeadingHelp==null) {	
		if(E!=null) E.innerHTML = HelpCloseCode + "Loading...";
		
		if(AJAXHelpRequest==null) {
			if(window.XMLHttpRequest) {
				http_request = new XMLHttpRequest();
				if(http_request.overrideMimeType)
					http_request.overrideMimeType('text/xml');
			}
			else if(window.ActiveXObject) {
				try {
					http_request = new ActiveXObject("Msxml2.XMLHTTP");
				}
				catch (e) {
					try {
						http_request = new ActiveXObject("Microsoft.XMLHTTP");
					}
					catch (e) {}
				}
			}
			
			if(!http_request) {
				if(E!=null) E.innerHTML = HelpCloseCode + "Could not load help.";
				return;
			}

			AJAXHelpRequest = http_request;			
			http_request.onreadystatechange = LoadHelp;
			http_request.open('GET','http://www.greensignalstocks.com/gls/templates/HeadingHelp.html', true);
			http_request.send(null);
		}
	}
	else {
		if(E!=null) E.innerHTML = HelpCloseCode + HeadingHelp[Topic];
	}
}

function PositionAndShowHelp(E,L) {
	Left = getX(L);
	Top = getY(L) + L.offsetHeight;
	if(document.all) {
		if(Left + E.offsetWidth > document.body.clientWidth)
			Left = document.body.clientWidth - E.offsetWidth - 5;
	}
	else {
		if(Left + E.offsetWidth > document.width)
			Left = document.width - E.offsetWidth - 5;
	}
	
	E.style.left = Left;
	E.style.top = Top;
	E.style.visibility = "visible";
}

function LoadHelp() {

	E = getElement("HelpWindow");	

	if(AJAXHelpRequest.readyState==4) {
		if(AJAXHelpRequest.status!=200) {
			if(E!=null) E.innerHTML = HelpCloseCode + "Could not load help.";
		}
		else {
			eval(AJAXHelpRequest.responseText);
			E.innerHTML = HelpCloseCode + HeadingHelp[ActiveTopic];
		}
		AJAXHelpRequest = null;
	}
}

function HideHelp() {
	E = getElement("HelpWindow");
	if(E!=null) E.style.visibility = "hidden";
}
