// Javascript to handle dynamic layers for IE, Netscape 4.x, and Netscape 6.0 browsers
// Alan H. Davis,  adavis@ibota.com,  www.ibota.com,  ibota, inc.

var browser = "";
if( ( document.all ) && ( parseInt(navigator.appVersion) >= 4 ) ) {
	browser = "IE";
} else if( document.layers ) {
	browser = "NS4";
} else if( navigator.vendor == "Netscape6" ) {
	browser = "NS6";
}
ver4 = (browser != "") ? true : false;
if( ver4 ) {
	with (document) {
		write("<STYLE TYPE='text/css'>");
		if( browser == "IE" ) {
			write(".layer {display:none}")
		} else {
			write(".layer {position:absolute; left:230px; top:170; z-index:0; visibility:hidden}");
			write(".regular {position:absolute; z-index:0; visibility:hidden}");
		}
		write("</STYLE>");

	}
}

var layerCount = 0;

// Returns the number of layers to hide and show
// Note: This must be in a function to work.
function countLayers() {
	var count = 0;
	var layer;
	if( browser == "IE" ) {
		divList = document.all.tags("DIV");
		for( var i = 0; i < divList.length; i++ ) {
			if( divList(i).className == "layer" ) {
				count++;
			}
		}
	} else if( browser == "NS4" ) {
		for( var i=0; i < document.layers.length; i++ ) {
			var layer = document.layers[i];
			if( layer.id.indexOf("layer") != -1 ) {
				count++;
			}
		}
	} else { // browser == "NS6"
		while( document.getElementById( "layer" + count ) ) {
			count++;
		}
	}
	return count;
}

function showAll(){
	var whichEl;
	if( browser == "NS4" ) {
		for( var i = 0; i < layerCount; i++ ) {
			whichEl = document.layers[i];
			whichEl.visibility = "show";
		}
	} else { // browser == "NS6"
		for( var i = 0; i < layerCount; i++ ) {
			document.getElementById( "layer" + i ).style.visibility = "visible";
		}
	}
}

function arrange() {
	var whichEl;
	if( browser == "NS4" ) {
		var nextY = document.layers[0].pageY; // + document.layers[0].document.height;
		for( var i = 0; i < layerCount; i++ ) {
			whichEl = document.layers[i];
			if( whichEl.visibility != "hide" ) {
				whichEl.pageY = nextY;
				nextY += whichEl.document.height;
			}
		}
	} else { // browser == "NS6"
		var nextY = document.getElementById( "layer0" ).style.pageY; // + document.layers[0].document.height;
		for( var i = 0; i < layerCount; i++ ) {
			whichEl = document.getElementById( "layer" + i ).style;
			if( whichEl.visibility != "hidden" ) {
				whichEl.pageY = nextY;
				nextY += whichEl.document.height;
			}
		}
	}
}

// shows the first layer and hides the rest
function initIt() {
	if (!ver4) return;

	layerCount = countLayers();
	var whichEl;
	if( browser == "IE" ) {
		layer0.style.display = "block";
		for( i = 1; i < layerCount; i++ ) {
			whichEl = eval( "layer" + i );
			whichEl.style.display = "none";
		}
	} else {
		if( browser == "NS4" ) {
			document.layer0.visibility = "show";
			for( i = 1; i < layerCount; i++ ) {
				whichEl = eval( "document.layer" + i );
				whichEl.visibility = "hide";
			}
		} else { // browser == "NS6"
			document.getElementById( "layer0" ).style.visibility = "visible";
			for( i = 1; i < layerCount; i++ ) {
				document.getElementById( "layer" + i ).style.visibility = "hidden";
			}
		}
		arrange();
	}
}

function showIt(el) {
	if (!ver4) return;
	var whichEl;
	if( browser == "IE" ) {
		whichEl = eval("layer" + el);
		if (whichEl.style.display == "none") {
			whichEl.style.display = "block";
		}
	} else if( browser == "NS4" ) {
		whichEl = eval("document.layer" + el);
		if (whichEl.visibility == "hide") {
			whichEl.visibility = "show";
		}
	} else { // browser == "NS6"
		whichEl = document.getElementById( "layer" + el ).style;
		if (whichEl.visibility == "hidden") {
			whichEl.visibility = "visible";
		}
	}
}

function hideIt(el) {
	if (!ver4) return;
	var whichEl;
	if( browser == "IE" ) {
		whichEl = eval("layer"+el);
		if (whichEl.style.display == "block") {
			whichEl.style.display = "none";
		}
	} else if( browser == "NS4" ) {
		whichEl = eval("document.layer" + el);
		if (whichEl.visibility == "show") {
			whichEl.visibility = "hide";
		}
	} else { // browser == "NS6"
		whichEl = document.getElementById( "layer" + el ).style;
		if (whichEl.visibility == "visible") {
			whichEl.visibility = "hidden";
		}
	}
}

function hideAndShow(el) {
	if (!ver4) return;
	for( var i = 0; i < layerCount; i++ ) {
		if( el == i ) {
			showIt( i );
		} else {
			hideIt( i );
		}
	}
	if( browser != "IE" ) {
		arrange();
	}
}

onload = initIt;

