//=============================================================================
//  IE 6 & Mozilla Safe Debug Library 
//=============================================================================
var debugPopup; 
var debugText;
var debugLevel = 0;

function setDebugLevel(i) {
    if (i < 0)
	debugLevel = 0;
    else if (i > 9)
	debugLevel = 9;
    else
	debugLevel = i;
}

function leadZero(n) {
    var s = n + "";
    if (s.length == 1)
	s = "0" + s;
    return s;
}

function debugOutput(level, message) {
    if (level > debugLevel) return;
    if (debugPopup == null) {
        var p = document.createElement("form");
        p.name = "debug";
        p.id = "debug";
	var i;
	var html = "<input type='reset' value='Clear Output'>";
	html += "<select id='dbgLevel' name='dbgLevel' onchange='setDebugLevel(this.options[this.selectedIndex].value);'>";
	for (i = 0; i < 10; i++) {
	    var s = i == debugLevel ? " selected" : "";
	    html += "<option value='" + i + "'" + s + ">" + i + "</option>";
	}
        html += "</select>";
	html += "<br>";
	html += "<textarea  rows='30' cols='80' id='outputText' name='outputText' style='width:auto;font-name:Georgia;font-size:10pt;'></textarea>";
        p.innerHTML = html;
        var body = document.getElementById("body");
        body.appendChild(p);

        debugPopup = document.getElementById("debug");
        debugText = document.getElementById("outputText");
    }

    if (!debugPopup.closed) {
	var now = new Date();
	var nowStr = leadZero(now.getHours()) + ":" + leadZero(now.getMinutes()) + ":" + leadZero(now.getSeconds());
        debugText.value = nowStr + " " + message + "\n" + debugText.value;
    }
}
