dropDownMenu.Registry = []
dropDownMenu.aniLen = 850
dropDownMenu.hideDelay = 400
dropDownMenu.minCPUResolution = 10
function dropDownMenu(id, dir, left, top, width, height)
{
this.ie = document.all ? 1 : 0
this.ns4 = document.layers ? 1 : 0
this.dom = document.getElementById ? 1 : 0
if (this.ie || this.ns4 || this.dom) {
this.id = id
this.dir = dir
this.orientation = dir == "left" || dir == "right" ? "h" : "v"
this.dirType = dir == "right" || dir == "down" ? "-" : "+"
this.dim = this.orientation == "h" ? width : height
this.hideTimer = false
this.aniTimer = false
this.open = false
this.over = false
this.startTime = 0
this.gRef = "dropDownMenu_"+id
eval(this.gRef+"=this")
dropDownMenu.Registry[id] = this
var d = document
d.write('<style type="text/css">')
d.write('#' + this.id + 'Container { visibility:hidden; ')
d.write('left:' + left + 'px; ')
d.write('top:' + top + 'px; ')
d.write('overflow:hidden; }')
d.write('#' + this.id + 'Container, #' + this.id + 'Content { position:absolute; ')
d.write('width:' + width + 'px; ')
d.write('height:' + height + 'px; ')
d.write('clip:rect(0 ' + width + ' ' + height + ' 0); ')
d.write('}')
d.write('</style>')
this.load()
}
}
dropDownMenu.prototype.load = function() {
var d = document
var lyrId1 = this.id + "Container"
var lyrId2 = this.id + "Content"
var obj1 = this.dom ? d.getElementById(lyrId1) : this.ie ? d.all[lyrId1] : d.layers[lyrId1]
if (obj1) var obj2 = this.ns4 ? obj1.layers[lyrId2] : this.ie ? d.all[lyrId2] : d.getElementById(lyrId2)
var temp
if (!obj1 || !obj2) window.setTimeout(this.gRef + ".load()", 100)
else {
this.container = obj1
this.menu = obj2
this.style = this.ns4 ? this.menu : this.menu.style
this.homePos = eval("0" + this.dirType + this.dim)
this.outPos = 0
this.accelConst = (this.outPos - this.homePos) / dropDownMenu.aniLen / dropDownMenu.aniLen 
if (this.ns4) this.menu.captureEvents(Event.MOUSEOVER | Event.MOUSEOUT);
this.menu.onmouseover = new Function("dropDownMenu.showMenu('" + this.id + "')")
this.menu.onmouseout = new Function("dropDownMenu.hideMenu('" + this.id + "')")
this.endSlide()
}
}
dropDownMenu.showMenu = function(id)
{
window.status = id
var reg = dropDownMenu.Registry
var obj = dropDownMenu.Registry[id]
if (obj.container) {
obj.over = true
for (menu in reg) if (id != menu) dropDownMenu.hide(menu)
if (obj.hideTimer) { reg[id].hideTimer = window.clearTimeout(reg[id].hideTimer) }
if (!obj.open && !obj.aniTimer) reg[id].startSlide(true)
}
}
dropDownMenu.hideMenu = function(id)
{
var obj = dropDownMenu.Registry[id]
if (obj.container) {
if (obj.hideTimer) window.clearTimeout(obj.hideTimer)
obj.hideTimer = window.setTimeout("dropDownMenu.hide('" + id + "')", dropDownMenu.hideDelay);
}
}
dropDownMenu.hide = function(id)
{
var obj = dropDownMenu.Registry[id]
obj.over = false
if (obj.hideTimer) window.clearTimeout(obj.hideTimer)
obj.hideTimer = 0
if (obj.open && !obj.aniTimer) obj.startSlide(false)
}
dropDownMenu.prototype.startSlide = function(open) {
this.open = open
if (open) this.setVisibility(true)
this.startTime = (new Date()).getTime() 
this.aniTimer = window.setInterval(this.gRef + ".slide()", dropDownMenu.minCPUResolution)
}
dropDownMenu.prototype.slide = function() {
var elapsed = (new Date()).getTime() - this.startTime
if (elapsed > dropDownMenu.aniLen) this.endSlide()
else {
var d = Math.round(Math.pow(dropDownMenu.aniLen-elapsed, 2) * this.accelConst)
if (this.open && this.dirType == "-") d = -d
else if (this.open && this.dirType == "+") d = -d
else if (!this.open && this.dirType == "-") d = -this.dim + d
else d = this.dim + d
this.moveTo(d)
}
}
dropDownMenu.prototype.endSlide = function() {
this.aniTimer = window.clearTimeout(this.aniTimer)
this.moveTo(this.open ? this.outPos : this.homePos)
if (!this.open) this.setVisibility(false)
if ((this.open && !this.over) || (!this.open && this.over)) {
this.startSlide(this.over)
}
}
dropDownMenu.prototype.setVisibility = function(bShow) { 
var s = this.ns4 ? this.container : this.container.style
s.visibility = bShow ? "visible" : "hidden"
}
dropDownMenu.prototype.moveTo = function(p) { 
this.style[this.orientation == "h" ? "left" : "top"] = p
}
dropDownMenu.prototype.getPos = function(c) {
return parseInt(this.style[c])
}

	var menus = [
		// drowdown menus for admin navigation
		new dropDownMenu("menu1", "down", 55,  87, 125, 300),
		new dropDownMenu("menu2", "down", 122, 87, 250, 250),
		new dropDownMenu("menu3", "down", 218, 87, 150, 250),
		new dropDownMenu("menu4", "down", 308, 87, 150, 250),
		new dropDownMenu("menu5", "down", 385, 87, 150, 250),		
		new dropDownMenu("menu6", "down", 470, 87, 370, 450)
	
	]
	for (var i = 0; i < menus.length; i++) {
		menus[i].onactivate = new Function("document.getElementById('act" + i + "').className='active';");
		menus[i].ondeactivate = new Function("document.getElementById('act" + i + "').className='';");
	}

