var BookAnimation = {
	div:null,
	length: 0,
	fx:null,
	index: 0,
	timer: 0,
	initialize: function(div) {
		this.div = div;
		this.fx = new Fx.Tween(this.div, {duration: BookAnimation.vars.tweenDuration});
		this.length = this.div.getElements('.book.clearfix').length;
		this.timer = setInterval(this.next.bind(this), BookAnimation.vars.duration);
	},
	next: function() {
		clearInterval(this.timer);
		this.index++;
		this.fx.cancel();
		if (this.index >= this.length) {
			this.fx.start('margin-left', 0);
			this.index = 0;
		} else {
			var target = -(BookAnimation.vars.width * this.index);
			this.fx.start('margin-left', target);
		}
		this.timer = setInterval(this.next.bind(this), BookAnimation.vars.duration);
	},
	prev: function() {
		clearInterval(this.timer);
		this.index--;
		this.fx.cancel();
		if (this.index < 0) {
			this.fx.start('margin-left', -(BookAnimation.vars.width * (this.length - 1)));
			this.index = this.length - 1;
		} else {
			var target = -(BookAnimation.vars.width * this.index);
			this.fx.start('margin-left', target);
		}
		this.timer = setInterval(this.next.bind(this), BookAnimation.vars.duration);
	}
};
BookAnimation.vars = {
	width: 214,
	height: 133,
	duration: 5000,
	tweenDuration: 500
};
window.addEvent('load', function() {
	BookAnimation.initialize($$('.books_box.clearfix')[0]);
});
