// determine viewer's browser / platform
var isMinNS4 = (navigator.appName.indexOf("Netscape") >= 0 && parseFloat(navigator.appVersion) >= 4) ? 1 : 0;
var isMinNS6 = (isMinNS4 && navigator.userAgent.indexOf("Gecko")>=0) ? 1 : 0;
var isMinIE4 = (document.all) ? 1 : 0;
var isMinIE5 = (isMinIE4 && navigator.appVersion.indexOf("5.")) >= 0 ? 1 : 0;
var isDOM = (document.getElementById) ? 1 : 0;
var isMinIE6 = (isMinIE5&&navigator.appVersion.indexOf("MSIE 5.5") >= 0 || isMinIE5&&navigator.appVersion.indexOf("MSIE 6.") >= 0 ) ? 1 : 0;
var MSIE=((navigator.userAgent.indexOf("MSIE"))!=-1);
var NETSCAPE=((navigator.userAgent.indexOf("Mozilla"))!=-1);

   function Is() {
     agent      = navigator.userAgent.toLowerCase();
     this.major = parseInt(navigator.appVersion);
     this.minor = parseFloat(navigator.appVersion);
     this.ns    = ((agent.indexOf('mozilla') != -1) && ((agent.indexOf('spoofer') == -1) && (agent.indexOf('compatible') == -1)));
     this.ns4   = (this.ns && (this.major    ==  4));
     this.ns6   = (this.ns && (this.major    >=  5));
     this.ie    = (agent.indexOf("msie")     != -1);
     this.ie3   = (this.ie && (this.major     <  4));
     this.ie4   = (this.ie && (this.major    ==  4) && (agent.indexOf("msie 5.0") == -1));
     this.ie5   = (this.ie && (this.major    ==  4) && (agent.indexOf("msie 5.0") != -1));
     this.ie55  = (this.ie && (this.major    ==  4) && (agent.indexOf("msie 5.5") != -1));
     this.ie6   = (this.ie && (agent.indexOf("msie 6.0")!=-1) );
     this.mac   = (agent.indexOf("mac")   != -1);
     this.opera = (agent.indexOf("opera") != -1);
     this.webtv = (agent.indexOf("webtv") != -1);
     this.aoltv = (agent.indexOf("aoltv") != -1);
     this.wince = (agent.indexOf("windows ce") != -1);
   }

   var is = new Is();

// window.onerror=null;

// bust out of frames
//   if (top.location != location) top.location.href = location.href;

// route TV viewers
   if(is.webtv || is.aoltv) {
     window.location.href = '/tv/';
   }


// apply appropriate style sheet
/*   if(is.mac) {  // Macintosh, any browser
     document.write("<link rel='stylesheet' type='text/css' href='/link/mac.css'>");
     } else if(document.all) {  // IE on other than a MAC (there are some IE specific styles that cause problems with NS)
       document.write("<link rel='stylesheet' type='text/css' href='/link/ie.css'>");
     } else {  // any browser other than IE, on any platform other than Macintosh
       document.write("<link rel='stylesheet' type='text/css' href='/link/common.css'>");
   }
 */

// Cross Browser Floating Layer By Eddie Traversa 2001. All rights reserved. Version 2.1
   var topMargin = 100
   var slideTime = 1200
   var ns6 = (!document.all && document.getElementById);
   var ie4 = (document.all);
   var ns4 = (document.layers);

   function layerObject(id,left) {
   if (is.ns6){  	//changed
     this.obj = document.getElementById(id).style;
     this.obj.left = left;
     return this.obj;
   } else if(is.ie4) {
       this.obj = document.all[id].style;
        this.obj.left = left;
       return this.obj;
     } else if(is.ns4) {
         this.obj = document.layers[id];
         this.obj.left = left;
         return this.obj;
       }
   }

   function layerSetup(lft) {
   if(is.ns6||is.ns4) {
     pageWidth=innerWidth;
     pageHeight=innerHeight;
   } else if(document.all) {
       pageWidth=document.body.clientWidth;
       pageHeight=document.body.clientHeight;
     }
/*   floatLyr = new layerObject('menu',lft||'558'); */
   floatLyr = new layerObject('menu',lft||'580');
   window.setInterval("main()", 10)
   }

   function floatObject() {
   window.setInterval("main()", 10)
   if (is.ns4 || is.ns6) {
     findHt = window.innerHeight;
   } else if(document.all) {
       findHt = document.body.clientHeight;
     }
   }

   function main() {
   if (is.ns4) {
     this.currentY  = document.layers["menu"].top;
     this.scrollTop = window.pageYOffset;
     mainTrigger();
   } else if(is.ns6) {
       this.currentY  = parseInt(document.getElementById('menu').style.top);
       this.scrollTop = scrollY;
       mainTrigger();
     } else if(document.all) {
         this.currentY 	= menu.style.pixelTop;
         this.scrollTop	= document.body.scrollTop;
         mainTrigger();
       }
   }

   function mainTrigger() {
   var newTargetY = this.scrollTop + this.topMargin
   if ( this.currentY != newTargetY ) {
     if ( newTargetY != this.targetY ) {
       this.targetY = newTargetY
       floatStart();
       }
     animator();
     }
   }

   function floatStart() {
   var now = new Date()
   this.A = this.targetY - this.currentY
   this.B = Math.PI / ( 2 * this.slideTime )
   this.C = now.getTime()
   if (Math.abs(this.A) > this.findHt) {
     this.D = this.A > 0 ? this.targetY - this.findHt : this.targetY + this.findHt
     this.A = this.A > 0 ? this.findHt : -this.findHt
   } else {
       this.D = this.currentY
     }
   }

   function animator() {
   var now = new Date()
   var newY = this.A * Math.sin( this.B * ( now.getTime() - this.C ) ) + this.D
   newY	= Math.round(newY)
   if (( this.A > 0 && newY > this.currentY ) || ( this.A < 0 && newY < this.currentY )) {
   if ( document.all )document.all.menu.style.pixelTop = newY
   if ( is.ns4 )document.layers["menu"].top = newY
   if ( is.ns6 )document.getElementById('menu').style.top = newY + "px"
     }
   }


// Layer utilities by Mike Hall <www.brainjar.com>  copyright 1999 (updated 2/2000)

function getImage(name) {
  if (isMinNS4) {
    return findImage(name, document);
  }
  if (isMinIE4)
    return eval('document.all.' + name);
  return null;
}

function findImage(name, doc) {
  var i, img;

  for (i = 0; i < doc.images.length; i++)
    if (doc.images[i].name == name)
      return doc.images[i];
  for (i = 0; i < doc.layers.length; i++)
    if ((img = findImage(name, doc.layers[i].document)) != null) {
      img.container = doc.layers[i];
      return img;
    }
  return null;
}

function getImagePageLeft(img) {
  var x, obj;

  if (isMinNS4) {
    if (img.container != null)
      return img.container.pageX + img.x;
    else
      return img.x;
  }
  if (isMinIE4) {
    x = 0;
    obj = img;
    	while (obj.offsetParent != null) {
    	  x += obj.offsetLeft;
    	  obj = obj.offsetParent;
    	}
    	x += obj.offsetLeft;
    	return x;
  }
  return -1;
}

function getImagePageTop(img) {
  var y, obj;

  if (isMinNS4) {
    if (img.container != null)
      return img.container.pageY + img.y;
    else
      return img.y;
  }
  if (isMinIE4) {
    y = 0;
    obj = img;
    while (obj.offsetParent != null) {
      y += obj.offsetTop;
      obj = obj.offsetParent;
    }
    y += obj.offsetTop;
    return y;
  }
  return -1;
}

   /*function getLayer(name) {
   if (isMinNS4)
     return findLayer(name, document);
   //return layer.document.layers.length 	//added
   if (isMinIE4)
     return eval('document.all.' + name);
     return null;
   }*/

   var d=document

   function getLayer(name) {
     if (d.layers)return findLayer(name, d);
     if(d.getElementById)return d.getElementById(name);
     if (d.all)return d.all[name];
     return null;
   }

   function findLayer(name, doc) {
   var i, layer;

   for (i = 0; i < doc.layers.length; i++) {
    layer = doc.layers[i];
    if (layer.name == name)
      return layer;
    if (layer.document.layers.length > 0)
      if ((layer = findLayer(name, layer.document)) != null)
        return layer;
     }
   return null;
   }

   /*function showLayer(layer) {
   if (isMinNS4)
     layer.visibility = "show";
   if (isMinIE4)
     layer.style.visibility = "visible";
   }
   function hideLayer(layer) {
   if (isMinNS4)
    layer.visibility = "hide";
   if (isMinIE4)
    layer.style.visibility = "hidden";
   }

   function moveLayerTo(layer, x, y) {
   if (isMinNS4)
     layer.moveTo(x, y);
   if (isMinIE4) {
     layer.style.left = x;
     layer.style.top  = y;
     }
   }

   function setzIndex(layer, z) {
   if (isMinNS4)
     layer.zIndex = z;
   if (isMinIE4)
     layer.style.zIndex = z;
   }*/
    function showLayer(layer) {
       if (d.layers)layer.visibility = "show";
       if (d.all||d.getElementById)layer.style.visibility = "visible";
    }


    function hideLayer(layer) {
    if (d.layers)layer.visibility = "hide";
    if (d.all||d.getElementById)layer.style.visibility = "hidden";
    }

    function moveLayerTo(layer, x, y) {
    if (d.layers)layer.moveTo(x, y);
    if (d.all||d.getElementById) {
      layer.style.left = x;
      layer.style.top  = y;
      }
    }

    function setzIndex(layer, z) {
    if (d.layers)layer.zIndex = z;
    if (d.all||d.getElementById)layer.style.zIndex = z;
   }
      function setWidth(e,w){
   	   if(document.layers)e.clip.width=w;
   	   else if(is.opera)e.style.pixelWidth=w;
   	   else e.style.width=w;
	}


// Cookie Functions: save/read/delete cookie functions (for storing small chunks of data in the browser 19990326)
// Copyright (C) 1999 Dan Steinman http://www.dansteinman.com/dynapi/
// Distributed under the terms of the GNU Library General Public License
// thanks to: Jesee Chisholm <JCHISHOLM@SENSORMATIC-VPD.com>

   function saveCookie(name,value,days) {
   if (days) {
   var date = new Date();
   date.setTime(date.getTime()+(days*24*60*60*1000))
   var expires = "; expires="+date.toGMTString()
     }
     else expires = ""
       document.cookie = name+"="+value+expires+"; path=/"
   }

   function readCookie(name) {
   var nameEQ = name + "="
   var ca = document.cookie.split(';')
   for(var i=0;i<ca.length;i++) {
     var c = ca[i];
     while (c.charAt(0)==' ') c = c.substring(1,c.length)
     if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length)
     }
   return null
   }

   function deleteCookie(name) {
     saveCookie(name,"",-1)
   }


// Macromedia functions
   function MM_preloadImages() { //v3.0
     var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
     var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
     if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
   }

   function MM_reloadPage(init) {  //reloads the window if Nav4 resized
     if (init==true) with (navigator) {if ((appName=="Netscape")&&(parseInt(appVersion)==4)) {
       document.MM_pgW=innerWidth; document.MM_pgH=innerHeight; onresize=MM_reloadPage; }}
       else if (innerWidth!=document.MM_pgW || innerHeight!=document.MM_pgH) location.reload();
   }
   MM_reloadPage(true);


   function MM_swapImage() { //v3.0
     var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
     if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
   }


   function MM_swapImgRestore() { //v3.0
     var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
   }


   function MM_findObj(n, d) { //v3.0
     var p,i,x;  
    if(!d) d=document; 
    if((p=n.indexOf("?"))>0&&parent.frames.length) {
     	d=parent.frames[n.substring(p+1)].document; 
     	n=n.substring(0,p);
    }
   	if(!(x=d[n])&&d.all) x=d.all[n]; 
   	if(!x&&d.getElementById) x=d.getElementById(n); 
   	for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
   	for(i=0;!x&&d.layers&&i<d.layers.length;i++)x=MM_findObj(n,d.layers[i].document); 
   	return x;
   }


   function MM_changeProp(objName,x,theProp,theValue) { //v3.0
   var obj = MM_findObj(objName);
   if (obj && (theProp.indexOf("style.")==-1 || obj.style)) eval("obj."+theProp+"='"+theValue+"'");
   }


   function MM_showHideLayers() { //v3.0
   var i,p,v,obj,args=MM_showHideLayers.arguments;
   for (i=0; i<(args.length-2); i+=3) if ((obj=MM_findObj(args[i]))!=null) { v=args[i+2];
     if (obj.style) { obj=obj.style; v=(v=='show')?'visible':(v='hide')?'hidden':v; }
     obj.visibility=v; }
   }


// history object, custom script for watavue.com by Richard Bennett (www.richardinfo.com)

   function resetState(val){
   //get the page name from the Address Bar:
   //this returns the name of the last directory in your URL
	if(val)splitAddress=val
	else{
	splitAddress=location.pathname.split("/");
	splitAddress=splitAddress[splitAddress.length-2]
	}

		//setState(splitAddress)
		var visitedVal=readCookie('myHistory')
		if(visitedVal!=null){
			visitedVal=visitedVal.split(",");
			for(i = 0; i<visitedVal.length; i++){

					var arg=visitedVal[i]
					if (arg!=splitAddress){
					var myMenu='menu-'+arg
					var myImg='/menu/'+arg+'-visited.gif'
					returnImage(myMenu,myImg)
					}else{
					splitAddress=null
					}
			}
		}
		if(splitAddress)setState(splitAddress)
}

function setState(val){

	var fieldVal=readCookie('myHistory')
	if(fieldVal==null)fieldVal=val; else fieldVal+=','+val;
	saveCookie('myHistory',fieldVal,0)	//Change "0" to the amount of days the cookie should stay

}


function returnImage(myimg,mysrc){
	if(document.layers){
		if(window.document.menu){
			if(window.document.menu.document.images[myimg]){
				setTimeout('window.document.menu.document.images['+myimg+'].src='+mysrc+'',200)
			}
			
		}
	}else{
		if(document.images[myimg])document.images[myimg].src = mysrc
	}
}

//	resetState(splitAddress)


// window.onerror = hideAllErrors;
// function hideAllErrors(message, url, line){status=message+' '+url+' '+line;return true;}


// No spam e-mail  
   var user;
   var domain;
   var suffix;
   
   function jemail(user, domain, suffix) {
     document.write('<a href="' + 'mailto:' + user + '@' + domain + '.' + suffix + '">' + user + '@' + domain + '.' + suffix + '</a>');
   }
   
   function reference(user, domain, suffix) {
     document.write('<a href="' + 'mailto:' + user + '@' + domain + '.' + suffix + '">' + user + '</a>');
   }

