/* This code is after that developed by Jason Cranford Teague in his excellent book "DHTML and CSS for the World Wide Web" published by Peachpit Press */
var domSMenu = null;
var oldDomSMenu = null;
var t = 0;
var lDelay = 5;
var lCount = 0;
var pause = 100;

function popMenu(menuNum) {
  if (isDHTML) {
    t = 2;
    if (oldDomSMenu) {
      oldDomSMenu.visibility = 'hidden';
      oldDomSMenu.zIndex = '0';
      lCount = 0;
    }
    var idMenu = 'menuHead'
    var domMenu = findDOM(idMenu,0);
    var idMenuOpt = 'menuHead' + menuNum;
    var domMenuOpt = findDOM(idMenuOpt,0);
    var idSMenu = 'menu' + menuNum;
    var domSMenu = findDOM(idSMenu,1)

    if (isID || isAll) {
/*
      var domMenuOptParent = (domMenuOpt.offsetParent);
      var domMenuOptParentParent = (domMenuOptParent.offsetParent);
      var menuLeft = (domMenuOptParent.offsetLeft) + (domMenuOpt.offsetLeft) - (domMenuOpt.scrollWidth/2) + 20;
      var menuTop = (domMenuOptParentParent.offsetTop + domMenuOptParentParent.offsetHeight + domMenuOpt.offsetHeight);
      //alert('menuLeft=' + menuLeft + ' menuTop=' + menuTop);
*/
      var domParent = (domMenu.offsetParent);
      var menuLeft = (domMenu.offsetLeft) + (domMenuOpt.offsetLeft) + 5;
      //var menuTop = (domParent.offsetTop) + (domMenu.offsetTop) + (domMenu.offsetHeight);
      var menuTop = (domMenu.offsetTop) + (domMenu.offsetHeight) + 5;
    }
    if (isLayers) {
      var menuLeft = document.layers[idMenu].layers[idMenuOpt].pageX - 5;
      var menuTop = domMenu.pageY + domMenu.clip.height - 5;
//      alert('LmenuLeft=' + menuLeft + ' LmenuTop=' + menuTop);
    }
    if (oldDomSMenu != domSMenu) {
      domSMenu.left = menuLeft;
      domSMenu.top = menuTop;
      domSMenu.visibility = 'visible';
      domSMenu.zIndex = '100';
      oldDomSMenu = domSMenu;
    }
    else {oldDomSMenu = null;}
  }
  else {return null;}
}

function delayHide() {
  if ((oldDomSMenu) && (t == 0)) {
    oldDomSMenu.visibility = 'hidden';
    oldDomSMenu.zIndex = '0';
    oldDomSMenu = null;
    lCount = 0;
    return false;
  }
  if (t == 2) { lCount = 0; return false}
  if (t == 1) {
    lCount = lCount + 1;
    if (lDelay <= lCount) {t = 0;}
    if (lDelay >= lCount) {setTimeout('delayHide(' + t + ')',pause)}
  }
}

function listPropertiesXyz(obj) {
  var names = '';
  listWindow = window.open('','console','toolbar=yes,location=yes,scrollbars=yes,resizable=yes')
  listWindow.document.write('<HTML><HEAD><TITLE>listPropertiesX<\/TITLE><\/HEAD><BODY BGCOLOR=#FFFF99><H2>listPropertiesX(' + obj + '\)<\/H2>')
  for (var i in obj) listWindow.document.write(i + '=' + eval('obj.' + i) + '<BR>');
  listWindow.document.write('<\/BODY><\/HTML>')
  listWindow.focus()
}


/* This code is after that developed by Jason Cranford Teague in his excellent book "DHTML and CSS for the World Wide Web" published by Peachpit Press */
var isDHTML = 0;
var isLayers = 0;
var isAll = 0;
var isID = 0;
if (document.getElementById) {isID = 1; isDHTML = 1}
else {
  if (document.all) {isAll = 1; isDHTML = 1}
  else {
    browserVersion = parseInt(navigator.appVersion);
    if ((navigator.appName.indexOf('Netscape') != -1) && (browserVersion == 4)) {
      isLayers = 1; isDHTML = 1
    }
  }
}

function findDOM(objectID,withStyle) {
  if (withStyle == 1) {
    if (isID) {return (document.getElementById(objectID).style)}
    else {
      if (isAll) {return (document.all[objectID].style)}
      else {
        if (isLayers) {return (document.layers[objectID])}
      }
    }
  }
  else {
    if (isID) {return (document.getElementById(objectID))}
    else {
      if (isAll) {return (document.all[objectID])}
      else {
        if (isLayers) {return (document.layers[objectID])}
      }
    }
  }
}

// Resize document if Netscape 4
function reloadPage() {
  if (innerWidth != origWidth || innerHeight != innerHeight) {
    location.reload();
  }
}

if (isDHTML && isLayers) {
  origWidth = innerWidth;
  origHeight = innerHeight;
  onresize = reloadPage;
}
