
// array of layers to fade between
var content1 = ["layer1a", "layer2a", "layer3a", "layer4a", "layer5a", "layer6a", "layer7a", "layer8a", "layer9a", "layer10a", "layer11a", "layer12a", "layer15a", "layer16a"];
var content2 = ["layer1b", "layer2b", "layer3b", "layer4b", "layer5b", "layer6b", "layer7b", "layer8b", "layer9b", "layer10b", "layer11b", "layer12b", "layer15b", "layer16b"];
var content3 = ["layer1c", "layer2c", "layer3c", "layer4c", "layer5c", "layer6c", "layer7c", "layer8c", "layer9c", "layer10c", "layer11c", "layer12c", "layer15c", "layer16c"];
var delay1 = 2000; // delay between layer changes (in milliseconds)
var delay2 = 2000; 
var delay3 = 2000;
var fadeTime = .8; // time for fade effect to last (in seconds)

function getBrowser()
{
	// return the viewer's browser
	if (navigator.userAgent.toLowerCase().indexOf("opera")!= -1)
		return "NS6";
	else if (document.all)
		return "MSIE";
	else if (document.layers)
		return "NS4";
	else if (document.getElementById)
		return "NS6";
	else
		return null;
}

// internal variables - DO NOT EDIT
var browser = getBrowser();
var counter1 = 0, counter2 = 0, counter3 = 0;
var strLayers1 = new Array();
var strLayers2 = new Array();
var strLayers3 = new Array();
var i = 0;
var changeInt1 = null;
var changeInt2 = null;
var changeInt3 = null;

function getLayer(name)
{
	// return a reference to the given layer
	if (browser == "MSIE")
		return document.all[name].style;
	else if (browser == "NS4")
		return document.layers[name];
	else if (browser == "NS6")
		return document.getElementById(name).style;
	else
		return null;
}

function init()
{
	// create references to the layers
	for (i=0; i<content1.length; i++)
	{
		strLayers1[i] = content1[i];
		content1[i] = getLayer(content1[i]);
	}
	for (i=0; i<content1.length; i++)
	{
		strLayers2[i] = content2[i];
		content2[i] = getLayer(content2[i]);
	}
	for (i=0; i<content1.length; i++)
	{
		strLayers3[i] = content3[i];
		content3[i] = getLayer(content3[i]);
	}

	// check for errors and incompatibilities
	if (browser == null)
	{
		alert("Your browser doesn't support this script.");
		return;
	}
	if (content1.length != content2.length || content1.length != content3.length)
	{
		alert("The arrays of layers do not match.");
		return;
	}

	// initialize the script
	counter = 1;
	content1[0].visibility = "visible";
	content2[0].visibility = "visible";
	content3[0].visibility = "visible";
	changeInt1 = setInterval("changeLayerNum(1)", delay1 + fadeTime*1000);
	changeInt2 = setInterval("changeLayerNum(2)", delay2 + fadeTime*1000);
	changeInt3 = setInterval("changeLayerNum(3)", delay3 + fadeTime*1000);
}

function changeLayerNum(arrayNum)
{
	var counter = eval("counter"+arrayNum);
	var cLen = eval("content"+arrayNum+".length - 1");

	if (counter > cLen)
	{
		eval("counter"+arrayNum+" = 0");
		counter = 0;
	}

	show = counter;
	if (counter > 0)
		hideNum = counter - 1;
	else
		hideNum = cLen;

	if (browser == "MSIE")
	{
		var layerToHide = document.all[eval("strLayers"+arrayNum+"["+hideNum+"]")];
		var layerToShow = document.all[eval("strLayers"+arrayNum+"["+show+"]")];

		eval("content"+arrayNum+"["+hideNum+"].filter = \"blendTrans(duration="+fadeTime+")\"");
		layerToHide.filters[0].apply();
		eval("content"+arrayNum+"["+hideNum+"].visibility = \"hidden\"");
		layerToHide.filters[0].play();

		eval("content"+arrayNum+"["+show+"].filter = \"blendTrans(duration="+fadeTime+")\"");
		layerToShow.filters[0].apply();
		eval("content"+arrayNum+"["+show+"].visibility = \"visible\"");
		layerToShow.filters[0].play();
	}
	else
	{
		eval("content"+arrayNum+"["+hideNum+"].visibility = \"hidden\"");
		eval("content"+arrayNum+"["+show+"].visibility = \"visible\"");
	}

	eval("counter"+arrayNum+"++");
}