
// initialize variables

var timer;
var arrLayers = new Array();
var objLayer;


// layer functions

function scrollLayer(layer, direction)
{
    if (!(document.getElementById || document.all)) {
        return;
    }

    if (arrLayers[layer]) {
        objLayer = arrLayers[layer];
    } else {
        // initialize layer object
        objLayer = new getObj(layer);
        objLayer.clipTop     = 0;
        objLayer.clipBottom  = intClipBottom;
        objLayer.layerTop    = 0;
        objLayer.layerHeight = objLayer.obj.offsetHeight;

        // register layer object
        arrLayers[layer] = objLayer;
    }

    // set scroll amount
    intAmount = Math.abs(intAmount) * direction;

    scroll();
}


function scroll()
{
    objLayer.clipTop    += intAmount;
    objLayer.clipBottom += intAmount;
    objLayer.layerTop   -= intAmount;

    if ((objLayer.clipTop < 0) || (objLayer.clipBottom > objLayer.layerHeight)) {
        objLayer.clipTop    -= intAmount;
        objLayer.clipBottom -= intAmount;
        objLayer.layerTop   += intAmount;
        return;
    }

    objLayer.style.top = objLayer.layerTop + 'px';

    timer = setTimeout('scroll()', intDelay);
}


function stopScroll()
{
    if (timer) {
        clearTimeout(timer);
    }
}

function getObj(id)
{
    if (document.getElementById) {
        this.obj = document.getElementById(id);
        this.style = document.getElementById(id).style;
    } else if (document.all) {
        this.obj = document.all[id];
        this.style = document.all[id].style;
    } else if (document.layers) {
        this.obj = document.layers[id];
        this.style = document.layers[id];
    }
}

