BBAKE.Ticker = function() {
    var IMG_OFFSET = 84;
    var NUM_IMAGES;
    
    var curLeftImg = 0;
    var curRightImg = 7;
    var moveDirection = "Right";
    var movingSpeed = 30;
    var pixJump = 1;
    
    function setupImages() {
        NUM_IMAGES = document.getElementById("tickerImages").getElementsByTagName("a").length;
        var tmpImg;
        var tmpImgStyle;
        for (var i = 0; i < 9; i++) {
            tmpImgStyle = document.getElementById("img" + i).style;
            tmpImgStyle.left = i * IMG_OFFSET + "px";
        }
        for (var i = 9; i < NUM_IMAGES; i++) {
            tmpImgStyle = document.getElementById("img" + i).style;
            tmpImgStyle.left = 0 - IMG_OFFSET + "px";
        }

        moveImages();
    }
    
    function moveImages() {
        if (this.moving) {
            if (moveDirection == "Left") {
                for (var i = curLeftImg; i < curLeftImg + 9; i++) {
                    tmpStyle = document.getElementById("img" + (i % NUM_IMAGES)).style;
                    tmpStyle.left = (parseInt(tmpStyle.left) - pixJump) + "px";
                }
            
                if (parseInt(document.getElementById("img" + curLeftImg).style.left) < 0) {
                    document.getElementById("img" + ((curRightImg + 1) % NUM_IMAGES)).style.left = parseInt(document.getElementById("img" + curRightImg).style.left) + IMG_OFFSET + "px";
                }
                if (parseInt(document.getElementById("img" + curLeftImg).style.left) < (0 - IMG_OFFSET)) {
                    curLeftImg = (curLeftImg + 1) % NUM_IMAGES;
                    curRightImg = (curRightImg + 1) % NUM_IMAGES;
                }
            }
            else {
                for (var i = curLeftImg; i < curLeftImg + 9; i++) {
                    tmpStyle = document.getElementById("img" + (i % NUM_IMAGES)).style;
                    tmpStyle.left = (parseInt(tmpStyle.left) + pixJump) + "px";
                }
            
                if (parseInt(document.getElementById("img" + curRightImg).style.left) > 496) {
                    var nextImg;
                    if (curLeftImg == 0) nextImg = NUM_IMAGES - 1;
                    else nextImg = curLeftImg - 1;
                    document.getElementById("img" + nextImg).style.left = parseInt(document.getElementById("img" + curLeftImg).style.left) - IMG_OFFSET + "px";
                    curLeftImg = nextImg;
                    if (curRightImg == 0) curRightImg = NUM_IMAGES - 1;
                    else curRightImg = curRightImg - 1;
                }
            }
        }
        setTimeout("BBAKE.Ticker.moveImages();", movingSpeed);
    }
    
    function hoverButton(side, onOff) {
        if (onOff) {
            moveDirection = side;
            document.getElementById("tickerButton" + side).src = "img/tickerbutton_" + side + "_on.gif";
            document.getElementById("tickerButton" + side).style.cursor = "hand";
        }
        else {
            document.getElementById("tickerButton" + side).src = "img/tickerbutton_" + side + "_off.gif";
            document.getElementById("tickerButton" + side).style.cursor = "auto";
        }
    }
    
    function setMovement(side, onOff, speed, pix) {
        if (onOff) {
            document.getElementById("tickerButton" + side).src = "img/tickerbutton_" + side + "_click.gif";
        }
        else {
            document.getElementById("tickerButton" + side).src = "img/tickerbutton_" + side + "_on.gif";
        }
        movingSpeed = speed;
        pixJump = pix;
    }

    return {
        init : function() {
            setupImages();
        },
        moveImages : moveImages,
        hoverButton : hoverButton,
        setMovement : setMovement,
        moving : true
    }
}();
    
