function horizontale_scroller(left_button, container, right_button)
{
    this.container = container;
    this.scrollingBezig = false;

    this.scrollToLeft = function() {
        if(this.scrollingBezig) return;//niet teveel scrollen he!
        this.scrollingBezig = true;

        var self = this;
        var widthWindow = $(this.container).parentNode.clientWidth;

        if(isNaN($(this.container).style.left))
        {
            var left = parseInt($(this.container).style.left);
        }
        else
        {
            var left = $(this.container).style.left;
        }

        if((left + widthWindow) > 0)
        {
            new Effect.Move($(this.container), { x: 0, mode: 'absolute', afterFinish: function(){
                self.scrollingBezig = false;
            }});
        }
        else
        {
            new Effect.Move($(this.container), { x: +widthWindow, mode: 'relative', afterFinish: function(){
                self.scrollingBezig = false;
            }});
        }
    }

    this.scrollToRight = function() {
        if(this.scrollingBezig) return;//niet teveel scrollen he!
        this.scrollingBezig = true;

        var self = this;
        var container = $(this.container);
        var widthWindow = container.parentNode.clientWidth;

        if(isNaN(container.style.left))
        {
            var left = parseInt(container.style.left);
        }
        else
        {
            var left = 0;
        }

        var totalleft = Math.abs(left) + (widthWindow * 2);
        var maxLeft = container.getWidth();

        if(totalleft >= maxLeft)
        {
            new Effect.Move($(this.container), { x: -maxLeft + widthWindow, mode: 'absolute', afterFinish: function(){
                self.scrollingBezig = false;
            }});
        }
        else
        {
            new Effect.Move($(this.container), { x: -widthWindow, mode: 'relative', afterFinish: function(){
                self.scrollingBezig = false;
            }});
        }
    }

    //constructor
    var self = this;
    $(left_button).observe('click', function(event){
        self.scrollToLeft();
        event.stop()
    });

    $(right_button).observe('click', function(event){
        self.scrollToRight();
        event.stop()
    });

    return this;
}
