//==============================================

// Dropdown menus

//==============================================

ypSlideOutMenu.Registry = []

ypSlideOutMenu.aniLen = 200

ypSlideOutMenu.hideDelay = 100

ypSlideOutMenu.minCPUResolution = 10

function ypSlideOutMenu(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 = "ypSlideOutMenu_"+id

		eval(this.gRef+"=this")

		ypSlideOutMenu.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:visible; }')

		d.write('#' + this.id + 'Container, #' + this.id + 'Content { position:absolute; ')

		d.write('width:' + width + 'px; ')

		d.write('clip:rect(0 ' + width + 'px' + ' auto ' + ' 0); ')

		d.write('}')

		d.write('</style>')

		this.load()

	}

}



ypSlideOutMenu.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) / ypSlideOutMenu.aniLen / ypSlideOutMenu.aniLen 

	if (this.ns4) this.menu.captureEvents(Event.MOUSEOVER | Event.MOUSEOUT);

	this.menu.onmouseover = new Function("ypSlideOutMenu.showMenu('" + this.id + "')")

	this.menu.onmouseout = new Function("ypSlideOutMenu.hideMenu('" + this.id + "')")

	this.endSlide()

	}

}



ypSlideOutMenu.showMenu = function(id) {

	var reg = ypSlideOutMenu.Registry

	var obj = ypSlideOutMenu.Registry[id]

	if (obj.container) {

	obj.over = true

	for (menu in reg) if (id != menu) ypSlideOutMenu.hide(menu)

	if (obj.hideTimer) { reg[id].hideTimer = window.clearTimeout(reg[id].hideTimer) }

	if (!obj.open && !obj.aniTimer) reg[id].startSlide(true)

	}

}



ypSlideOutMenu.hideMenu = function(id) {

var obj = ypSlideOutMenu.Registry[id]

if (obj.container) {

	if (obj.hideTimer) window.clearTimeout(obj.hideTimer)

	obj.hideTimer = window.setTimeout("ypSlideOutMenu.hide('" + id + "')", ypSlideOutMenu.hideDelay);

	}

}



ypSlideOutMenu.hide = function(id) {

	var obj = ypSlideOutMenu.Registry[id]

	obj.over = false

	if (obj.hideTimer) window.clearTimeout(obj.hideTimer)

	obj.hideTimer = 0

	if (obj.open && !obj.aniTimer) obj.startSlide(false)

}



ypSlideOutMenu.prototype.startSlide = function(open) {

	this[open ? "onactivate" : "ondeactivate"]()

	this.open = open

	if (open) this.setVisibility(true)

	this.startTime = (new Date()).getTime() 

	this.aniTimer = window.setInterval(this.gRef + ".slide()", ypSlideOutMenu.minCPUResolution)

}

ypSlideOutMenu.prototype.slide = function() {

	var elapsed = (new Date()).getTime() - this.startTime

	if (elapsed > ypSlideOutMenu.aniLen) this.endSlide()

	else {

		var d = Math.round(Math.pow(ypSlideOutMenu.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)

	}

}



ypSlideOutMenu.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)

	}

}



ypSlideOutMenu.prototype.setVisibility = function(bShow) { 

	var s = this.ns4 ? this.container : this.container.style

	s.visibility = bShow ? "visible" : "hidden"

}



ypSlideOutMenu.prototype.moveTo = function(p) { 

	this.style[this.orientation == "h" ? "left" : "top"] = this.ns4 ? p : p + "px"

}



ypSlideOutMenu.prototype.getPos = function(c) {

	return parseInt(this.style[c])

}



ypSlideOutMenu.prototype.onactivate = function() { }

ypSlideOutMenu.prototype.ondeactivate = function() { }



//This sets the size and position of each drop-down - left, top, width, height.

new ypSlideOutMenu("menu1", "down", -240, 19, 480, 100),

new ypSlideOutMenu("menu2", "down", -117, 19, 460, 100),

new ypSlideOutMenu("menu3", "down", 72, 19, 350, 100),

new ypSlideOutMenu("menu4", "down", 253, 19, 175, 100),

new ypSlideOutMenu("menu5", "down", 409, 19, 175, 100),

new ypSlideOutMenu("menu6", "down", 518, 19, 175, 100),

new ypSlideOutMenu("menu7", "down", 518, 19, 175, 100),

new ypSlideOutMenu("menu8", "down", 518, 19, 175, 100),

new ypSlideOutMenu("menu9", "down", 308, -100, 260, 100),

new ypSlideOutMenu("menu10", "down", 517, -100, 207, 100)

new ypSlideOutMenu("menu11", "down", 351, -100, 327, 100)

//==============================================

// Clear Box

//==============================================

function clearBox(inputbutton, fillValue){

	if (inputbutton.value==fillValue) {

		inputbutton.value=''

	}

}

function fillBox(inputbutton, fillValue){

	if (inputbutton.value=="") {

		inputbutton.value=fillValue

	}

}

//==============================================





//==============================================

//Error Handler

//==============================================

function errorhandler() { 

	return true; 

}

//window.onerror=errorhandler;

//==============================================



//==============================================

//Add Category Check

//==============================================

function AddCategoryCheck(sCategoryButton, sText, sURL) {



	var sCategory = document.forms.CategoryForm.Category.value

	if (sCategory  != '') {

		document.forms.CategoryForm.action = sURL + '?PM=' + sCategoryButton

		document.forms.CategoryForm.submit();

	} 

	else {

		alert('You Must Enter an ' + sText);	

	}

	return false;

}

//==============================================



//==============================================

// Delete Check

//==============================================

function deleteCheck(sURL) {

	var confirmDelete = confirm("Are you sure you want to delete this item? \n ")

	if (confirmDelete == true) {

		document.forms[0].action = sURL + '?PM=Delete'

		document.forms[0].submit();

	} 

	return false;

}

//==============================================



//==============================================

//Link Delete

//==============================================

function linkdeleteCheck(sType, sItem, sURL) {

	

	var sType

	var sItem

	var confirmDelete = confirm("Delete This Item?")

	if (confirmDelete == true) {

		document.location = sURL + '?PM=delete' + sType + '&' + sType + '=' + sItem

	}

	else {

		

	}

}

//==============================================

//==============================================

// Open Scrubber

//==============================================

	function openScrubber() {

		var popupWin = window.open ('scrubber.asp', '400x500', 'toolbar=no,location=no,status=no,directories=no,menubar=yes,scrollbars=no,resizable=no,width=500,height=550');

		popupWin.opener.top.name ="windowOpener";

		popupWin.focus();

	}	

//==============================================
