var disappeardelay=500; //menu disappear speed onMouseout (in miliseconds)
var hidemenu_onclick="yes"; //hide menu when user clicks within menu?
var menuIsVisible=false;
var scrolled = false;
var browserName = "";
var browserVersion= 0;

function GetBrowser() {	
	browserName=navigator.appName; 

	if (browserName=="Microsoft Internet Explorer") {
		//var searchText = "MSIE 7";
		if (navigator.userAgent.match("MSIE 7") || navigator.userAgent.match("MSIE 8")) { // Client uses IE7,
			browserVersion = 7
		}
		else {
			browserVersion = 6
		}
	}
}

var ie4=document.all;
var ie5=document.all && !window.opera;
var ns6=document.getElementById&&!document.all;


if (ie4||ns6) {
	document.write('<div id="mainMenu" class="bgColor2" style="visibility:hidden;" onMouseover="clearhidemenu()" onMouseout="dynamichide(event)"><\/div>');
	document.write('<div id="subMenu" class="bgColor1" onMouseover="clearhidemenu();" onMouseout="dynamichide2(event)"><\/div>');
}

//function created to hide the submenu when a menuitem has none
function menuactive(activation) {
	if (typeof menuobj!="undefined" && activation!=0) { //if activation == 0 submenu closes when mouseout mainmenu
		menuobj.style.visibility="hidden";
		//undefine object menuobject by placing an empty var in it
		var empty;
		menuobj=empty;
	}
}


function getposOffset(what, offsettype) {
	var totaloffset=(offsettype=="left")? what.offsetLeft : what.offsetTop;
	var parentEl=what.offsetParent;
	while (parentEl!=null){
		totaloffset=(offsettype=="left")? totaloffset+parentEl.offsetLeft : totaloffset+parentEl.offsetTop;
		parentEl=parentEl.offsetParent;
	}
	return totaloffset;
}
			
function getposOffset2(what, offsettype){
	var totaloffset=(offsettype=="left")? what.offsetLeft : what.offsetTop;
	var parentEl=what.offsetParent;
	while (parentEl!=null){
		totaloffset=(offsettype=="left")? totaloffset+parentEl.offsetLeft : totaloffset+parentEl.offsetTop;
		parentEl=parentEl.offsetParent;
	}
	return totaloffset;
}
	
	
function showhide(obj, e, visible, hidden, menuwidth){
	if (ie4||ns6)
	dropmenuobj.style.left=dropmenuobj.style.top=-500
	if (menuwidth!=""){
		dropmenuobj.widthobj=dropmenuobj.style
		dropmenuobj.widthobj.width=menuwidth
	}
	if (e.type=="click" && obj.visibility==hidden || e.type=="mouseover") {
		obj.visibility=visible
		menuIsVisible = true
	}
	else if (e.type=="click") {
		obj.visibility=hidden
		menuIsVisible = false
	}
}

function showhide2(obj, e, visible, hidden, menuwidth){
	if (ie4||ns6)
	menuobj.style.left=menuobj.style.top=-500
	if (menuwidth!=""){
		menuobj.widthobj=menuobj.style
		menuobj.widthobj.width=menuwidth
	}
		if (e.type=="click" && obj.visibility==hidden || e.type=="mouseover") {
			obj.visibility=visible
			menuIsVisible = true
		}
	else if (e.type=="click") {
		obj.visibility=hidden
		menuIsVisible = false
	}
}
		

function iecompattest(){
	return (document.compatMode && document.compatMode!="BackCompat")? document.documentElement : document.body
}
		
function clearbrowseredge(obj, whichedge){
	var edgeoffset=0
	if (whichedge=="rightedge"){
		var windowedge=ie4 && !window.opera? iecompattest().scrollLeft+iecompattest().clientWidth-15 : window.pageXOffset+window.innerWidth-15
		dropmenuobj.contentmeasure=dropmenuobj.offsetWidth
		if (windowedge-dropmenuobj.x < dropmenuobj.contentmeasure) edgeoffset=dropmenuobj.contentmeasure-obj.offsetWidth
	}
	else {
		var topedge=ie4 && !window.opera? iecompattest().scrollTop : window.pageYOffset
		var windowedge=ie4 && !window.opera? iecompattest().scrollTop+iecompattest().clientHeight-15 : window.pageYOffset+window.innerHeight-18
		dropmenuobj.contentmeasure=dropmenuobj.offsetHeight
		if (windowedge-dropmenuobj.y < dropmenuobj.contentmeasure){ //move up?
			edgeoffset=dropmenuobj.contentmeasure+obj.offsetHeight
			if ((dropmenuobj.y-topedge)<dropmenuobj.contentmeasure) //up no good either?
			edgeoffset=dropmenuobj.y+obj.offsetHeight-topedge
		}
	}
	return edgeoffset
}
	
function clearbrowseredge2(obj, whichedge){
	var edgeoffset=0
	if (whichedge=="rightedge"){
		var windowedge=ie4 && !window.opera? iecompattest().scrollLeft+iecompattest().clientWidth-15 : window.pageXOffset+window.innerWidth-15
		dropmenuobj.contentmeasure=dropmenuobj.offsetWidth
		if (windowedge-dropmenuobj.x < dropmenuobj.contentmeasure)
		edgeoffset=dropmenuobj.contentmeasure-obj.offsetWidth
	}
	else {
		var topedge=ie4 && !window.opera? iecompattest().scrollTop : window.pageYOffset
		var windowedge=ie4 && !window.opera? iecompattest().scrollTop+iecompattest().clientHeight-15 : window.pageYOffset+window.innerHeight-18
		dropmenuobj.contentmeasure=dropmenuobj.offsetHeight
		if (windowedge-dropmenuobj.y < dropmenuobj.contentmeasure){ //move up?
			edgeoffset=dropmenuobj.contentmeasure+obj.offsetHeight
			if ((dropmenuobj.y-topedge)<dropmenuobj.contentmeasure) //up no good either?
			edgeoffset=dropmenuobj.y+obj.offsetHeight-topedge
		}
	}	
	return edgeoffset
}


function clickreturnvalue(){
	if (ie4||ns6) return false
	else return true
}
	
function contains_ns6(a, b) {
	while (b.parentNode)
	if ((b = b.parentNode) == a)
	return true;
	return false;
}
	
function dynamichide(e) {
	if (ie4&&!dropmenuobj.contains(e.toElement))
	delayhidemenu()
	else if (ns6&&e.currentTarget!= e.relatedTarget&& !contains_ns6(e.currentTarget, e.relatedTarget))
	delayhidemenu()
}

function dynamichide2(e) {
	if (ie4&&!menuobj.contains(e.toElement))
	delayhidemenu2()
	else if (ns6&&e.currentTarget!= e.relatedTarget&& !contains_ns6(e.currentTarget, e.relatedTarget))
	delayhidemenu2()
}
			
function delayhidemenu(){
	if (ie4||ns6)
	delayhide=setTimeout("hidemenu()",disappeardelay)
}

function delayhidemenu2(){
	if (ie4||ns6)
	delayhide=setTimeout("hidemenu2()",disappeardelay)
}
		
function clearhidemenu(){
	if (typeof delayhide!="undefined")
	clearTimeout(delayhide)
}
		
if (hidemenu_onclick=="yes") document.onclick=hidemenu
var defaultMenuWidth="150px"

function dropdownmenu(obj, e, menucontents , menuwidth) {
	if (scrolled)
	{
		document.write("called");
	}
	var scrollY = 0
	var browserName = navigator.appName;
	var browserVersion=parseInt(GetBrowserVersion());
	if (browserName == "Microsoft Internet Explorer")
	{
		if (browserVersion < 7)
		{
			scrollY = 0			
		}
		else {
			scrollY = GetScrollY();			
		}
	}
	else {
		scrollY = GetScrollY();
	}	
	if(typeof menuobj!="undefined") menuobj.style.visibility="hidden"
	if (window.event) event.cancelBubble=true
	else if (e.stopPropagation) e.stopPropagation()
	clearhidemenu()
	dropmenuobj=document.getElementById? document.getElementById("mainMenu") : mainMenu
	populatemenu(menucontents)
	if (ie4||ns6){
		showhide(dropmenuobj.style, e, "visible", "hidden", "150px")
			dropmenuobj.x=getposOffset(obj, "left")
		dropmenuobj.y=getposOffset(obj, "top")
		dropmenuobj.style.left=dropmenuobj.x-clearbrowseredge(obj, "rightedge")-17+"px"
		dropmenuobj.style.top=dropmenuobj.y-clearbrowseredge(obj, "bottomedge")+obj.offsetHeight+7+scrollY+"px"
		DisableScrolling();
	}	
	return clickreturnvalue()
}

function dropmenu2(obj, e, menucontents, optWidth) {
	if (window.event) event.cancelBubble=true
	else if (e.stopPropagation) e.stopPropagation()
	clearhidemenu()
	menuobj=document.getElementById? document.getElementById("subMenu") : subMenu
	populatemenu2(menucontents)
	if (ie4||ns6){
		showhide2(menuobj.style, e, "visible", "hidden", "150px")
		menuobj.x=getposOffset2(obj, "left")
		menuobj.y=getposOffset2(obj, "top")
		menuobj.style.left=menuobj.x-clearbrowseredge2(obj, "rightedge")+157+"px"
		menuobj.style.top=menuobj.y-clearbrowseredge2(obj, "bottomedge")+obj.offsetHeight-23+"px"		
	}
	return clickreturnvalue()
}

function populatemenu(what){
	if (ie4||ns6) dropmenuobj.innerHTML=what.join("")
}	
			
function populatemenu2(what){
	if (ie4||ns6)
	menuobj.innerHTML=what.join("")
}

function hidemenu2(){
	if (typeof menuobj!="undefined"){
		if (ie4||ns6)
		menuobj.style.visibility="hidden"
		dropmenuobj.style.visibility="hidden"
		EnableScrolling()
	}
}

function hidemenu(e){
	if (typeof dropmenuobj!="undefined"){
		//if (ie4||ns6) {
			if (typeof menuobj!="undefined") {
				if (menuobj.style.visibility=="visible") {
					dropmenuobj.style.visibility="hidden";
					menuobj.style.visibility="hidden";
				}
			}
			else dropmenuobj.style.visibility="hidden";
		//}
		menuIsVisible = false
		EnableScrolling();
	}
}

function GetScrollY() {

	var scrOfY = 0;

	if( typeof( window.pageYOffset ) == 'number' ) {
		//Netscape compliant
		scrOfY = window.pageYOffset;		
	} 
	else if( document.body && ( document.body.scrollLeft || document.body.scrollTop ) ) {
			//DOM compliant
			scrOfY = document.body.scrollTop;			
	} else if( document.documentElement && ( document.documentElement.scrollLeft || document.documentElement.scrollTop ) ) {
		//IE6 standards compliant mode
		scrOfY = document.documentElement.scrollTop;		
	}
	return scrOfY;
}



function  GetBrowserVersion() {
	var useragent = navigator.userAgent;
	var bName = (useragent.indexOf('Opera') > -1) ? 'Opera' : navigator.appName;
	var pos = useragent.indexOf('MSIE');
	if (pos > -1) {
		bVer = useragent.substring(pos + 5);
		var pos = bVer.indexOf(';');
		var bVer = bVer.substring(0,pos);
	}
	var pos = useragent.indexOf('Opera');
	if (pos > -1)	{
		bVer = useragent.substring(pos + 6);
		var pos = bVer.indexOf(' ');
		var bVer = bVer.substring(0, pos);
	}
	if (bName == "Netscape") {
		var bVer = useragent.substring(8);
		var pos = bVer.indexOf(' ');
		var bVer = bVer.substring(0, pos);
	}
	if (bName == "Netscape" && parseInt(navigator.appVersion) >= 5) {
		var pos = useragent.lastIndexOf('/');
		var bVer = useragent.substring(pos + 1);
	}
	return bVer;
}


function DisableScrolling() {

	var html = document.getElementById("mainPageHtml");   
	var body = document.getElementById("mainPageBody");

	html.style.overflowY ="scroll";
	body.style.overflowY ="hidden";

	if ( (browserName == "Microsoft Internet Explorer") && (browserVersion == 7) ) {
		html.style.overflowY ="hidden";
		body.style.overflowY ="scroll";	
	}	
}

function EnableScrolling() {
	var html = document.getElementById("mainPageHtml");   
	var body = document.getElementById("mainPageBody");

	html.style.overflowY ="hidden";
	body.style.overflowY ="scroll";	

	if ( (browserName == "Microsoft Internet Explorer") && (browserVersion == 7) ) {
		html.style.overflowY ="scroll";
		body.style.overflowY ="hidden";
	}
}

