var scrollers = [];
var PRODUCT_CONTAINER_WIDTH = 125*3;
var _scrollingTimer = [];
var _scrollingTimerInterval = [];


function scrollingInterval(index, duration){
	_scrollingTimerInterval[index] = duration;
	_scrollingTimer[index] = window.setInterval("scrollLeft('"+index+"')", _scrollingTimerInterval[index]);
}

var scroll = null; var scroller = null;
function scrollerOnEnd(){
	var ball = this.getCurrentPage();
	var balls = getBalls(this.id);
	var nBalls = balls.length;
	balls[ball].className = "filled"
	ball = (ball+(this.direction == Scroller.DIRECTION.LEFT ? nBalls - this.pagesScrolled : this.pagesScrolled)) % nBalls;
	window.document.getElementById("balls"+this.id).childNodes[ball].className = "hole"
	// --- The button is pressed
	if (scroll != null) scroll(scroller);
}

function getBalls(index){
	return window.document.getElementById("balls"+index).childNodes;
}

function scrollRight(i){
	scrollers[i].scrollRight();
}

function scrollLeft(i){
	if(_scrollingTimer[i]){
		window.clearInterval(_scrollingTimer[i]);
		_scrollingTimer[i] = window.setInterval("scrollLeft('"+i+"')", _scrollingTimerInterval[i]);	
	}
	scrollers[i].scrollLeft();
}

function startScrollingRight(group){
	(scroll = scrollRight)(scroller = group);
}

function startScrollingLeft(group){
	(scroll = scrollLeft)(scroller = group);
}

function stopScrolling(){
	scroll = scroller = null;
}

function scrollingTo(group, page){
	var currentPage = scrollers[group].getCurrentPage();
	if (page == currentPage) return;
	if (page < currentPage) scrollers[group].scrollRight(null, currentPage - page);
	else scrollers[group].scrollLeft(null, page - currentPage);
	if(_scrollingTimer[group]){
		window.clearInterval(_scrollingTimer[group]);
		_scrollingTimer[group] = window.setInterval("scrollLeft('"+group+"')", _scrollingTimerInterval[group]*2);	
	}
}

function vp(reference, partner){
	window.parent.vp(reference, partner);
}

function resizePartnerImage(el){
	var prop;
	if (el.height > el.width) prop = "height"; else prop = "width";
	if (el[prop] > 100) el.style[prop] = "100px";
}
