// Var to store current banner
var curbanner = 0;
// Var to store banner count
var bannercount = 0;

// Create banner
CreateBanner();

function CreateBanner()
{
	document.write('<div class="bigbanner"><div id="bannerholder"></div><div class="scrollbuttons"><table><tr id="scrollbuttons"></tr></table></div></div>');
	nexttimeout = window.setTimeout("NextBanner()", 7000);
}

function AddBanner(linkurl, imageurl, title)
{
	var holder = document.getElementById('bannerholder');
	
	var bannerhtml = '<a href="'+linkurl+'" class="banner" style="background-image:url('+imageurl+')" id="banner-'+bannercount+'"></a>';
	
	holder.innerHTML += bannerhtml;
	
	AddButton(bannercount, title);
	
	if(bannercount == 0)
	{
		SetButtonStyle(0);
	}
	else
	{
		BannerOpacity(0, bannercount);
	}
	
	bannercount++;
}

function AddButton(bannerid, title)
{
	var buttonholder = document.getElementById('scrollbuttons');
	var button = document.createElement('td');
	button.id = 'bbutton-' + bannerid;
	button.setAttribute('onclick', 'ClickToBanner(' + bannerid + ')');
	button.setAttribute('title', title);
	buttonholder.appendChild(button);
}

function ClickToBanner(bannerid)
{
	FadeToBanner(bannerid);
	window.clearTimeout(nexttimeout);
	nexttimeout = window.setTimeout("NextBanner()", 10000);
}

function FadeToBanner(bannerid)
{
	if(bannerid != curbanner)
	{
		FadeIn(bannerid, 0);
		FadeOut(curbanner, 100);
		SetButtonStyle(bannerid);
		curbanner = bannerid;
	}
}

function NextBanner()
{
	if(curbanner == (bannercount - 1))
	{
		FadeToBanner(0);
	}
	else
	{
		FadeToBanner(curbanner + 1);
	}
	
	nexttimeout = window.setTimeout("NextBanner()", 7000);
}

function SetButtonStyle(bannerid)
{
	var oldbutton = document.getElementById("bbutton-"+curbanner);
	oldbutton.className = "";

	var newbutton = document.getElementById("bbutton-"+bannerid);
	newbutton.className = "selected";
}

function FadeIn(bannerid, opacity)
{
	if(opacity < 100)
	{
		opacity+=5;
		BannerOpacity(opacity, bannerid);		
		window.setTimeout("FadeIn("+bannerid+","+opacity+")", 5);
	}
	else
	{
		BannerOpacity(100, bannerid);
	}
}

function FadeOut(bannerid, opacity)
{
	if(opacity > 0)
	{
		opacity-=5;
		BannerOpacity(opacity, bannerid);		
		window.setTimeout("FadeOut("+bannerid+","+opacity+")", 5);
	}
	else
	{
		BannerOpacity(0, bannerid);	
	}
}

// Function to set opacity of a banner
function BannerOpacity(opacity, bannerid) {
  opacity = (opacity == 100)?99.999:opacity;
  
  var banner = document.getElementById('banner-'+bannerid);
  
  if(opacity == 0)
  {
	banner.style.display = 'none';  
  }
  else
  {
	banner.style.display = 'block';  
  }
  
  // IE/Win
  banner.style.filter = "alpha(opacity:"+opacity+")";
  
  // Safari<1.2, Konqueror
  banner.style.KHTMLOpacity = opacity/100;
  
  // Older Mozilla and Firefox
  banner.style.MozOpacity = opacity/100;
  
  // Safari 1.2, newer Firefox and Mozilla, CSS3
  banner.style.opacity = opacity/100;
}
