/* Provides an easy to use way of logging stuff in scripts
 * Dependencies:
 * - winprop.js
 */

var log_ON = 0; /* Never commit turned on!!! */

var log_id = 'log0';
var log_top = 0;
var log_left = '0px';


function
log_add(text)
{
    if (!log_ON) {
        return;
    }

    var log = document.getElementById(log_id);

    if (!log) {
        var log = document.createElement('DIV');
        log.setAttribute('id', log_id);

        log.style.position = 'absolute';
        log.style.background = '#ffffff';
        log.style.overflow = 'auto';
        log.style.border = '1px solid #000';
        log.style.height = '200px';
        log.style.width = '200px';
        log.style.top = (window_scrolltop() + log_top) + 'px';
        log.style.left = log_left;
        log.style.display = 'block';

        for (var body = document.childNodes[0];
                body.nodeName != 'HTML';
                body = body.nextSibling)
        {
            /* finds html node */
        }
        for (body = body.firstChild;
                body.nodeName != 'BODY';
                body = body.nextSibling)
        {
            /* finds body node */
        }

        if (!body || body.nodeName != 'BODY') {
            return;
        }

        body.appendChild(log);
    }

    var d = new Date();
    var mins = d.getMinutes();
    var secs = d.getSeconds();
    if (secs < 10) {
        secs = '0' + secs;
    }
    var node = document.createTextNode(mins + ':' + secs + ' ' + text);
    var br = document.createElement('BR');

    if (log.childNodes[0]) {
        log.insertBefore(br, log.childNodes[0]);
        log.insertBefore(node, log.childNodes[0]);
    }
    else {
        log.appendChild(node);
    }
}
