
var maxLayers = 13;
var maxSubMenus = 10;
var maxTime = 1000;	// in milliseconds
var timerMain;

function getLayer(layerName) {
	var currObj;
	var layerOffset;
	var currLayerObj;

	layerOffset = layerName.replace("Layer", "");
	layerOffset = parseInt(layerOffset) * 2;

	if (document.all) {
		eval("currLayerObj = document.all." + layerName);
		if (currLayerObj) {
			eval("currObj = document.all." + layerName + ".style");
		}

	} else if (document.getElementById) {
		currLayerObj = document.getElementById(layerName);
		if (currLayerObj) {
			currObj = document.getElementById(layerName).style;
		}

	} else {
		eval("currObj = document.layers." + layerName);
	}

	return currObj;
}

function closeChildren(layerName) {
	var currChildObj;
	var currChildName;

	if (layerName != "") {
		for (var i=1; i <= maxSubMenus; i++) {
			currChildName = layerName + "_" + i;
			currChildObj = getLayer(currChildName);
			if (currChildObj) {
				currChildObj.visibility = "hidden";

				// close children
				closeChildren(currChildName);
			}
		}
	}
}

function showLayer(layerName) {
	var currParent;
	var currSibling;
	var i;

	clearTimeout(timerMain);
	var currObj = getLayer(layerName);
	currParent = getParentLayer(layerName);

	// hide top level layers
	hideAllMenus(layerName);

	// ensure siblings off
	for (var i=1; i <= maxSubMenus; i++) {
		currSibling = currParent + "_" + i;
		if (getLayer(currSibling)) {
			hideLayer(currSibling);
		}
	}

	// ensure parent on
	//currParent = getParentLayer(layerName);
	if (currParent != "") {
		showLayer(currParent);
	}

	// turn current layer on
	if (currObj) {
		currObj.visibility = "visible";
	}

}

function hideLayer(layerName) {
	var currParent;
	var currObj = getLayer(layerName);

	// ensure parent off
	currParent = getParentLayer(layerName);
	if (currParent != "") {
		hideLayer(currParent);
	}

	// turn current layer off
	if (currObj) {
		currObj.visibility = "hidden";
	}

}

function hideAllMenus(layerName) {
	for (var i=1; i <= maxLayers ; i++) {
		if (getParentLayer(layerName) != ("Layer" + i)) {
			hideLayer("Layer" + i);
		}
	}
}

function setMenuTimeout(layerName) {
	timerMain = setTimeout("hideLayer('" + layerName + "')", maxTime);
}

function getParentLayer(layerName) {
	var retValue;
	var currPos;

	retValue = "";

	currPos = layerName.lastIndexOf("_");
	if (currPos != -1) {
		retValue = layerName.substring(0, currPos);
	}

	return retValue;
}

function openwindow (currPage, pageWidth, pageHeight) {
	var winWidth, winHeight;

	winWidth = 800;
	if (pageWidth > 0) {
		winWidth = pageWidth;
	}

	winHeight = 600;
	if (pageHeight > 0) {
		winHeight = pageHeight;
	}

	if (currPage != "") {
		wPopWindow = window.open(currPage, "wPopWindow", "resizable=yes,location=yes,menubar=yes,scrollbars=yes,status=yes,width=" + winWidth + ",height=" + winHeight + "");
		if (wPopWindow)
		{
			wPopWindow.focus();
		}
	}
}

function openvideowindow(currPage) {
	if (currPage != "") {
		wVideoWindow = window.open(currPage, "wVideoWindow", "resizable=no,location=no,menubar=no,scrollbars=yes,width=780,height=580");
		wVideoWindow.focus();
	}
}

function showpedigree (currid)
{
	if (currid != "") {
		wPedigreeURL = "pedigree.asp?id=" + currid;
		wPedigreeWindow = window.open(wPedigreeURL, "wPedigreeWindow", "resizable=yes,location=yes,scrollbars=yes,toolbar=yes,menubar=yes,width=700,height=500");
		wPedigreeWindow.focus();
	}
}

function printpedigree (currid)
{
	if (currid != "") {
		wPedigreeURL = "printpedigree.asp?id=" + currid;
		wPedigreeWindow = window.open(wPedigreeURL, "wPedigreeWindow", "resizable=yes,location=yes,scrollbars=yes,toolbar=yes,menubar=yes,width=640,height=480");
		wPedigreeWindow.focus();
	}
}

function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_findObj(n, d) { //v4.0
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && document.getElementById) x=document.getElementById(n); return x;
}

function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}


