var menuSetArray = new Array();
var menuElArray = new Array();
var delayHideAll;
/*
function openMenuAfterBuild() {
	for (var i=0; i<menuElArray.length; i++){
		
		el = document.getElementById(menuElArray[i]);
	}


}
*/
var openMenuIdOnLoad = '';

function buildMenuArray() {
	if(document.getElementById){
		//var openMenuIdOnLoad = '';
		
		// build menuSet array 
		var levelLoop = 1;
		do {
			var aEl = Array();
			aEl = getelementsbyclassname('menuSetL' + levelLoop, document.getElementById('mainMenuDiv'));

			for (var i=0; i<aEl.length; i++) {
				menuSetArray[menuSetArray.length] = aEl[i].id;
				//debug_(aEl[i].id);
			}
			levelLoop++;
		} while(aEl.length > 0);
		//END build menuSet array
		
		var levelLoop = 0;
		do {
			var aEl = Array();
			aEl = getelementsbyclassname('menuL' + levelLoop + '_off', document.getElementById('mainMenuDiv'));

			for (var i=0; i<aEl.length; i++) {
				menuElArray[menuElArray.length] = aEl[i].id;
				//find out element to open on load
				if (aEl[i].onclick != undefined && aEl[i].tagName != 'A') {
					var regStr = '.*window\.open.*[\'"](.*)[\'"],.*';
					var match_ = new RegExp(regStr, 'gim');
					var aRegMatch = new Array();

					aRegMatch = match_.exec(aEl[i].onclick);

					if (aRegMatch != null)
					if (aRegMatch[1] == window.location.pathname) {
						openMenuIdOnLoad = aEl[i].id;
					}
				} else if (aEl[i].href != undefined) {
					if (aEl[i].href == window.location) {
						openMenuIdOnLoad = aEl[i].id;
					}
				}
				//END find out element to open on load
			}
			levelLoop++;
		} while(aEl.length > 0);
		//alert(openMenuIdOnLoad);
		if (openMenuIdOnLoad != '') {
			openMenu(openMenuIdOnLoad);
		}
	}
}

function switchSub(elId) {
	if(document.getElementById){
		this.menuSetId = 'ms' + elId.substr(1);
		menuSetEl = document.getElementById(this.menuSetId);	
		if (menuSetEl.style.display != "block") {
			showSub(elId);
		} else {
			lastMarkPos = this.menuSetId.lastIndexOf('_');
			menuSetIdOneLEvelUp = this.menuSetId.substr(0,(lastMarkPos));
			hideSub(menuSetIdOneLEvelUp);
		}
	}
}

function showSub(elId) {
	if(document.getElementById){
		var submenu = document.getElementById(elId);
		submenu.style.display = "block";
	}		
}
function menu_on(elId){
	if (elId == '7'){
		if(document.getElementById){
		var menu = document.getElementById(elId);
		menu.style.background = "#0e558c";
		menu.style.borderBottom = "3px solid #0e558c"
	}
	}else{
	if(document.getElementById){
		var menu = document.getElementById(elId);
		menu.style.background = "#0e558c";
	}
	}
}
function menu_on_first(elId){
	if(document.getElementById){
		var menu = document.getElementById(elId);
		menu.style.background = "#0e558c url('/images/rob_over.gif') top left no-repeat";
	}
}
function menu_off(elId){
	if(document.getElementById){
		var menu = document.getElementById(elId);
		menu.style.background = "#bebebe";
		menu.style.border = "none";
		menu.className = "";
	}
}
function menu_off_first(elId){
	if(document.getElementById){
		var menu = document.getElementById(elId);
		menu.style.background = "#bebebe url('/images/rob.gif') top left no-repeat";
	}
}
//var menuTimer;
function hideSub(elId) {
	if(document.getElementById){
		var submenu = document.getElementById(elId);
		
		//menuTimer=setTimeout("cleartimer('"+elId+"')",2000);
		submenu.style.display = "none";
	}		
}
function cleartimer(elId){
	var submenu = document.getElementById(elId);
	submenu.style.display = "none";
	clearTimeout(menuTimer)
}
function holdOn(elId) {
	var aParents = new Array();

	aParents = getAllParents(elId);

	for (var i=0; i<aParents.length; i++) {
		if (aParents[i] != '') {
			el = document.getElementById(aParents[i]);
			if (el.src != undefined) {
				el.src = eval('img' + elId.substr(1) + '_on.src');
			}
			var replace_ = new RegExp ('_over', 'gi');
			className_ = el.className;
			el.className = className_.replace(replace_, '_on');	
		}
	}
}


function menuOver(elId) {
	el = document.getElementById(elId);
	if (el.src != undefined) {
		el.src = eval('img' + elId.substr(1) + '_over.src');
	}
	var replace_ = new RegExp ('_off', 'gi');
	className_ = el.className;
	el.className = className_.replace(replace_, '_over');	

	var replace_ = new RegExp ('_on', 'gi');
	className_ = el.className;
	el.className = className_.replace(replace_, '_over');	
}

function menuOn(elId) {
	el = document.getElementById(elId);
	if (el.src != undefined) {
		el.src = eval('img' + elId.substr(1) + '_on.src');
	}
	var replace_ = new RegExp ('_off', 'gi');
	className_ = el.className;
	el.className = className_.replace(replace_, '_on');	

	var replace_ = new RegExp ('_over', 'gi');
	className_ = el.className;
	el.className = className_.replace(replace_, '_on');	
}

function turnOff(elIdOn) {
	var turnThisOff;
	var thisHighlightAsOver;

	for (var i=0; i<menuElArray.length; i++){
		turnThisOff = false;
		thisHighlightAsOver = false;
		el = document.getElementById(menuElArray[i]);
		
		if (elIdOn != menuElArray[i]) {
			elSetId = 'ms' + menuElArray[i].substr(1);
			//if elSet dont exist
			if (!(elSet = document.getElementById(elSetId))) {
				turnThisOff = true;
			//if elSet is not desplayd
			} else if (elSet.style.display != "block") {
				turnThisOff = true;
			} else if (elSet.style.display == "block") {
				thisHighlightAsOver = true;
			}
		}
		
		if (thisHighlightAsOver) {
			var replace_ = new RegExp ('_over', 'gi') ;
			if (el.src != undefined) {
				el.src = eval('img' + el.id.substr(1) + '_on.src');
			}
			className_ = el.className;
			el.className = className_.replace(replace_, '_on');

			var replace_ = new RegExp ('_off', 'gi') ;
			className_ = el.className;
			el.className = className_.replace(replace_, '_on');
		}
		
		
		//turn off all _on and _over
		if (turnThisOff) {
			if (el.src != undefined) {
				el.src = eval('img' + el.id.substr(1) + '_off.src');
			}

			var replace_ = new RegExp ('_over', 'gi') ;
			className_ = el.className;
			el.className = className_.replace(replace_, '_off');

			var replace_ = new RegExp ('_on', 'gi') ;
			className_ = el.className;
			el.className = className_.replace(replace_, '_off');
		}
	}
}
/**
*turn off menu this menu, if this menu set is opened hold this on
*/
function turnOffThis(elId) {
	var turnOff = false;

	//alert(openMenuIdOnLoad +  '-' + elId);

	if (openMenuIdOnLoad != elId) {
		menuSetId = 'ms' + elId.substr(1);
		
		el = document.getElementById(elId);
		var replace_ = new RegExp ('_over', 'gi');
		className_ = el.className;
		
		if (inArray_(menuSetArray, menuSetId)) {
			var elSet = document.getElementById(menuSetId);
			if (elSet.style.display == "block") {
				if (el.src != undefined) {
					el.src = eval('img' + elId.substr(1) + '_on.src');
				}
				el.className = className_.replace(replace_, '_on');
			} else {
				turnOff = true;
			}
		} else {
			turnOff = true;
		}
	}
	
	if (turnOff) {
		if (el.src != undefined) {
			el.src = eval('img' + elId.substr(1) + '_off.src');
		}
		el.className = className_.replace(replace_, '_off');
	}
}



function openMenu(openId) {
	var aOpenIds = new Array();

	aOpenIds = getAllParents(openId);

	for (var i=0; i<aOpenIds.length; i++) {
		if (aOpenIds[i] != '') {
			showSub(aOpenIds[i]);
		}
	}
	showSub(openId);
}
function getAllParents(elId) {
	var aParents = new Array();
	
	lastMarkPos = elId.lastIndexOf('_');
	menuSetIdOneLevelUp = elId.substr(0,(lastMarkPos));
	
	do {
		elId = elId.substr(0,(lastMarkPos));
		aParents[aParents.length] = elId;
		lastMarkPos = elId.lastIndexOf('_');
	} while(elId.lastIndexOf('_') != -1);

	return aParents.reverse();
}




function hideAll(hideAllAfterMs) {
	delayHideAll = window.setTimeout('hideSub(null);turnOff();', hideAllAfterMs);
}

function resetHideAll() {
	window.clearTimeout(delayHideAll);
}



// function get elements by class name ... simiar to getElementsByTagName
// leave container arg out, and will default to document. 
function getelementsbyclassname(className,container)  
{  
  if (!container) {
  	container = document;
  }
  if (container.all) {
  	var all = container.all;
  } else {
  	var all = container.getElementsByTagName('*');  	
  }
  var arr = [] ; 
  for(var k=0;k<all.length;k++) {
    if(all[k].className == className) {
      arr[arr.length] = all[k]; 
     }
  }
  return arr;
}

function subStringCount(str_, subStr_) {
	count = 0;
	pos = str_.indexOf(subStr_);
	while(pos != -1) {
		count++;
		pos = str_.indexOf(subStr_,pos+1);
	}
	return count;
}

function inArray_(arr, el) {
	for (i = 0; i < arr.length; i++) {
		if (arr[i] == el) {
			return true;
		}
	}
}

function switchOver(num) {
	document['image'+num].src = eval("image" + num + "over.src");
}

function switchOff(num)	{
	if (num != menuHoldHiglighted) {
		document['image'+num].src = eval("image" + num + "off.src");
	}
}
