var windowSize = 5;
var size = 120; //width for 1 img (padding[4] + img[116])
var speed = 250000; //100miliseconds
var DX = 1; //px
var VMAX = 10000 * DX; //px ns-1
var DV   =  1250 * DX; //px ns-1

var count = 0;
var n = 0;
var animate = true;
var v = VMAX;


function setAnimate(newValue) {
	animate = newValue;
}

function moveX() {
	if (objIds.length<=windowSize) {
		return;
	}
	
	var animateLocal = animate;
	
	//decelerating
	if ((v > 0) && !animateLocal) {
		v = v - DV;
		//alert(v);
	}
	
	//accelerating
	if ((v < VMAX) && animateLocal) {
		v = v + DV;
		//alert(v);
	}
	
	//Not moving. Continue pooling flag 'animate'.
	if ((v == 0) && !animateLocal) {
		//alert("...");
		var TMIN = speed / (VMAX);
		setTimeout("moveX()", TMIN);
		return;
	}
	
	count++;
	var onScreen = new Array();
	
	for (i=0; i<(windowSize+1); i++) {
		onScreen[i] = objIds[(n+i)%objIds.length];
	}
	
	if (count%size==0) {
		count = 0;
		n++;
		
		n = n%objIds.length;
		
		var hide = n-1;
		
		if(hide<0) {
			hide = objIds.length-1;
		}
		
		var ready = n+windowSize;
		
		ready = ready%objIds.length;
	
		for (i=0; i<(windowSize+1); i++) {
			onScreen[i] = objIds[(n+i)%objIds.length];
		}
		
		hideImg(objIds[hide]);
		prepareImg(objIds[ready]);
	}
	
	for (i=0; i<onScreen.length; i++) {		
		//alert(document.getElementById(onScreen[i]));
		document.getElementById(onScreen[i]).style.left = parseInt(document.getElementById(onScreen[i]).style.left) - DX + 'px';
	}
	
	var t = speed / (v);
	setTimeout("moveX()", t);
}

function hideImg(imgId) {
	document.getElementById(imgId).style.visibility = 'hidden';
}

function prepareImg(imgId) {
	document.getElementById(imgId).style.left = (size*windowSize) + 'px';
	document.getElementById(imgId).style.visibility = 'visible';
}

function changePromo(n) {
//		document.getElementById('promoTextLink').href = promoLinks[n];
//		document.getElementById('promoTitle').innerHTML = promoTitles[n];
//		document.getElementById('promoDescription').innerHTML = promoDescriptions[n];
	document.getElementById('promoLink').href = promoLinks[n];
	document.getElementById('promoLink').target = promoLinkTargets[n];
	document.getElementById('promoImg').src = promoImgs[n];
} 

function drawRefreshPromoThumb() {
	changePromo(0);
	for (i=0; i<objIds.length; i++) {
		document.write('<div id="' + objIds[i] + '" style="position:absolute; top:0px; left:' + (size*i) + 'px" onclick="changePromo(' + i + ');"><img src="' + promoImgThumbs[i] + '" border="0" /></div>');
	}
}
//end here for rotating promo.

thisAd = 0;

function cycleAds(){
	if (document.images){
		//if (document.promoImg.complete){
			if (++thisAd == promoImg.length)
			thisAd = 0;
			
			document.getElementById('promoLink').href = promoLinks[n];
			document.getElementById('promoLink').target = promoLinkTargets[n];
			document.getElementById('promoImg').src = promoImgs[n];
		//}
	}
	setTimeout("cycleAds()", 9500);
}