<!-- conceal
// Javascript DHTML Library
// Copyright 2002 Monte Thompson
// Created 11/05/2002

var allTimer 
var intWidth
var lastMenu

/* Define the menu element: Object Name, Object name (no identifier), Div ID, number of items, number of child items,parent */
function layerObj(self,label,name,intItems,intChild,onBgColor,offBgColor,brdColor,imgParent)	{
	this.css = (ns4) ? document.layers[name]:document.getElementById(name).style		// Set css object
	this.elm = (ns4) ? document.layers[name]:document.getElementById(name)				// Set element object
	this.elm.css = (ns4) ? document.layers[name]:document.getElementById(name).style	// Set css object
	this.elm.self = self						// The name of the object.
	this.elm.label = label						// Object name, without individual numbers.
	this.elm.name = name						// Name of Div for this object.
	this.elm.items = intItems					// Number of items contained in this bar or menu.
	this.elm.child = intChild					// Number of menu items for this object.
	this.elm.imgParent = imgParent
	this.elm.offBgColor = offBgColor			// Background color for "Off" state of menu.  Only applicable with text menus.
	this.elm.onBgColor = onBgColor				// Background color for "On" state of menu.  Only applicable with text menus.
	this.elm.brdColor = brdColor				// Border color for this menu.
	this.elm.onmouseover = mouseOver			// Function to call on mouseover
	this.elm.onmouseout  = mouseOut				// Function to call on mouseout
	this.elm.showmenu = showMenu
	this.elm.hidemenu = hideMenu
	this.elm.hidemenunotimer = hideMenuNoTimer
}

function showMenu(menu)	{
	if (lastMenu == menu.elm.name)	{
		if (allTimer)	{clearTimeout(allTimer);allTimer=null}		// If timer has been set, clear it.  Mouseover occurred before menu could be hidden.
	}
	else if (lastMenu && lastMenu != menu.elm.name)	{				// If lastMenu exists,
		if (allTimer)	{clearTimeout(allTimer);allTimer=null}		// If timer has been set, clear it.  Mouseover occurred before menu could be hidden.
		objId = eval(lastMenu+"1")									// Get lastMenu, convert to object.
		objId = eval(objId)											// Set lastMenu name for hiding.
		objId.elm.hidemenunotimer()									// Hide lastMenu using no timer.
	}
	for(i = 1; i < menu.elm.items + 1; i++) {						// Loop for number of elements in menu.
		if (ns4)	{parentX = document.images[menu.elm.imgParent].x; parentY = document.images[menu.elm.imgParent].y;}
		else		{
			el = document.images[menu.elm.imgParent]
			for(var parentX = 0,parentY = 0; el; el = el.offsetParent) {
				parentX += el.offsetLeft
				parentY += el.offsetTop
			}
		}
		intWidth = (ie) ? document.body.clientWidth:window.innerWidth
		if (parseInt(parentX + 130) > intWidth)	{					// Menu is too far to the right.
			intImgWidth = document.images[menu.elm.imgParent].width
			parentX = parseInt((parentX + intImgWidth) - 130)
		}
		objId = eval(menu.elm.label + i)							// Add number to element name = Div name.
		objId.css.left = parentX - 5								// Set left position of element.
		if (i == 1)		{
			objId.css.top = parseInt((parentY + 15) + (14 * i))
			secondPos = parseInt((parentY + 15) + 14)
		}
		else	objId.css.top = (ns4) ? secondPos + (21 * (i - 1)): secondPos + (19 * (i - 1))	// Set top position of element.
		if (ns4)	objId.css.bgColor = objId.elm.offBgColor		// Set background color for "Off" state in Netscape.
		else	objId.css.backgroundColor = objId.elm.offBgColor	// Set background color for "Off" state in IE.
		objId.css.borderColor = objId.elm.brdColor					// Set menu border color.
		objId.css.visibility = visible								// make menu visible.
	}
	lastMenu = menu.elm.label										// Set lastMenu to equal this menu.
}

function hideMenu()	{
	if (lastMenu)	{
		if (allTimer)	{
			objId = eval(lastMenu + "1")
			for(i = 1; i < objId.elm.items+1; i++) {					// Loop for number of elements in menu.
				objId = eval(lastMenu + i)								// Add one to element string to set properties for that element
				objId.elm.css.visibility = hidden						// make menu hidden.
			}
		}
		else	{allTimer = setTimeout("hideMenu()",300)}				// Set timeout to allow for accidental mouseovers.
	}
}

function hideMenuNoTimer()	{
	objId = eval(lastMenu + "1")
	for(i = 1; i < objId.elm.items+1; i++) {						// Loop for number of elements in menu.
		objId = eval(lastMenu + i)									// Add one to element string to set properties for that element
		objId.elm.css.visibility = hidden							// make menu hidden.
	}
}

function mouseOver()	{
	if (this.child)	{										// If this element has a menu,
		this.x = this.css.left								// Set left position to same as image.
		this.y = this.css.top								// Set top position to same as image.
		this.showmenu()										// Call showMenu.
	}
	if (this.child == 0 && this.onBgColor != 0)	{			// If this has no children and has a background color, it's a menu
		if (allTimer)	{clearTimeout(allTimer);allTimer=null}	// If timer has been set, clear it.  Mouseover occurred before menu could be hidden.
		if (ns4)	this.css.bgColor = this.onBgColor		// Set background color for "On" state in Netscape.
		else	this.css.backgroundColor = this.onBgColor	// Set background color for "Off" state in IE.
	}
}

function mouseOut()	{
	if (allTimer)	{clearTimeout(allTimer);allTimer=null}	// If timer has been set, clear it.  Mouseover occurred before menu could be hidden.
	if (this.child == 0 && this.onBgColor != 0)	{			// If this has no children and has a background color, it's a menu
		if (ns4)	this.css.bgColor = this.offBgColor		// Set background color for "Off" state in Netscape.
		else	this.css.backgroundColor = this.offBgColor	// Set background color for "Off" state in IE.
		this.hidemenu()
	}
	else	{
		if (this.child) {									// If this element has children,
			objId = eval(this.name+"1")						// Get the element name plus one for element properties.
			objId.elm.hidemenu()							// Call hideMenu
		}
	}
}

 // reveal -->