var currentAdNum = "1";
var currentAd = "transitionAd";
var nextAd = "1ad";
var adAfterNext = "transitionAd";
var IntervalID = "";
function startShow(){
			IntervalID = setInterval ( 'adShowOrdered(null)', 5000 );
}
function stopShow(){
		clearInterval(IntervalID);
}
function adShowOrdered(adName){
	speed = 1000;
	if(adName != null){
		if(adName == currentAd){return}
		//stopShow();
		nextAd = adName;
		adAfterNext = "transitionAd";
		speed = 0;
	}
	var found;
	var currentAdField = document.getElementById(currentAd);
	var nextAdField = document.getElementById(nextAd);
	if(currentAdField && nextAdField){
		var myOpacity = 100;
		opacity(currentAd,myOpacity,0,speed);
		opacity(nextAd,0,100,speed);
		window.status = nextAdField.title;		
		currentAd = nextAd;
		nextAd = adAfterNext;
		var num = parseFloat(currentAd);
		if(isNaN(num)){
			adAfterNext = "transitionAd";
		}else{
getNextNum:	
			for (i = 0; i < 50; i++){	
				num = num + 1
				if(document.getElementById(num+"ad")){
					found = true;
					break getNextNum;
				}else{
					found = false;
				}
			}
			if(!found){
				nextAd = "transitionAd";
				adAfterNext = "1ad";
			}else{
				adAfterNext = num+"ad";
			}
		}		
	}
}
function adShowRandom(){
adShowLoop:
	for (i = 0; i < 100; i++){
		adNum = Right(Math.random()+"",1);
		ad1Name = 'ad' + adNum;
		ad2Name = 'ad' + currentAdNum;
		if(ad1Name != ad2Name){
			if(document.getElementById(ad1Name+"") && document.getElementById(ad2Name+"")){
				opacity(ad2Name,100,0,1000);
				opacity(ad1Name,0,100,1000);
				currentAdNum =  adNum;
				break adShowLoop;
			}
		}
	}
}
function Left(str, n){
	if (n <= 0)
	    return "";
	else if (n > String(str).length)
	    return str;
	else
	    return String(str).substring(0,n);
}
function Right(str, n){
    if (n <= 0)
       return "";
    else if (n > String(str).length)
       return str;
    else {
       var iLen = String(str).length;
       return String(str).substring(iLen, iLen - n);
    }
}

function opacity(id, opacStart, opacEnd, millisec) {
	//speed for each frame
	var speed = Math.round(millisec / 100);
	var timer = 0;

	//determine the direction for the blending, if start and end are the same nothing happens
	if(opacStart > opacEnd) {
		for(i = opacStart; i >= opacEnd; i--) {
			setTimeout("changeOpac(" + i + ",'" + id + "')",(timer * speed));
			timer++;
		}
	} else if(opacStart < opacEnd) {
		for(i = opacStart; i <= opacEnd; i++)
			{
			setTimeout("changeOpac(" + i + ",'" + id + "')",(timer * speed));
			timer++;
		}
	}
}

//change the opacity for different browsers
function changeOpac(opacity, id) {
	var object = document.getElementById(id).style; 
	object.display = "block";
	object.opacity = (opacity / 100);
	object.MozOpacity = (opacity / 100);
	object.KhtmlOpacity = (opacity / 100);
	object.filter = "alpha(opacity=" + opacity + ")";
}

function shiftOpacity(id, millisec) {
	//if an element is invisible, make it visible, else make it ivisible
	if(document.getElementById(id).style.opacity == 0) {
		opacity(id, 0, 100, millisec);
	} else {
		opacity(id, 100, 0, millisec);
	}
}

function blendimage(divid, imageid, imagefile, millisec) {
	var speed = Math.round(millisec / 100);
	var timer = 0;
	
	//set the current image as background
	document.getElementById(divid).style.backgroundImage = "url(" + document.getElementById(imageid).src + ")";
	
	//make image transparent
	changeOpac(0, imageid);
	
	//make new image
	document.getElementById(imageid).src = imagefile;

	//fade in image
	for(i = 0; i <= 100; i++) {
		setTimeout("changeOpac(" + i + ",'" + imageid + "')",(timer * speed));
		timer++;
	}
}

function currentOpac(id, opacEnd, millisec) {
	//standard opacity is 100
	var currentOpac = 100;
	
	//if the element has an opacity set, get it
	if(document.getElementById(id).style.opacity < 100) {
		currentOpac = document.getElementById(id).style.opacity * 100;
	}

	//call for the function that changes the opacity
	opacity(id, currentOpac, opacEnd, millisec)
}