var openDiv = "";
var showDropDowns = true;

function getElementHeight(Elem) 
{
	
		if(document.getElementById) {
			var elem = document.getElementById(Elem);
		} else if (document.all){
			var elem = document.all[Elem];
		}
		
		xPos = elem.offsetHeight;
	
		return xPos;
}


function isOut(name, event)
{
    var rvalue = true;
    if (document.all)
    {
        rvalue = !GetElementById(name).contains(window.event.toElement);
    }
    else if (document.getElementById)
    {
        //for (all in event) document.write(all + " = "+event[all]+"<br>")
        var elm = event.relatedTarget;
        var nav = document.getElementById(name);
        while (elm.parentNode != null)
        {
            if (elm.id==name) rvalue = false;
            elm = elm.parentNode;
        }
    }
    return rvalue;
}

function CloseIfOut(name, event)
{
    if (!document.layers && isOut(name, event))
    {
        Close(name); 
    }
}

function Open(anchor, name)
{
    if (openDiv != "") Close(openDiv);
    openDiv = name;
	var el = GetElementById(name);
	MoveElementTo(el, GetElementX(anchor) + 10, 1*GetElementY(anchor) - 1*getElementHeight(name));	 		
	
	ShowElement(el); 
	
	// Basic IE check
	if(document.all)
	{
			if (navigator.appVersion.indexOf("MSIE")!=-1)
			{
				var temp=navigator.appVersion.split("MSIE");
				//version=parseFloat(temp[1]);
				//version=parseFloat(temp[1].split(";")[0]);
				var version = 1 * temp[1].split(";")[0];
				if (version >= 5.0)
				{
					GetElementById(name).style.marginTop = 0;
					GetElementById(name).style.marginLeft = -10;
				}
				
				
			}
			else
			{
			GetElementById(name).style.marginLeft = -11;
			}
			
	}	
}

function OpenKey()
{
    //do nothing, dummy function for compliance issue
    //with device dependant event handler in template menus
}

function Close(name)
{
   // MoveElementTo(GetElementById(name), -200, 0);
    HideElement(GetElementById(name));
	HideIFrame();
    openDiv = "";
}

function ShowIFrame(name)
{
	var el = GetElementById(name);
	var iframe;
	
	try
	{
		iframe = GetElementById("iframe");		
		iframe.style.top = GetInt(el.style.top) + GetInt(el.style.marginTop) + "px";
		iframe.style.left = GetInt(el.style.left) + GetInt(el.style.marginLeft) + "px";
		iframe.style.width = "190px";		
		//iframe.style.height = el.height;
		iframe.style.height = el.childNodes.length * 20;
		el.style.zIndex = 100;
		iframe.style.zIndex = el.style.zIndex - 1;
		iframe.style.display = "block";
	}
	catch(e)
	{
		el.insertAdjacentHTML("beforeBegin", '<IFRAME title="System fix only. No content rendered." id="iframe" style="DISPLAY: none; LEFT: 0px; POSITION: absolute; TOP: 0px;" src="about:blank;" frameBorder="0" scrolling="no"></IFRAME>');
		iframe = document.getElementById("iframe");
	}
	

}

function GetInt(obj)
{
	obj = obj.replace("px", "");
	return 1*obj;
}

function HideIFrame()
{
	try
	{
		var iframe = GetElementById("iframe");
		iframe.style.display = "none";
	}
	catch(e)
	{
			// no iframe existed...
	}
}



function CloseTheOpenDiv()
{
    if (openDiv!="") Close(openDiv);
}

function GetElementX(obj)
{
    var curleft = 0;
    if (document.getElementById || document.all)
    {
        while (obj.offsetParent)
        {
            curleft += obj.offsetLeft;
            obj = obj.offsetParent;
        }
	
    }
    else if (document.layers) curleft += obj.x;
    return curleft;
}

function GetElementY(obj)
{
    var curtop = 0;
    if (document.getElementById || document.all)
    {
        while (obj.offsetParent)
        {
            curtop += obj.offsetTop
            obj = obj.offsetParent;
        }
    }
    else if (document.layers) curtop += obj.y;
    return curtop;
}

function GetElementHeight(elm)
{
    return document.layers ? elm.height * 1 : elm.style.height * 1;
}

function ShowElement(elm)
{
    if (showDropDowns)
    {
	   document.layers ? elm.visibility="show" : elm.style.visibility="visible";
	}
}

function HideElement(elm)
{
    document.layers ? elm.visibility="hide" : elm.style.visibility="hidden";
}

function MoveElementTo(elm, x, y)
{
	document.layers ? elm.left=x : elm.style.left=x + "px";
    document.layers ? elm.top=y : elm.style.top=y + "px";	
}

function GetElementById(id)
{
    return document.layers ? document.layers[id] : document.getElementById(id);
}

function disableDropDownNav()
{
    showDropDowns = false;
}

var OpenLinksDiv = "";

function ToggleDisplay(id)
{
	var el = GetElementById(id);
	
	if(OpenLinksDiv != "")
	{
		if(OpenLinksDiv.id != id)
			document.layers ? OpenLinksDiv.display = "none" : OpenLinksDiv.style.display = "none";
	}

	OpenLinksDiv = el;
	
	if(document.layers)
	{
		el.display == "block" ? el.display = "none" : el.display = "block";
	}
	else
	{
		el.style.display == "block" ? el.style.display = "none" : el.style.display = "block";
	}
}

var OpenArrow = "";

function ToggleArrow(id)
{
	var el = GetElementById(id);
		
	var rightKeyWord = "right";
	var downKeyWord = "down";
	
	var src = el.src;
	
	var rightSrc = src.replace(downKeyWord,rightKeyWord);
	var downSrc = src.replace(rightKeyWord,downKeyWord);	
	var re = new RegExp(downKeyWord);
	
	el.src.match(re) ? el.src = rightSrc : el.src = downSrc;
	
	if(OpenArrow != "")
	{
		if(OpenArrow.id != id)
			OpenArrow.src = rightSrc;
	}

	OpenArrow = el;
	//el.src == downSrc ? el.src = rightSrc : el.src = downSrc;
	
}


function clearText(thefield){
	if (thefield.defaultValue==thefield.value)
	thefield.value = ""
}
function GotoURL(url) {
        	if (url!="NONE") 
        	{document.location.href=url;}
}



function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}