var ListSlider = new Class({
    Implements: [Events, Options],

    options: {
        'speed': 1000
    },

    initialize: function(id, options) {
        this.setOptions(options);

        this.element = $(id);
        this.list = this.element.getElement('.content ul');
        var size = 0;
        this.list.getElements('li').each(function(item) {
            size += item.getSize().x + 40;
        });
        this.list.setStyle('width', size+'px');

        this.element.addEvent('mouseenter', function(e) {
            //this.stop();
        }.bind(this));
        this.element.addEvent('mouseleave', function(e) {
            //this.start();
        }.bind(this));
    },

    start: function() {
        this.scrollingIntervalId = this.scroll.periodical(this.options.speed, this);
//        this.scroll();
    },

    stop: function() {
        $clear(this.scrollingIntervalId);
    },

    scroll: function() {
        this.list.set('tween', {
            'onComplete': function() {
                this.list.getElement('li').inject(this.list, 'bottom');
                this.list.setStyle('margin-left', '0px');
//                this.scroll();
            }.bind(this)
        });
        this.list.tween('margin-left', (0 - this.list.getElement('li').getSize().x));
    }
});
