
var scroll_interval = 50;
var scroll_decrement = 0;

var event_scrollercontent = '';
var event_scrollerspeed = 2;
var event_pausespeed = 0;
var event_copyspeed = event_scrollerspeed;
var event_actualheight = '';
var event_scroller;
var event_hesitate = 10000/scroll_interval;

var books_scrollercontent = '';
var books_scrollerspeed = 5;
var books_pausespeed = 0;
var books_copyspeed = books_scrollerspeed;
var books_actualheight = '';
var books_scroller;
var books_hesitate = 30000 / scroll_interval;
var books_article;
var books_article_no = 0;
var books_target = 0;

var hilite_scrollercontent = '';
var hilite_scrollerspeed = 5;
var hilite_pausespeed = 0;
var hilite_copyspeed = hilite_scrollerspeed;
var hilite_actualheight = '';
var hilite_scroller;
var hilite_hesitate = 30000 / scroll_interval;
var hilite_article;
var hilite_article_no = 0;
var hilite_target = 0;

var lexikon_scrollercontent = '';
var lexikon_scrollerspeed = 5;
var lexikon_pausespeed = 0;
var lexikon_copyspeed = lexikon_scrollerspeed;
var lexikon_actualheight = '';
var lexikon_scroller;
var lexikon_hesitate = 40000 / scroll_interval;
var lexikon_article;
var lexikon_article_no = 0;
var lexikon_target = 0;

var workshop_scrollercontent = '';
var workshop_scrollerspeed = 5;
var workshop_pausespeed = 0;
var workshop_copyspeed = workshop_scrollerspeed;
var workshop_actualheight = '';
var workshop_scroller;
var workshop_hesitate = 20000 / scroll_interval;
var workshop_article;
var workshop_article_no = 0;
var workshop_target = 0;

var debug_div;
var js_warning;

function nop() { }

function startList() {
    if (document.all && document.getElementById) {
        navRoot = document.getElementById("leftnav");
        if (navRoot) {
            for (i=0; i<navRoot.childNodes.length; i++) {
                node = navRoot.childNodes[i];
                if (node.nodeName=="LI" && node.className=="nav1") {
                    node.onmouseover=function() { this.className+=" over"; }
                    node.onmouseout=function() {
                        this.className=this.className.replace(" over", "");
                    }
                }
            }
        }
        navRoot = document.getElementById("headnav");
        for (i=0; i<navRoot.childNodes.length; i++) {
            node = navRoot.childNodes[i];
            if (node.nodeName=="LI") {
                node.onmouseover=function() { this.className+=" over"; }
                node.onmouseout=function() {
                    this.className=this.className.replace(" over", "");
                }
            }
        }
        welcome = document.getElementById("headnav_welcome");
        welcome.onmouseover = function() { };
        welcome.onmouseout  = function() { };
    }
}

function populate(){
    startList();

    event_scroller = document.getElementById? document.getElementById("event_scroller") : document.all.event_scroller
    if (event_scroller) {
        event_scroller.style.top = 4+"px"
        event_actualheight = event_scroller.offsetHeight
        event_scrollercontent = event_scroller.innerHTML
        event_scroller.innerHTML = event_scrollercontent+event_scrollercontent
    }

    books_scroller = document.getElementById? document.getElementById("books_scroller") : document.all.books_scroller;
    if (books_scroller) {
        books_scroller.style.top = 4+"px";
        books_actualheight = books_scroller.offsetHeight;
        books_scrollercontent = books_scroller.innerHTML;
        books_scroller.innerHTML = books_scrollercontent+books_scrollercontent;
    }

    hilite_scroller = document.getElementById? document.getElementById("hilite_scroller") : document.all.hilite_scroller;
    if (hilite_scroller) {
        hilite_scroller.style.top = 4+"px";
        hilite_actualheight = hilite_scroller.offsetHeight;
        hilite_scrollercontent = hilite_scroller.innerHTML;
        hilite_scroller.innerHTML = hilite_scrollercontent+hilite_scrollercontent;
    }

    lexikon_scroller = document.getElementById? document.getElementById("lexikon_scroller") : document.all.lexikon_scroller;
    if (lexikon_scroller) {
        lexikon_scroller.style.top = 4+"px";
        lexikon_actualheight = lexikon_scroller.offsetHeight;
        lexikon_scrollercontent = lexikon_scroller.innerHTML;
        lexikon_scroller.innerHTML = lexikon_scrollercontent+lexikon_scrollercontent;
    }

    workshop_scroller = document.getElementById? document.getElementById("workshop_scroller") : document.all.workshop_scroller;
    if (workshop_scroller) {
        workshop_scroller.style.top = 4+"px";
        workshop_actualheight = workshop_scroller.offsetHeight;
        workshop_scrollercontent = workshop_scroller.innerHTML;
        workshop_scroller.innerHTML = workshop_scrollercontent+workshop_scrollercontent;
    }

    scroll_lefttime = setInterval("scroller()", scroll_interval)

    js_warning = document.getElementById? document.getElementById("js_warning") : document.all.js_warning;
    js_warning.innerHTML = "";

    debug_div = document.getElementById? document.getElementById("debug") : document.all.debug;

}

function scroller(){

    if (event_scroller) {
        if (parseInt(event_scroller.style.top) > (event_actualheight*(-1)+0)) {
            if (event_hesitate > 0)
                event_hesitate = event_hesitate - scroll_decrement;
            else
                event_scroller.style.top = parseInt(event_scroller.style.top)-event_copyspeed+"px"
        } else {
            event_scroller.style.top = 0-event_copyspeed+"px"
            event_hesitate = 40000/scroll_interval
        }
    }

    // special case:  books == slave of hilite master.
    // books_hesitate = hilite_hesitate;
    // books_copyspeed = hilite_copyspeed;

    if (hilite_scroller) {
        hilite_actualheight = (hilite_scroller.offsetHeight - (hilite_scroller.offsetHeight%2)) / 2;
        hilite_hesitate = hilite_hesitate - scroll_decrement;
        if (hilite_hesitate <= 0 && hilite_copyspeed > 0) {
            hilite_hesitate = 40000 / scroll_interval;
            hilite_article_no = (hilite_article_no + 1) % 5;
            hilite_article = document.getElementById ? document.getElementById("hilite_article"+hilite_article_no) : document.all.hilite_article1;
            if (!hilite_article) {
                hilite_article_no = 0;
                hilite_article = document.getElementById ? document.getElementById("hilite_article"+hilite_article_no) : document.all.hilite_article1;
            }
            hilite_target = -parseInt(hilite_article.offsetTop) + 1;
            if (hilite_target >= parseInt(hilite_scroller.style.top))
                hilite_target = hilite_target - hilite_actualheight;
        }
        if (parseInt(hilite_scroller.style.top) > hilite_target) {
            hilite_scroller.style.top = parseInt(hilite_scroller.style.top)-hilite_copyspeed+"px";
            if (parseInt(hilite_scroller.style.top) < hilite_target)
                hilite_scroller.style.top = hilite_target+"px";
        }
        if (parseInt(hilite_scroller.style.top) < -hilite_actualheight) {
            hilite_scroller.style.top = parseInt(hilite_scroller.style.top) + hilite_actualheight+"px";
            hilite_target = hilite_target + hilite_actualheight;
        }
    }

    if (books_scroller) {
        books_actualheight = (books_scroller.offsetHeight - (books_scroller.offsetHeight%2)) / 2;
        books_hesitate = books_hesitate - scroll_decrement;
        if (books_hesitate <= 0 && books_copyspeed > 0) {
            books_hesitate = 40000 / scroll_interval;
            books_article_no = (books_article_no + 1) % 5;
            books_article = document.getElementById ? document.getElementById("books_article"+books_article_no) : document.all.books_article1;
            if (!books_article) {
                books_article_no = 0;
                books_article = document.getElementById ? document.getElementById("books_article"+books_article_no) : document.all.books_article1;
            }
            books_target = -parseInt(books_article.offsetTop) + 1;
            if (books_target >= parseInt(books_scroller.style.top))
                books_target = books_target - books_actualheight;
        }
        if (parseInt(books_scroller.style.top) > books_target) {
            books_scroller.style.top = parseInt(books_scroller.style.top)-books_copyspeed+"px";
            if (parseInt(books_scroller.style.top) < books_target)
                books_scroller.style.top = books_target+"px";
        }
        if (parseInt(books_scroller.style.top) < -books_actualheight) {
            books_scroller.style.top = parseInt(books_scroller.style.top) + books_actualheight+"px";
            books_target = books_target + books_actualheight;
        }
    }

    if (lexikon_scroller) {
        lexikon_actualheight = (lexikon_scroller.offsetHeight - (lexikon_scroller.offsetHeight%2)) / 2;
        lexikon_hesitate = lexikon_hesitate - scroll_decrement;
        if (lexikon_hesitate <= 0 && lexikon_copyspeed > 0) {
            lexikon_hesitate = 40000 / scroll_interval;
            lexikon_article_no = (lexikon_article_no + 1) % 5;
            lexikon_article = document.getElementById ? document.getElementById("lexikon_article"+lexikon_article_no) : document.all.lexikon_article1;
            if (!lexikon_article) {
                lexikon_article_no = 0;
                lexikon_article = document.getElementById ? document.getElementById("lexikon_article"+lexikon_article_no) : document.all.lexikon_article1;
            }
            lexikon_target = -parseInt(lexikon_article.offsetTop) + 1;
            if (lexikon_target >= parseInt(lexikon_scroller.style.top))
                lexikon_target = lexikon_target - lexikon_actualheight;
        }
        if (parseInt(lexikon_scroller.style.top) > lexikon_target) {
            lexikon_scroller.style.top = parseInt(lexikon_scroller.style.top)-lexikon_copyspeed+"px";
            if (parseInt(lexikon_scroller.style.top) < lexikon_target)
                lexikon_scroller.style.top = lexikon_target+"px";
        }
        if (parseInt(lexikon_scroller.style.top) < -lexikon_actualheight) {
            lexikon_scroller.style.top = parseInt(lexikon_scroller.style.top) + lexikon_actualheight+"px";
            lexikon_target = lexikon_target + lexikon_actualheight;
        }
    }

    if (workshop_scroller) {
        workshop_actualheight = (workshop_scroller.offsetHeight - (workshop_scroller.offsetHeight%2)) / 2;
        workshop_hesitate = workshop_hesitate - scroll_decrement;
        if (workshop_hesitate <= 0 && workshop_copyspeed > 0) {
            workshop_hesitate = 40000 / scroll_interval;
            workshop_article_no = (workshop_article_no + 1) % 5;
            workshop_article = document.getElementById ? document.getElementById("workshop_article"+workshop_article_no) : document.all.workshop_article1;
            if (!workshop_article) {
                workshop_article_no = 0;
                workshop_article = document.getElementById ? document.getElementById("workshop_article"+workshop_article_no) : document.all.workshop_article1;
            }
            workshop_target = -parseInt(workshop_article.offsetTop) + 1;
            if (workshop_target >= parseInt(workshop_scroller.style.top))
                workshop_target = workshop_target - workshop_actualheight;
        }
        if (parseInt(workshop_scroller.style.top) > workshop_target) {
            workshop_scroller.style.top = parseInt(workshop_scroller.style.top)-workshop_copyspeed+"px";
            if (parseInt(workshop_scroller.style.top) < workshop_target)
                workshop_scroller.style.top = workshop_target+"px";
        }
        if (parseInt(workshop_scroller.style.top) < -workshop_actualheight) {
            workshop_scroller.style.top = parseInt(workshop_scroller.style.top) + workshop_actualheight+"px";
            workshop_target = workshop_target + workshop_actualheight;
        }
    }

    // debug_div.innerHTML = "Debug: ";
    // debug_div.innerHTML = debug_div.innerHTML + " workshop_article = " + workshop_article;
    // debug_div.innerHTML = debug_div.innerHTML + " height = " + workshop_actualheight;
    // debug_div.innerHTML = debug_div.innerHTML + " no = " + workshop_article_no;
    // debug_div.innerHTML = debug_div.innerHTML + " target = " + workshop_target;
    // debug_div.innerHTML = debug_div.innerHTML + " top = " + parseInt(workshop_scroller.style.top);
    // debug_div.innerHTML = debug_div.innerHTML + " workshop_hesitate = " + workshop_hesitate;
}


window.onload = populate


