//addEvent is defined in the IE dropdown fix, already linked.

myLib={
	cancelClick:function(e){//so we skip re-loading the page
	if(!e){var e = window.event;}//some browers have a predefined e for event
		//first the IE version
		e.cancelBubble = true;
		e.returnValue = false;
	
		//other browsers
		if (e.stopPropagation) {
			e.stopPropagation();
			e.preventDefault();
		}
	
	//alert('cancelicious');
	return false;
	},

	hideThis:function(target) {
//	alert('the target class name was'+target.className);
	
	if(target.className=='hider visible'){
		target.className=target.className.replace(" visible", " hidden");
	}else{
		target.className+=" hidden";
	}
//	alert('and now it is'+target.className);
	/*
		if(window.ActiveXObject){//test for IE, who cares if it also catches Opera
			target.style.setAttribute('cssText', 'display:none');
		}else{
			target.setAttribute('style', 'display:none;');
		}
	*/
	},
	
	showThis:function(target) {
//	alert('This function is named showThis.  the target class name was'+target.className);
	target.className=target.className.replace(" hidden", " visible");
//		alert('and now it is'+target.className);
	/*
		if(window.ActiveXObject){
			target.style.setAttribute('cssText', 'display:block;');
		}else{
			target.setAttribute('style', 'display:block;');
		}
	*/
	},
	
	
	getTarget:function(e){
		var target = window.event ? window.event.srcElement : e ? e.target :null;
		if(!target){return false;}
		if(target.nodeName.toLowerCase() !='a'){target = target.parentNode;}
		return target;
	}
	
	

	
};

function wakeup(){
//alert('I want some coffee.');
	allDivs = document.getElementsByTagName('div');
	for(d=0; d<allDivs.length; d++){
		if(allDivs[d].className=='hider'){
			allDivs[d].className+=" hidden";
		}
	}
	
	findLinks();
}

addEvent(window, 'load', wakeup, false); 
		
function findLinks(){
	topRows = new Array();
	arrayIndex = 0;
	allDivs = document.getElementsByTagName('div');
	for(i=0;i<allDivs.length; i++){
		if(allDivs[i].className=='showoff'){
			topRows[arrayIndex]=allDivs[i];
			arrayIndex++;
		}
	}
	topRowLinks = new Array();
	anotherIndex = 0;
	for (j=0; j<topRows.length; j++){
		topRowLinks[anotherIndex] = topRows[j].getElementsByTagName('a')[0];
		anotherIndex++;
	}
	
	for(k=0; k<topRowLinks.length; k++){
		addEvent(topRowLinks[k], 'click', myLib.cancelClick, false);
		addEvent(topRowLinks[k], 'click', toggler, false);
	}

}//end findLinks



function toggler(caller){
	//if(!e){var e = window.event;}//some browers have a predefined e for event

theItem = myLib.getTarget(caller).parentNode.parentNode.parentNode.parentNode;

suddenlyAppears = theItem.lastChild;

if(suddenlyAppears.nodeType==3){//no text nodes allowed
		suddenlyAppears = suddenlyAppears.previousSibling;
		/*
		if(suddenlyAppears.nodeType == 3){
			suddenlyAppears = container.lastChild.previousSibling.previousSibling;
			if(suddenlyAppears.nodeType == 3){
				suddenlyAppears = container.lastChild.previousSibling.previousSibling.previousSibling;
			}
		}	*/
	}
	/*
	alert('you have targeted an '+suddenlyAppears);
	alert('its class name is '+suddenlyAppears.className);
*/


if(suddenlyAppears.className.indexOf(' hidden')>=0){
	myLib.showThis(suddenlyAppears);
}else{
	myLib.hideThis(suddenlyAppears);
}
/*
	if(showState == false){
		myLib.showThis(suddenlyAppears);
		showState = true;
	}else{
		myLib.hideThis(suddenlyAppears);
		showState = false;
	}
*/	
	
}