layerLeft = new Array();
layerTop = new Array();

function setVisibility(layer, on)
{
    if (on) {
        if (DOM) {
            document.getElementById(layer).style.visibility = 'visible';
        } else if (NS4) {
            document.layers[layer].visibility = 'show';
        } else {
            document.all[layer].style.visibility = 'visible';
        }
    } else {
        if (DOM) {
            document.getElementById(layer).style.visibility = 'hidden';
        } else if (NS4) {
            document.layers[layer].visibility = 'hide';
        } else {
            document.all[layer].style.visibility = 'hidden';
        }
    }
}

function isVisible(layer)
{
    if (DOM) {
        return (document.getElementById(layer).style.visibility == 'visible');
    } else if (NS4) {
        return (document.layers[layer].visibility == 'show');
    } else {
        return (document.all[layer].style.visibility == 'visible');
    }
}

function setLeft(layer, x)
{
layerLeft[layer] = x;
    if (DOM && !Opera5) {
        document.getElementById(layer).style.left = x + 'px';
    } else if (Opera5) {
        document.getElementById(layer).style.left = x;
    } else if (NS4) {
        document.layers[layer].left = x;
    } else {
        document.all[layer].style.pixelLeft = x;
    }
}

function getOffsetLeft(layer)
{
    var value = 0;
    if (DOM) {  
        object = document.getElementById(layer);
        value = object.offsetLeft;
//alert (object.tagName + ' --- ' + object.offsetLeft);
        while (object.tagName != 'BODY' && object.offsetParent) {
            object = object.offsetParent;
//alert (object.tagName + ' --- ' + object.offsetLeft);
            value += object.offsetLeft;
        }
    } else if (NS4) {
        value = document.layers[layer].pageX;
    } else {    
        if (document.all['IE4' + layer]) {
            layer = 'IE4' + layer;
        }
        object = document.all[layer];
        value = object.offsetLeft;
        while (object.tagName != 'BODY') {
            object = object.offsetParent;
            value += object.offsetLeft;
        }
    }
    return (value);
}

function setTop(layer, y)
{
layerTop[layer] = y;
    if (DOM && !Opera5) {
        document.getElementById(layer).style.top = y + 'px';
    } else if (Opera5) {
        document.getElementById(layer).style.top = y;
    } else if (NS4) {
        document.layers[layer].top = y;
    } else {
        document.all[layer].style.pixelTop = y;
    }
}

function getOffsetTop(layer)
{
    var value = 0;
    if (DOM) {
        object = document.getElementById(layer);
        value = object.offsetTop;
        while (object.tagName != 'BODY' && object.offsetParent) {
            object = object.offsetParent;
            value += object.offsetTop;
        }
    } else if (NS4) {
        value = document.layers[layer].pageY;
    } else {    // IE4 IS SIMPLY A BASTARD !!!
        if (document.all['IE4' + layer]) {
            layer = 'IE4' + layer;
        }
        object = document.all[layer];
        value = object.offsetTop;
        while (object.tagName != 'BODY') {
            object = object.offsetParent;
            value += object.offsetTop;
        }
    }
    return (value);
}

function setWidth(layer, w)
{
    if (DOM) {
        document.getElementById(layer).style.width = w;
    } else if (NS4) {
//      document.layers[layer].width = w;
    } else {
        document.all[layer].style.pixelWidth = w;
    }
}

function getOffsetWidth(layer)
{
    var value = 0;
    if (DOM && !Opera56) {
        value = document.getElementById(layer).offsetWidth;
    } else if (NS4) {
        value = document.layers[layer].document.width;
    } else if (Opera56) {
        value = document.getElementById(layer).style.pixelWidth;
    } else {    
        if (document.all['IE4' + layer]) {
            layer = 'IE4' + layer;
        }
        value = document.all[layer].offsetWidth;
    }
    return (value);
}

function setHeight(layer, h)   
{
    if (DOM) {
        document.getElementById(layer).style.height = h;
    } else if (NS4) {
//      document.layers[layer].height = h;
    } else {
        document.all[layer].style.pixelHeight = h;
    }
}

function getOffsetHeight(layer)
{
    var value = 0;
    if (DOM && !Opera56) {
        value = document.getElementById(layer).offsetHeight;
    } else if (NS4) {
        value = document.layers[layer].document.height;
    } else if (Opera56) {
        value = document.getElementById(layer).style.pixelHeight;
    } else {    // IE4 IS SIMPLY A BASTARD !!!
        if (document.all['IE4' + layer]) {
            layer = 'IE4' + layer;
        }
        value = document.all[layer].offsetHeight;
    }
    return (value);
}

function getWindowWidth()
{
    var value = 0;
    if ((DOM && !IE) || NS4 || Konqueror || Opera) {
        value = window.innerWidth;
//  } else if (NS4) {
//      value = document.width;
    } else {    // IE
        if (document.documentElement && document.documentElement.clientWidth) {
            value = document.documentElement.clientWidth;
        } else if (document.body) {
            value = document.body.clientWidth;
        }
    }
    if (isNaN(value)) {
        value = window.innerWidth;
    }
    return (value);
}

function getWindowXOffset()
{
    var value = 0;
    if ((DOM && !IE) || NS4 || Konqueror || Opera) {
        value = window.pageXOffset;
    } else {    // IE
        if (document.documentElement && document.documentElement.scrollLeft) {
            value = document.documentElement.scrollLeft;
        } else if (document.body) {
            value = document.body.scrollLeft;
        }
    }
    return (value);
}

function getWindowHeight()
{
    var value = 0;
    if ((DOM && !IE) || NS4 || Konqueror || Opera) {
        value = window.innerHeight;
    } else {    // IE
        if (document.documentElement && document.documentElement.clientHeight) {
            value = document.documentElement.clientHeight;
        } else if (document.body) {
            value = document.body.clientHeight;
        }
    }
    if (isNaN(value)) {
        value = window.innerHeight;
    }
    return (value);
}

function getWindowYOffset()
{
    var value = 0;
    if ((DOM && !IE) || NS4 || Konqueror || Opera) {
        value = window.pageYOffset;
    } else {    // IE
        if (document.documentElement && document.documentElement.scrollTop) {
            value = document.documentElement.scrollTop;
        } else if (document.body) {
            value = document.body.scrollTop;
        }
    }
    return (value);
}