var panel = null;
var pos = 0; // position of text panel
var minPos = 0; // minimal up position
var timer = null;
var delayTimer = null;
var cycle = 0;
var down = false;
var speed = 12; // speed of scrolling
var step = 24;

function preLoad(textPanel, min) {
    panel = textPanel;
    minPos = min;
}

// Scroll text to up method
function scrollToUp() {
    down = false;
    clearTimeout(delayTimer);
    clearTimeout(timer);
    cycle = 0;
    moveToUp();
}

// Scroll text to down method
function scrollToDown() {
    down = false;
    clearTimeout(delayTimer);
    clearTimeout(timer);
    cycle = 0;
    moveToDown();
}

function delayScrollToUp() {
    down = true;
    delayTimer = setTimeout("moveToUp()", 400);
}

function delayScrollToDown() {
    down = true;
    delayTimer = setTimeout("moveToDown()", 400);
}

function moveToUp() {
    if (cycle < step) {
        if (down == false) cycle ++;
        if (pos > minPos) {pos = pos - speed;}
        panel.style.top = pos + "px";
        timer = setTimeout("moveToUp()", 1);
    }
    else cycle = 0;
}

function moveToDown() {
    if (cycle < step) {
        if (down == false) cycle ++;
        if (pos < 0) {pos = pos + speed;}
        panel.style.top = pos + "px";
        timer = setTimeout("moveToDown()", 1);
    }
    else cycle = 0;
}