
// Menu's c/o www.youngpup.net
/*****************************************************
* ypSlideOutMenu
* 3/04/2001
*
* a nice little script to create exclusive, slide-out
* menus for ns4, ns6, mozilla, opera, ie4, ie5 on 
* mac and win32. I've got no linux or unix to test on but 
* it should(?) work... 
*
* Revised:
* - 08/29/2002 : added .hideAll()
*
* --youngpup--
*****************************************************/
ypSlideOutMenu.Registry = []
ypSlideOutMenu.aniLen = 250
ypSlideOutMenu.hideDelay = 100
ypSlideOutMenu.minCPUResolution = 10
// constructor
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
var strCSS = '<style type="text/css">';
strCSS += '#' + this.id + 'Container { visibility:hidden; '
strCSS += 'left:' + left + 'px; '
strCSS += 'top:' + top + 'px; '
strCSS += 'overflow:hidden; z-index:10000; }'
strCSS += '#' + this.id + 'Container, #' + this.id + 'Content { position:absolute; '
strCSS += 'width:' + width + 'px; '
strCSS += 'height:' + height + 'px; '
strCSS += 'clip:rect(0 ' + width + ' ' + height + ' 0); '
strCSS += '}'
strCSS += '</style>'
d.write(strCSS)
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 
// set event handlers.
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 + "')")
//set initial state
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.hideAll = function()
{
var reg = ypSlideOutMenu.Registry
for (menu in reg) {
ypSlideOutMenu.hide(menu);
if (menu.hideTimer) window.clearTimeout(menu.hideTimer);
}
}
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() { }

	// Menu configuration Options
	//var myOffset = -310;

		/*
		var myMenu1 = new ypSlideOutMenu("menu1", "down", 0, 100, 102, 200);
		var myMenu2 = new ypSlideOutMenu("menu2", "down", 0, 204, 102, 200);
		var myMenu3 = new ypSlideOutMenu("menu3", "down", 0, 306, 102, 200);
 		*/
 		
 		// the number you pass to initLeft doesn't matter since it will get
		// changed onactivate
		// left, from top, width, height
		
		var myMenu1 = new ypSlideOutMenu("menu1", "down", 0, 185, 190, 200); //View Products
//		var myMenu2 = new ypSlideOutMenu("menu2", "right", 0, 100, 150, 200); //View Products
		var myMenu3 = new ypSlideOutMenu("menu3", "down", 0, 185, 150, 200); //View Products
    
   		// for each menu, we set up the onactivate event to call repositionMenu with the amount offset from center, in pixels

if (navigator.appName == "Netscape"){

		myMenu1.onactivate = function() { repositionMenu(myMenu1, 41); }
//		myMenu2.onactivate = function() { repositionMenu(myMenu2, -30); }
		myMenu3.onactivate = function() { repositionMenu(myMenu3, 167); }
	
} else {
	
		myMenu1.onactivate = function() { repositionMenu(myMenu1,29); }
//		myMenu2.onactivate = function() { repositionMenu(myMenu2, -50); }
		myMenu3.onactivate = function() { repositionMenu(myMenu3,153); }

}
    		// this function repositions a menu to the speicified offset from center
		
		function repositionMenu(menu, offset)
		{
      
      		// the new left position should be the center of the window + the offset
		
		var newLeft = getWindowWidth() / 2 + offset;

      		// setting the left position in netscape is a little different than IE
			menu.container.style ? menu.container.style.left = newLeft + "px" : menu.container.left = newLeft;
		}
		 
    		// this function calculates the window's width - different for IE and netscape
		function getWindowWidth()
		{
			return window.innerWidth ? window.innerWidth : document.body.offsetWidth;
		}

function toggleClass(class1, class2){
	if (document.addtestimonial.name.value=='Name' || document.addtestimonial.name.value==''){
	//alert(class1);
	document.addtestimonial.name.className = class1;
		} else {
	//alert (class2);
	document.addtestimonial.name.className = class2;
	
			}
	}
	
// Sign Up Warning Function

function warn_about_username()
{
	alert("Please be sure to choose a different username for OPS then for system usage (ftp, mail, etc...)");


}
//Contact Help Desk popup
        function commentPopUp(theURL) {
            window.open(theURL,'comments','scrollbars=yes,resizable=no,width=300,height=200');
        }



/*PopUpAdvertisment*/

function getUSObj(name)
{
  if (document.getElementById) {
    this.obj = document.getElementById(name);
    this.style = document.getElementById(name).style;
  }
  else if (document.all) {
    this.obj = document.all[name];
    this.style = document.all[name].style;
  }
  else if (document.layers) {
    this.obj = document.layers[name];
    this.style = document.layers[name];
  }
}
function hideUSDiv(which)
{
  var x = new getUSObj(which);
  x.style.visibility = 'hidden';
}
function moveUSDiv(which, startx, starty, finishx, finishy, steps, speed)
{
  var x = new getUSObj(which);
  if (steps) {
    stepx = (finishx - startx)/steps;
    stepy = (finishy - starty)/steps;
    steps -= 1;
    x.style.top = starty;
    x.style.left = startx;
    startx=startx+stepx;
    starty=starty+stepy;
    setTimeout("moveUSDiv('"+which+"',"+startx+","+starty+","+finishx+","+finishy+","+steps+","+speed+")",speed);
  }
}
function floatUSDiv(which, startx, starty, finishx, finishy, steps, speed, hangtime)
{
  moveUSDiv(which, startx, starty, finishx, finishy, steps, speed);
  if (hangtime != 0) {
    setTimeout("hideUSDiv('"+which+"')",hangtime*1000);
  }
}
function writeYear(){
now = new Date();
year = now.getYear();
document.write(year);
}


//Show Divs by id
	function revealDiv(div_name) {
		var inDivVar = document.getElementById(div_name);
		if( inDivVar == null ) {
			return false;
		}

		inDivVar.style.display = "block";
		return true;
	}
	
//Hide Divs by id					
	function concealDiv(div_name) {
		var inDivVar = document.getElementById(div_name);
		if( inDivVar == null ) {
			return false;
		}

		inDivVar.style.display = "none";
		return true;
	}
						
//Payment Form Handling Script
	function handleBillForm( paymenttype ) {


		if( !paymenttype ) {
			concealDiv('ccinfo');
			concealDiv('addrinfo');
			return false;
		}
		if( paymenttype == "" ) {
		revealDiv('mailin');
		
		}

		if( paymenttype == "credit_card" ) {
			revealDiv('ccinfo');
			revealDiv('addrinfo');
			
				for (i=0;i<document.forms[0].same_address.length;i++){
							if (document.forms[0].same_address[i].checked){
								user_input = document.forms[0].same_address[i].value;
								if (user_input == "no"){
								revealDiv('sepaddress');
								
								}
							}
						}

			
		}
		else {
			concealDiv('ccinfo');
			concealDiv('addrinfo');
			concealDiv('sepaddress');
		}
	}
						
						
//PopUpScript
function popup(mylink, windowname, width, height)
{
PositionX = 150;
PositionY = 10;
if (! window.focus)return true;
var href;
if (typeof(mylink) == 'string')
   href=mylink;
else
   href=mylink.href;
window.open(href, windowname, 'width='+ width+',height=' + height + ',scrollbars=yes,left='+PositionX+',top='+PositionY);
return false;
}

var allBoxes = ["p1", "p2", "p3"];
function alertCheck(id){

	var e = document.getElementById(id);
	var testid = e.checked;
	for (i=0;i<allBoxes.length;i++)
	{
	testing = allBoxes[i];
	//alert(document.forms[0].allBoxes[i].checked);
		alert(e.checked);
	}
}


 var blink_speed=500;
 var i=0;
 

	 layerStyleRef="layer.style.";
 layerRef="document.getElementById";
 styleSwitch=".style";


//BLINKING
function Blink(layerName){

	  
 if(i%2==0)
 {
/* eval(layerRef+'('+layerName+')'+
 styleSwitch+'.visibility="visible"');*/
document.getElementById(layerName).style.visibility = 'visible';
 }
 else
 {
 /*eval(layerRef+'('+layerName+')'+
 styleSwitch+'.visibility="hidden"');*/
 document.getElementById(layerName).style.visibility = 'hidden';
 }
 
	
 if(i<1)
 {
 i++;
 } 
 else
 {
 i--
 }
 setTimeout("Blink('"+layerName+"')",blink_speed);
}

	
