var docI= document.getElementById;
var docL= document.layers;
var docA= document.all;
var mainLink;
var settime;
var subNav = new Object;
var swapped = new Array();
var nRef;

function getObj(ref){
  return ( (docI && document.getElementById(ref)) ? document.getElementById(ref) :
	   (docA && document.all[ref])            ? document.all[ref]            :
	   (docL && document.layers[ref])         ? document.layers[ref]         : null);
}

function showList(ref) {
	var obj= getObj(ref);
	if(subNav.ref) {
		hideList();
	}
	subNav.ref = ref;
	if(settime) {clearTimeout(settime)};
	obj.style.visibility = 'visible';
}

function hideList() {
	var obj = getObj(subNav.ref);
	obj.style.visibility = 'hidden';
	for(var i=0; i<swapped.length; i++) {
		if(swapped[i] != mainLink) resetImage(swapped[i]);
	}
	swapped = new Array();
}

function setTimer() {
	settime = setTimeout('hideList()',100);
}


function resetTimer(){
	if(settime) {clearTimeout(settime)};
}

function showSelected(ref) {
	swapped.push(ref);
	var obj = getObj(ref);
	if(!obj.oClassName) obj.oClassName = obj.className;
	obj.className = 'selected';
	resetTimer();

}

function resetImage(ref) {
	var obj = getObj(ref);
	if(!obj.oClassName) return;
	obj.className = 'no';
}

function setMainLink(ref) {
	mainLink = ref;
}
