addLoadHandler(rotateImage);

function addLoadHandler(handler)
{
	if(window.addEventListener)
	{
		window.addEventListener("load",handler,false);
	}
	else if(window.attachEvent)
	{
		window.attachEvent("onload",handler);
	}
	else if(window.onload)
	{
		var oldHandler = window.onload;
		window.onload = function piggyback()
		{
		    oldHandler();
		    handler();
		};
	}
	else
	{
		window.onload = handler;
	}
}

var showmenu;
var rotTime = new Array();
var rotTimeout = 5000;
var rImg = new Array();
var rRef = new Array();

function rotateImage()
{
	rImg[1] = document.getElementById('best1');
	rImg[2] = document.getElementById('best2');
	rImg[3] = document.getElementById('best3');
	rImg[4] = document.getElementById('best4');
	rRef[1] = document.getElementById('bestref1');
	rRef[2] = document.getElementById('bestref2');
	rRef[3] = document.getElementById('bestref3');
	rRef[4] = document.getElementById('bestref4');

	if(rImg[1])
	{
		rImg[1].onload = function () { clearTimeout(rotTime[1]); rotTime[1] = setTimeout('doRotateImageNext(1)', rotTimeout); };
		doRotateImageNext(1);
	}
	if(rImg[2])
	{
		rImg[2].onload = function () { clearTimeout(rotTime[2]); rotTime[2] = setTimeout('doRotateImageNext(2)', rotTimeout); };
		doRotateImageNext(2);
	}
	if(rImg[3])
	{
		rImg[3].onload = function () { clearTimeout(rotTime[3]); rotTime[3] = setTimeout('doRotateImageNext(3)', rotTimeout); };
		doRotateImageNext(3);
	}
	if(rImg[4])
	{
		rImg[4].onload = function () { clearTimeout(rotTime[4]); rotTime[4] = setTimeout('doRotateImageNext(4)', rotTimeout); };
		doRotateImageNext(4);
	}
}

function get_random(len)
{
    return Math.round(Math.random()*(len-1));
}

var rotImages;
var rotTxt;
var rotRef;
var imgIdx = -1;

function doRotateImageNext(num)
{
	if(showmenu==false) {
		clearTimeout(rotTime[num]);
		imgIdx++;
		if(imgIdx >= rotImages.length)
		{
			imgIdx = 0;
		}
		doRotateImage(num);
	}
	else {
		clearTimeout(rotTime[num]);
		if(num==1) {
			rotTime[1] = setTimeout('doRotateImageNext(1)', rotTimeout);
		}
		else if(num==2) {
			rotTime[2] = setTimeout('doRotateImageNext(2)', rotTimeout);
		}
		else if(num==3) {
			rotTime[3] = setTimeout('doRotateImageNext(3)', rotTimeout);
		}
		else if(num==4) {
			rotTime[4] = setTimeout('doRotateImageNext(4)', rotTimeout);
		}
	}
}

function doRotateImage(nimg)
{
	if(rImg[nimg] && rImg[nimg].src.indexOf(rotImages[imgIdx]) < 0)
	{
		try
		{
			if(document.all)
			{
				rImg[nimg].style.filter = 'progid:DXImageTransform.Microsoft.RandomDissolve(duration=1)';
				//rImg[nimg].style.filter = 'progid:DXImageTransform.Microsoft.Fade(duration=1, overlap=1, center=0)';
			}
			rImg[nimg].filters[0].apply();
			rImg[nimg].src = rotImages[imgIdx];
			rImg[nimg].alt = rotTxt[imgIdx];
			rRef[nimg].href = rotRef[imgIdx];
			rImg[nimg].filters[0].play();
		}
		catch (exception)
		{
			rImg[nimg].src = rotImages[imgIdx];
			rImg[nimg].alt = rotTxt[imgIdx];
			rRef[nimg].href = rotRef[imgIdx];
		}
	}
	else if(rotTime[nimg])
		clearTimeout(rotTime[nimg]);
}
