var thisAd = -1;
var prevAd = '';

function rotate()
{
	if (document.getElementById('top_banner'))
	{
		var top_banner = document.getElementById('top_banner');
		var adImages = 	top_banner.getElementsByTagName("a");
		var imgCt = adImages.length;

		//initialise
		if (thisAd == -1)
		{
			for (var z=0; z<adImages.length; z++)
			{
				adImages[z].style.visibility = 'hidden';
			}
		}

		prevAd = thisAd;
		thisAd++;

		if (thisAd == imgCt)
			thisAd = 0;
	
		if (prevAd != -1)
			showhide_layer(adImages[prevAd].id);
	
		showhide_layer(adImages[thisAd].id);
		banner_dot_focus(thisAd);

		setTimeout("{rotate();}", 2.5 * 1000);
	}
}

function showhide_layer(layer_id)
{
	function setOpacity(value, layer)
	{
		if (layer.style.opacity)
			layer.style.opacity = value/10;

		if (layer.style.filter)
			layer.style.filter = 'alpha(opacity=' + value*10 + ')';
	}

	var layer = document.getElementById(layer_id);
	var vid_hid = (layer.style.visibility == "visible") ? "hidden" : "visible";
	if (vid_hid == "visible")//fadein
	{
		setTimeout(function(){setOpacity(0, layer)}, 0);
		setTimeout(function(){layer.style.visibility = vid_hid}, 0);
		setTimeout(function(){setOpacity(1, layer)}, 10);
		setTimeout(function(){setOpacity(2, layer)}, 20);
		setTimeout(function(){setOpacity(3, layer)}, 30);
		setTimeout(function(){setOpacity(4, layer)}, 40);
		setTimeout(function(){setOpacity(5, layer)}, 50);
		setTimeout(function(){setOpacity(6, layer)}, 60);
		setTimeout(function(){setOpacity(7, layer)}, 70);
		setTimeout(function(){setOpacity(8, layer)}, 80);
		setTimeout(function(){setOpacity(9, layer)}, 90);
		setTimeout(function(){setOpacity(10, layer)}, 100);
	}
	else if (vid_hid == "hidden")//fadeout
	{
		setTimeout(function(){setOpacity(10, layer)}, 0);
		setTimeout(function(){setOpacity(9, layer)}, 10);
		setTimeout(function(){setOpacity(8, layer)}, 20);
		setTimeout(function(){setOpacity(7, layer)}, 30);
		setTimeout(function(){setOpacity(6, layer)}, 40);
		setTimeout(function(){setOpacity(5, layer)}, 50);
		setTimeout(function(){setOpacity(4, layer)}, 60);
		setTimeout(function(){setOpacity(3, layer)}, 70);
		setTimeout(function(){setOpacity(2, layer)}, 80);
		setTimeout(function(){setOpacity(1, layer)}, 90);
		setTimeout(function(){setOpacity(0, layer)}, 100);
		setTimeout(function(){layer.style.visibility = vid_hid}, 100);
	}
}

function make_banner_dots()
{
	var dot_div = document.getElementById('banner_dots');

	//dynamically generate the dots according to the number of banner images
	var banner_imgs = document.getElementById('top_banner').getElementsByTagName("a");
	for (var i=0; i<banner_imgs.length; i++)
	{
		dot_div.innerHTML += '<span>[X]</span>&nbsp;&nbsp;';
	}


	var dots = dot_div.getElementsByTagName("span");

	for (var i=0; i<dots.length; i++)
	{
		if (i == 0)
		{
			dots[i].style.backgroundColor = '#000000';
			dots[i].style.color = '#000000';
		}
	}
}

function banner_dot_focus(id)
{
	var dots = document.getElementById('banner_dots').getElementsByTagName("span");

	for (var i=0; i<dots.length; i++)
	{
		if (i == id)
		{
			dots[i].style.backgroundColor = '#000000';
			dots[i].style.color = '#000000';
		}
		else
		{
			dots[i].style.backgroundColor = '#F45B5B';
			dots[i].style.color = '#F45B5B';
		}
	}
}

function tip_hide(container)
{
	var index = document.getElementById(container);
	var f_layer = document.getElementById("tooltip");
	if(f_layer)
		index.removeChild(f_layer);
}

function tip_disp(e, self, container)
{
	var index = document.getElementById(container);

	var offsety = 20;
	var width = 180;//width of tooltip

	var tooltip = document.createElement("div");
	tooltip.setAttribute("id", "tooltip");

	self.onmousemove = function(e)
	{
		if (!e) var e = window.event;
		if (e.pageX || e.pageY)
		{
			posx = e.pageX;
			posy = e.pageY;
		}
		else if (e.clientX || e.clientY)
		{
			if (document.documentElement)
			{
				posx = e.clientX + document.documentElement.scrollLeft;
				posy = e.clientY + document.documentElement.scrollTop;
			}
			else if (document.body)
			{
				posx = e.clientX + document.body.scrollLeft;
				posy = e.clientY + document.body.scrollTop;
			}
		}

		var f_layer = document.getElementById("tooltip");
		if (f_layer)
			index.removeChild(f_layer);

		if (!tooltip.hasChildNodes())
		{
			var description = document.createElement("div");
			description.innerHTML = self.getAttribute('alt');
			tooltip.appendChild(description);
		}

		index.appendChild(tooltip);

		if (self.innerWidth) // all except Explorer
			var doc_width = self.innerWidth;
		else if (document.documentElement && document.documentElement.clientWidth)	// Explorer 6 Strict Mode
			var doc_width = document.documentElement.clientWidth;
		else if (document.body) // other Explorers
			var doc_width = document.body.clientWidth;

		if (document.documentElement)
			var tip_align = ((doc_width - posx  + document.documentElement.scrollLeft)/posx)+width-20;
		else if (document.body)
			var tip_align = ((doc_width - posx  + document.body.scrollLeft)/posx)+width-20;

		tooltip.style.width = width+"px";
		tooltip.style.left = (posx+tip_align-width-80)+"px";

		tooltip.style.top = offsety+posy+"px";
	}//end onmousemove
}
