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;
		x = findX(obj)+horizontaladjustment;
    element.style.left = x + 'px';
    if (ns4)
			y = findY(obj) + nspos;
    else
			y = findY(obj) + obj.offsetHeight + verticaladjustment;
    element.style.top = y + '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)
			x = findX(obj) + nspos;
    else
			x = findX(obj) + obj.offsetWidth
    element.style.left = x + 'px';
		y = findY(obj);
    element.style.top = y + '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 addEvent(elm, evType, fn, useCapture)
	{
	if (elm.addEventListener)
		{
		elm.addEventListener(evType, fn, useCapture);
		return true;
		}
	else
		if (elm.attachEvent)
			{
			var r = elm.attachEvent('on' + evType, fn);
			return r;
			}
		else
			elm['on' + evType] = fn;
	}

function setTall()
	{
	if (document.getElementById)
		{
		var content = document.getElementById('content');
		var contentHeight = content.offsetHeight;
		var menu = document.getElementById('menu');
		var menuHeight = menu.offsetHeight;
		var leftbar = 	document.getElementById('leftbar');
		var leftbarHeight = leftbar.offsetHeight;
		var footer = 	document.getElementById('footer');
		var footerHeight = footer.offsetHeight;
		var maxHeight = Math.max(contentHeight, leftbar.offsetHeight);
		var otherHeights = 258 + 6 + 25 + menuHeight + footerHeight;
		maxHeight = Math.max(maxHeight, document.documentElement.clientHeight - otherHeights);
		content.style.height = maxHeight + 'px';
		footer.style.visibility = 'visible';
		}
	}

addEvent(window, 'load', setTall, false);
//addEvent(window, 'resize', setTall, false);

function showWin()
  {
	var w = window.open('','popup',
	    'width=500,height=550,resizable,scrollbars,status,left=20,top=20');
	w.document.clear();
	w.focus();
	return true;
	}
function mailIt()
	{
  var contact = "outdoor movies";
  var email = "info";
  var emailHost = "outdoormovies.com.au";
  document.write('<a class="email" href="' + 'mail' + 'to:' + email + '@' + emailHost + '">' + contact + '</a>');
	}
