function SlideBox(id, data, itemWidth, itemQuantity) {
	this.arrowLeft = null;
	this.arrowRight = null;
	this.holderObj = null;
	this.linkObj = null;
	this.headers = new Array();
	this.id = id;
	this.data = data;
	this.itemWidth = itemWidth;
	this.itemQuantity = itemQuantity;
	this.currentItem = -1;
	this.disabled = true;
	
	this.manageChange = function(i) {
		this.disabled = true;
		this.headers[this.currentItem].className = "";
		this.headers[i].className = "selected";
		this.linkObj.href = this.data[i];
		this.currentItem = i;
		var o = this;
		if (this.holderObj.offsetLeft < -this.itemWidth*this.currentItem) {
			var dir = 1;
			var growing = true;
			var max_speed = 31;
			var min_speed = 1;
		}
		else {
			var dir = -1;
			var growing = false;
			var max_speed = 1;
			var min_speed = 31;
		}
		project.AnimationManager.addAnimation(this.holderObj,"move-horizontal",31*dir,max_speed*dir,min_speed*dir,-2*dir,0.01*dir,growing,this.holderObj.offsetLeft,-this.itemWidth*this.currentItem,function(){o.disabled=false;},this.id);
	}
	
	this.goLeft = function() {
		if (this.currentItem != 0 && !this.disabled) {
			this.manageChange(this.currentItem-1);
		}
	}
	
	this.goRight = function() {
		if (this.currentItem != this.itemQuantity-1 && !this.disabled) {
			this.manageChange(this.currentItem+1);
		}
	}
	
	this.initialize = function() {
		this.arrowLeft = $(this.id+"_ArrowLeft");
		this.arrowLeft.slideBox = this;
		this.arrowLeft.onclick = function() {
			this.slideBox.goLeft();
		}
		this.arrowRight = $(this.id+"_ArrowRight");
		this.arrowRight.slideBox = this;
		this.arrowRight.onclick = function() {
			this.slideBox.goRight();
		}
		this.holderObj = $(this.id+"_Holder");
		this.holderObj.style.width = (this.itemWidth*this.itemQuantity)+"px";
		this.linkObj = $(this.id+"_Link");
		var hH = $(this.id+"_Headers");
		for (var i=0; i<hH.childNodes.length; i++) {
			obj = hH.childNodes[i];
			if (obj.tagName == 'H2') {
				this.headers.push(obj);
			}
		}
		
		this.currentItem = 0;
		this.disabled = false;
	}
}
