//==============================================
// 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", 50, 28, 175, 100),
new ypSlideOutMenu("menu2", "down", 132, 28, 175, 100),
new ypSlideOutMenu("menu3", "down", 229, 28, 175, 100),
new ypSlideOutMenu("menu4", "down", 295, 28, 175, 100),
new ypSlideOutMenu("menu5", "down", 409, 28, 175, 100),
new ypSlideOutMenu("menu6", "down", 518, 28, 175, 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();
	}	
//==============================================