
//Dynamically line up a layer with a reference image
function P7_Snap() { //v2.62 by PVII
  var x,y,ox,bx,oy,p,tx,a,b,k,d,da,e,el,args=P7_Snap.arguments;a=parseInt(a);
  for (k=0; k<(args.length-3); k+=4)
   if ((g=MM_findObj(args[k]))!=null) {
    el=eval(MM_findObj(args[k+1]));
    a=parseInt(args[k+2]);b=parseInt(args[k+3]);
    x=0;y=0;ox=0;oy=0;p="";tx=1;da="document.all['"+args[k]+"']";
    if(document.getElementById) {
     d="document.getElementsByName('"+args[k]+"')[0]";
     if(!eval(d)) {d="document.getElementById('"+args[k]+"')";if(!eval(d)) {d=da;}}
    }else if(document.all) {d=da;} 
    if (document.all || document.getElementById) {
     while (tx==1) {p+=".offsetParent";
      if(eval(d+p)) {x+=parseInt(eval(d+p+".offsetLeft"));y+=parseInt(eval(d+p+".offsetTop"));
      }else{tx=0;}}
     ox=parseInt(g.offsetLeft);oy=parseInt(g.offsetTop);var tw=x+ox+y+oy;
     if(tw==0 || (navigator.appVersion.indexOf("MSIE 4")>-1 && navigator.appVersion.indexOf("Mac")>-1)) {
      ox=0;oy=0;if(g.style.left){x=parseInt(g.style.left);y=parseInt(g.style.top);
      }else{var w1=parseInt(el.style.width);bx=(a<0)?-5-w1:-10;
      a=(Math.abs(a)<1000)?0:a;b=(Math.abs(b)<1000)?0:b;
      x=document.body.scrollLeft + event.clientX + bx;
      y=document.body.scrollTop + event.clientY;}}
   }else if (document.layers) {x=g.x;y=g.y;var q0=document.layers,dd="";
    for(var s=0;s<q0.length;s++) {dd='document.'+q0[s].name;
     if(eval(dd+'.document.'+args[k])) {x+=eval(dd+'.left');y+=eval(dd+'.top');break;}}}
   if(el) {e=(document.layers)?el:el.style;
   var xx=parseInt(x+ox+a),yy=parseInt(y+oy+b);
   if(navigator.appName=="Netscape" && parseInt(navigator.appVersion)>4){xx+="px";yy+="px";}
   if(navigator.appVersion.indexOf("MSIE 5")>-1 && navigator.appVersion.indexOf("Mac")>-1){
    xx+=parseInt(document.body.leftMargin);yy+=parseInt(document.body.topMargin);
    xx+="px";yy+="px";}e.left=xx;e.top=yy;}}
}

//Activate Menues
function menuRoll(objID,objTitle,objUp,objDown,objCont) {
	ChangeZindex('closeLayer',2);
	ChangeZindex('menuTitle'+objID,8);
	ChangeZindex('menuControlUp'+objID,7);
	ChangeZindex('menuControlDown'+objID,6);
	ChangeZindex('divCont'+objID,5,'divText'+objID);
	ChangeZindex('divCont'+objID,4);
	vSwitch('menuTitle'+objID,1),
	vSwitch('menuControlUp'+objID,1),
	vSwitch('menuControlDown'+objID,1),
	vSwitch('divText'+objID,1),
	vSwitch('closeLayer',1);
	adjustCoord(objID,objTitle,objUp,objDown,objCont);	
	return true;
}
//adjust menu layers so that they are line up with the Category image header (catName)
function adjustCoord(objID,objTitle,objUp,objDown,objCont) {
	P7_Snap('catName'+objID,'menuTitle'+objID,-6,objTitle)
	P7_Snap('catName'+objID,'menuControlUp'+objID,-6,objUp)
	P7_Snap('catName'+objID,'menuControlDown'+objID,-6,objDown)
	P7_Snap('catName'+objID,'divCont'+objID,-6,objCont)
	P7_Snap('catName0','closeLayer',-20,-20)
}
//Hide and reset all z-indexes
function resetAllMenues() {
	vSwitch('closeLayer',0)
	
	for (var i=0; i < menuCount; i++) {
		ChangeZindex('closeLayer',0);
		ChangeZindex('menuTitle'+i,0);
		ChangeZindex('menuControlUp'+i,0);
		ChangeZindex('menuControlDown'+i,0);
		ChangeZindex('divCont'+i,0,'divText'+i);
		ChangeZindex('divCont'+i,0);
		vSwitch('menuTitle'+i,0)
		vSwitch('menuControlUp'+i,0)
		vSwitch('menuControlDown'+i,0)
		vSwitch('divText'+i,0)
		
	P7_Snap('disout','menuTitle'+i,0,0)
	P7_Snap('disout','menuControlUp'+i,0,0)
	P7_Snap('disout','menuControlDown'+i,0,0)
	P7_Snap('disout','divCont'+i,0,0)
	P7_Snap('disout','closeLayer',0,0)
	}
}
//Change the Z Index so that the correct layers can be clicked
function ChangeZindex(layerName1, layerIndex, layerName2)
{
		if(document.layers)
		{
			if(layerName2)
			{
				document.layers[layerName1].document.layers[layerName2].zIndex=layerIndex;
			}
			else
			{
				document.layers[layerName1].zIndex=layerIndex;
			}
		}
		if(document.getElementById)	{document.getElementById(layerName1).style.zIndex=layerIndex;}
		if(document.all)						{document.all[layerName1].style.zIndex=layerIndex;}
		return;
}

function checkBrowser(){
this.ver=navigator.appVersion
this.dom=document.getElementById?1:0
this.ie5=(this.ver.indexOf("MSIE 5")>-1 && this.dom)?1:0;
this.ie4=(document.all && !this.dom)?1:0;
this.ns5=(this.dom && parseInt(this.ver) >= 5) ?1:0;
this.ns4=(document.layers && !this.dom)?1:0;
this.bw=(this.ie5 || this.ie4 || this.ns4 || this.ns5)
return this
}
bw=new checkBrowser()
var menuCount=1;
var speed=25;

var loop, timer

function makeObj(obj,nest){
nest=(!nest) ? '':'document.'+nest+'.'
this.el=bw.dom?document.getElementById(obj):bw.ie4?document.all[obj]:bw.ns4?eval(nest+'document.'+obj):0;
this.css=bw.dom?document.getElementById(obj).style:bw.ie4?document.all[obj].style:bw.ns4?eval(nest+'document.'+obj):0;
this.scrollHeight=bw.ns4?this.css.document.height:this.el.offsetHeight
this.clipHeight=bw.ns4?this.css.clip.height:this.el.offsetHeight
this.up=goUp;this.down=goDown;
this.moveIt=moveIt; this.x; this.y;
this.obj = obj + "Object"
eval(this.obj + "=this")
return this
}
function moveIt(x,y){
this.x=x;this.y=y
this.css.left=this.x
this.css.top=this.y
}

function goDown(move){
if(this.y>-this.scrollHeight+oCont0.clipHeight){
	this.moveIt(0,this.y-move)
	if(loop) setTimeout(this.obj+".down("+move+")",speed)
}
}

function goUp(move){
if(this.y<0){
	this.moveIt(0,this.y-move)
	if(loop) setTimeout(this.obj+".up("+move+")",speed)
	}
}

function scroll(speed,menu){
	if(loaded){
		loop=true;
		oScroll=eval('oScroll'+ menu);
		if(speed>0) oScroll.down(speed)
		else oScroll.up(speed)
	}
}

function noScroll(){
	loop=false
	if(timer) clearTimeout(timer)
}

var loaded;

function scrollInit(){
	oCont0=new makeObj('divCont0')
	oScroll0=new makeObj('divText0','divCont0')
	oScroll0.moveIt(0,0)
	oCont0.css.visibility='visible'
	oCont1=new makeObj('divCont1')
	oScroll1=new makeObj('divText1','divCont1')
	oScroll1.moveIt(0,0)
	oCont1.css.visibility='visible'
	loaded=true;
}