// simple debugging routines to enable sending debugging messages to a textarea
var dbg = false;
var areaObj;
var formName = 'debugForm';
var textAreaName = 'debug';
debugFrame = (parent.frames.length > 1)? "parent.frames[1]." : "";
if (navigator.appName == "Netscape") {
        isNS = true;
        isIE = false;
} else {
        isNS = false;
        isIE = true;
}




function getAreaObj() {
        // Construct object reference for debugging text area
        if (isIE) {
          areaObj = eval(debugFrame + "document.all['" + textAreaName + "']");
        } else if (isNS) {
          areaObj = eval(debugFrame + "document." + formName + "." + textAreaName);
        }
}  


function debug(msg) {
  if (dbg) {
    getAreaObj();
    if (areaObj) {
     areaObj.value += " " + msg + " ";
    }
  }
}

function debugln(msg) {
  //alert('debugln');
  if (dbg) {
    getAreaObj();
    if (areaObj) {
     areaObj.value += msg+"  \n";
    }
  }
}

function clearDebug() {
  getAreaObj();
  if (areaObj) {
    areaObj.value = "";
  }
}

function showProperties(obj) {
  for (prop in obj) {
    debugln('name: ' + prop + '  value: ' + obj[prop]);
  }
}

function showLayers() {
  if (isNS) {
    for (var i = 0; i < document.layers.length; i++) {
          debugln(document.layers[i].id);
      if (document.layers[i].document.layers) {
                for (var j = 0; j < document.layers[i].document.layers.length; j++) {
                  debugln('  Nested: ' + document.layers[i].document.layers[j].id);
                }
          }
        }
  }
}
