
var openLists = [];
function compactMenu(oID,oAutoCol,oPlMn){
	if(!document.getElementsByTagName || !document.childNodes || !document.createElement){ 
		return; 
	}
	var baseElement = document.getElementById(oID);
	if(!baseElement){
		return;
	}
	compactChildren( baseElement, 0, oID, oAutoCol, oPlMn, baseElement.tagName.toUpperCase() );
}

function compactChildren(oOb, oLev, oBsID, oCol, oPM, oT){
	//window.alert(oCol)
	if(!oLev){
		oBsID = escape(oBsID); 
		if(oCol){
			openLists[oBsID] = [];
		}
	}
	for(var x = 0, y = oOb.childNodes; y[x]; x++){
		if(y[x].tagName){
		//for each immediate LI child
			var theNextUL = y[x].getElementsByTagName( oT )[0];
			if(theNextUL){
				//collapse the first UL/OL child
				theNextUL.style.display = 'none';
				//create a link for expanding/collapsing
				var newLink = document.createElement('A');
				newLink.setAttribute( 'href', '#' );
				newLink.style.textDecoration = 'none';
				newLink.onclick = new Function('clickSmack(this,' + oLev + ',\'' + oBsID + '\',' + oCol + ',\'' + escape(oT) + '\');return false;' );
				//wrap everything up to the child U/OL in the link
				var theT = y[x].innerHTML.toUpperCase().indexOf('<'+oT);
				var theA = y[x].innerHTML.toUpperCase().indexOf('<A');
				var theHTML = y[x].innerHTML.substr(0, ( theA + 1 && theA < theT ) ? theA : theT );
				while(!y[x].childNodes[0].tagName || (y[x].childNodes[0].tagName.toUpperCase() != oT && y[x].childNodes[0].tagName.toUpperCase() != 'A')){
					y[x].removeChild(y[x].childNodes[0]); 
				}
				y[x].insertBefore(newLink,y[x].childNodes[0]);
				y[x].childNodes[0].innerHTML = oPM + theHTML.replace(/^\s*|\s*$/g,'');
				//Added by b. Milligan 3/11/04 to Give Plus Minus images unique names.
				y[x].childNodes[0].innerHTML = y[x].childNodes[0].innerHTML.replace('plusMinus', 'plusMinus' + x);
				compactChildren(theNextUL, oLev + 1, oBsID, oCol, oPM, oT);
			}
		}
	}
}
function clickSmack( oThisOb, oLevel, oBsID, oCol, oT ){
	if(oThisOb.blur){
		oThisOb.blur(); 
	}
	oThisOb = oThisOb.parentNode.getElementsByTagName(unescape(oT))[0];
	if(oCol){
		for(var x = openLists[oBsID].length - 1; x >= oLevel; x-=1){ 
			if( openLists[oBsID][x] ){
				openLists[oBsID][x].style.display = 'none'; 
				if(oLevel != x){
					openLists[oBsID][x] = null;
				}
			}
		}
		if(oThisOb == openLists[oBsID][oLevel]){
			openLists[oBsID][oLevel] = null;
		}else{
			oThisOb.style.display = 'block'; openLists[oBsID][oLevel] = oThisOb;
		}
	}else{
		oThisOb.style.display = (oThisOb.style.display == 'block') ? 'none' : 'block';
	}
}
