var playing = true;
var fadeIn = true;

var Reel_CurrentOpacity = 0;
var Reel_NumImages			= 0;
var Reel_NextImage			= 1;
var Reel_TimeoutId			= null;
var Reel_ForegroundImage	= null;
var Reel_BackgroundImage	= null;
var Reel_CurrentImage		= 0;

var Reel_FadeOpacityIncrement	= 3;
var Reel_FadeStepInterval	= 10;
var Reel_FadeImageInterval	= 5000;

var Reel_Links				= new Array();

function Reel_GoToLink(linkurl)
{
	var url = Reel_Links[Reel_CurrentImage];
	
	if (url != null && url != "")
		window.location = url;
}

function Reel_AddHomeImage(parent, range, imgSrc, imgLink, caption)
{
	var id = Reel_NumImages++;
	
	if (id == 0) {
		if (imgLink != "" && imgLink != null)
			parent.innerHTML +=
			"<img id=\"ss" + id + "\" src=\"" + imgSrc + "\" style=\"position:absolute; top:0; left: 0; cursor:hand;\" " +
			" border=0 onclick=\"Reel_GoToLink()\" width=710 height=330>" +
			"<div class=\"firstCaption" + range + "\" id=\"caption" + id + "\" " +
			"style=\"cursor:hand;\">" + caption + "</div>";
		else
			parent.innerHTML +=
			"<img id=\"ss" + id + "\" src=\"" + imgSrc + "\" style=\"position:absolute; top:0; left: 0\" width=710 height=330>" +
			"<div id=\"caption" + id + "\"></div>";
	}
	else {
		if (imgLink != "" && imgLink != null)
			parent.innerHTML +=
			"<img id=\"ss" + id + "\" src=\"" + imgSrc + "\" " +
			"style=\"position:absolute;top:0;left:0;cursor:hand;opacity:0;filter:alpha(opacity=0)\" " +
			"border=0 onclick=\"Reel_GoToLink()\" width=710 height=330>" +
			"<div class=\"caption" + range + "\" id=\"caption" + id + "\" " +
			"style=\"cursor:hand;\">" + caption + "</div>";
		else
			parent.innerHTML +=
			"<img id=\"ss" + id + "\" src=\"" + imgSrc + "\" style=\"position:absolute; top:0; left: 0; " +
			"opacity: 0; filter: alpha(opacity=0)\" border=0 width=710 height=330>" +
			"<div id=\"caption" + id + "\"></div>";
	}

	Reel_Links.push(imgLink);
}

function Reel_Start()
{
	Reel_CurrentImage = 0;
	
	Reel_ControlDown(document.getElementById("reelPlay"));	

	if (Reel_NumImages > 1)
	{
		Reel_NextImage = 1;
		Reel_TimeoutId = window.setTimeout(Reel_Fade, Reel_FadeImageInterval);
	}
	else
	{
		Reel_ControlDown(document.getElementById("reelRewind"));	
		Reel_ControlDown(document.getElementById("reelPause"));	
		Reel_ControlDown(document.getElementById("reelForward"));	
	}
}

function Reel_Start_No_Control()
{
	Reel_CurrentImage = 0;
	
	if (Reel_NumImages > 1)
	{
		Reel_NextImage = 1;
		Reel_TimeoutId = window.setTimeout(Reel_Fade, Reel_FadeImageInterval);
	}
}

function Reel_Fade()
{
	var prevImage = Reel_NextImage - 1;
	if (prevImage < 0)
		prevImage = Reel_NumImages - 1;

	var hiding = document.getElementById("ss" + prevImage);		
	var hidingCaption = document.getElementById("caption" + prevImage);	
	
	hiding.style.filter = "alpha(opacity=" + (100 - Reel_CurrentOpacity) + ")";
	hidingCaption.style.filter = "alpha(opacity=" + (100 - Reel_CurrentOpacity) + ")";
	
	hiding.style.opacity = (100 - Reel_CurrentOpacity) / 100;
	hidingCaption.style.filter = "alpha(opacity=" + (100 - Reel_CurrentOpacity) + ")";
	
	var showing = document.getElementById("ss" + Reel_NextImage);
	var showingCaption = document.getElementById("caption" + Reel_NextImage);
	
	showing.style.filter = "alpha(opacity=" + Reel_CurrentOpacity + ")";
	showingCaption.style.filter = "alpha(opacity=" + Reel_CurrentOpacity + ")";
	
	showing.style.opacity = (Reel_CurrentOpacity / 100);
	showingCaption.style.filter = "alpha(opacity=" + Reel_CurrentOpacity + ")";
	
	//hiding.style.visibility = 'hidden';
	//showing.style.visibility = 'visible';
	
	
//	document.all["message"].innerHTML = "hiding: " + hiding.id + " " + hiding.style.opacity + "<br>" +
//										"showing: " + showing.id + " " + showing.style.opacity;

	Reel_CurrentOpacity += Reel_FadeOpacityIncrement;
	
	if (Reel_CurrentOpacity >= 50) 
		Reel_CurrentImage = Reel_NextImage;
	
	if (Reel_CurrentOpacity <= 100)
		Reel_TimeoutId = window.setTimeout(Reel_Fade, Reel_FadeStepInterval);
	else
	{
		if (++Reel_NextImage >= Reel_NumImages)
			Reel_NextImage = 0;
			
		Reel_CurrentOpacity = 0;
		Reel_TimeoutId = window.setTimeout(Reel_Fade, Reel_FadeImageInterval);
	}
}

function Reel_ControlDown(img)
{
	img.style.filter = "alpha(opacity=50)";
	img.style.opacity = 0.5;
}

function Reel_ControlUp(img)
{
	img.style.filter = "alpha(opacity=100)";
	img.style.opacity = 1.0;
}

function Reel_MouseOver(img)
{
	if (img.id == "reelPlay" && playing)
		return;

	if (img.id == "reelPause" && !playing)
		return;

	Reel_ControlDown(img);		
}

function Reel_MouseOut(img)
{
	if (img.id == "reelPlay" && playing)
		return;
		
	if (img.id == "reelPause" && !playing)
		return;

	Reel_ControlUp(img);
}

function Reel_Pause()
{
	if (playing)
	{
		Reel_ControlDown(document.getElementById("reelPause"));
		Reel_ControlUp(document.getElementById("reelPlay"));
		playing = false;
		
		window.clearTimeout(Reel_TimeoutId);
	}
}

function Reel_Play()
{
	if (!playing)
	{
		Reel_ControlUp(document.getElementById("reelPause"));
		Reel_ControlDown(document.getElementById("reelPlay"));
		playing = true;

		Reel_TimeoutId = window.setTimeout(Reel_Fade, 0);
	}
}

function Reel_Rewind()
{
	var curImage = 0;
	
	if (playing)
		curImage = Reel_NextImage;
	else
	{	
		curImage = Reel_NextImage - 1;
		if (curImage < 0)
			curImage = Reel_NumImages - 1;
	}

	var prevImage = curImage - 1;
	if (prevImage < 0)
		prevImage = Reel_NumImages - 1;
	
	Reel_Pause();

	var hiding = document.getElementById("ss" + curImage);			
	hiding.style.filter = "alpha(opacity=" + (0) + ")";
	hiding.style.opacity = 0;
	
	var showing = document.getElementById("ss" + prevImage);
	showing.style.filter = "alpha(opacity=100)";
	showing.style.opacity = 1;
	
	Reel_NextImage = prevImage + 1;
	if (Reel_NextImage >= Reel_NumImages)
		Reel_NextImage = 0;

	Reel_CurrentOpacity = 0;
}

function Reel_Forward()
{
	Reel_Pause();

	var prevImage = Reel_NextImage - 1;
	if (prevImage < 0)
		prevImage = Reel_NumImages - 1;

	var hiding = document.getElementById("ss" + prevImage);			
	hiding.style.filter = "alpha(opacity=" + (0) + ")";
	hiding.style.opacity = 0;
	
	var showing = document.getElementById("ss" + Reel_NextImage);
	showing.style.filter = "alpha(opacity=100)";
	showing.style.opacity = 1;
	
	if (++Reel_NextImage >= Reel_NumImages)
		Reel_NextImage = 0;
		
	Reel_CurrentOpacity = 0;
}