var versionOK = (parseInt(navigator.appVersion) >= 4);
var ns4 = false;
var menuReady = false;
var layerIndex;
var horizontaladjustment = 0;
var verticaladjustment = 0;
var delay = 50;
function setUp()
  {
	if (!versionOK)
		return;
  if(document.layers)
		{
    ns4 = true;
    for(document.all=document.layers,x=0;x<document.all.length;x++)
      document.all[x].style=document.all[x];
		}
  if(!document.all)
    {
   	if(document.getElementsByTagName)
			{
			document.all=document.getElementsByTagName("div");
			}
    }
  for(x=0;x<layerIndex.length;x++)
		{
		var menuname = layerIndex[x];
		var element = document.all[menuname];
    element.layerid = menuname;
    element.style.held = 0;
    element.style.shown = 0;
    element.style.entered = 0;
		element.onmouseover = new Function("", "enter(this)");
		element.onmouseout  = new Function("", "leave(this)");
		}
	menuReady = true;
  }
function show(obj, layerid, nspos)
  {
	if (!menuReady)
		return;
	var element = document.all[layerid];
  if(element)
		{
		element.style.shown = 1;
    element.style.left = (findX(obj)+horizontaladjustment) + 'px';
    if (ns4)
      element.style.top = findY(obj) + nspos;
    else
      element.style.top = (findY(obj) + obj.offsetHeight + verticaladjustment) + 'px';
	  element.style.display='block';
		}
  }
function showRight(obj, layerid, nspos)
  {
	if (!menuReady)
		return;
	var element = document.all[layerid];
  if(element)
		{
		element.style.shown = 1;
    if (ns4)
      element.style.left = findX(obj) + nspos;
    else
      element.style.left = (findX(obj) + obj.offsetWidth) + 'px';
    element.style.top = findY(obj) + 'px';
	  element.style.display='block';
		}
  }
function hide(layerid)
  {
	if (!menuReady)
		return;
//java.lang.System.out.println('hide-');
	document.all[layerid].style.shown = 0;
	var inst = "hideNow('" + layerid + "')";
  setTimeout(inst, delay);
  }
function hideNow(layerid)
  {
	var element = document.all[layerid];
//java.lang.System.out.println('hideNow- entered=' + element.style.entered + ' shown=' + element.style.shown);
	if ((element.style.entered == 0 || typeof element.style.entered == 'undefined') && element.style.shown == 0)
	 	element.style.display='none';
  }
function enter(element)
  {
//java.lang.System.out.println('enter- element=' + element.layerid);
	element.style.entered = 1;
  }
function leave(element)
  {
//java.lang.System.out.println('leave- element=' + element.layerid);
	element.style.entered = 0;
	var inst = "hideAfterLeave('" + element.layerid + "')";
  setTimeout(inst, delay);
  }
function hideAfterLeave(layerid)
  {
	var element = document.all[layerid];
//java.lang.System.out.println('hideAfterLeave- element=' + element.layerid + ' shown=' + element.style.shown + ' entered=' + element.style.entered);
	if (element.style.shown == 0 && element.style.entered == 0)
		{
	 	element.style.display='none';
		}
  }
function findX(obj)
  {
  if (typeof obj.offsetLeft != 'undefined')
    {
    if (obj.offsetParent)
      return (obj.offsetLeft + findX(obj.offsetParent));
    else
      return obj.offsetLeft;
    }
  else
    if (typeof obj.x != 'undefined')
      return obj.x;
    else
      return 20;
  }
function findY(obj)
  {
  var yOffset, theParent;
  if (typeof obj.offsetTop != 'undefined')
    {
    yOffset = obj.offsetTop;
    theParent = obj.offsetParent;
    while (theParent)
      {
      yOffset += theParent.offsetTop;
      theParent = theParent.offsetParent;
      }
    return yOffset;
    }
  else
    if (typeof obj.y != 'undefined')
      return obj.y;
    else
      return 200;
  }
function showWin()
  {
  var w = window.open('','popup',
      'width=500,height=400,resizable,scrollbars,status,left=80,top=80');
  w.document.clear();
  w.focus();
  return true;
  }
function addToFavourites(title)
	{
	if (window.external)
		window.external.AddFavorite(location.href, title);
	}
function emailAFriend(title)
	{
	location = 'mailto:?subject='+title+'&body='+location.href;
	}
function initImage()
	{
	imageId = 'thelogo';
	image = document.getElementById(imageId);
	setOpacity(image, 0);
	image.style.visibility = "visible";
	fadeIn(imageId, 0, 1);
	}
function fadeIn(objId, opacity, sign)
	{
	if (document.getElementById)
		{
		obj = document.getElementById(objId);
		setOpacity(obj, opacity);
		opacity += 5 * sign;
		if (opacity >= 250)
			sign = -1;
		else
			if (opacity <= -150)
				sign = 1;
		window.setTimeout("fadeIn('"+objId+"',"+opacity+","+sign+")", 50);
		}
	}
function setOpacity(obj, opacity)
	{
	if (opacity >= 100)
		opacity = 99.999;
	else
		if (opacity <= 0 )
			opacity = 0;
	// IE/Win
	obj.style.filter = "alpha(opacity:"+opacity+")";
	// Safari<1.2, Konqueror
	obj.style.KHTMLOpacity = opacity/100;
	// Older Mozilla and Firefox
	obj.style.MozOpacity = opacity/100;
	// Safari 1.2, newer Firefox and Mozilla, CSS3
	obj.style.opacity = opacity/100;
	}
