var AutoTrans = true;
var TimerFlip;
var AutoFlipTimeout = 10; // in seconds
var TransitionTimeout = 200; // in miliseconds

var aryStageItems = new Array();


var ActiveStageItemDiv;


function FirstLoad(blnInsp)
{   
	ActiveStageItemDiv = 'divStage' + 0;
	
	var ActiveIndex = 0;
	
	var div;
	
	
	// ## Here down to the commented section is new.
	
	div = new objController();
	
	var i = 0;
	
	while (div.Load('divStage' + i))
	{
	    if (div.Hide() == true)
	        aryStageItems[i] = '';
	    i++;
	}
	
	/*
	for (i = 0; i < aryStageItems.length; i++)
	{
		div = new objController('divStage' + i);
		div.Hide();
	}
	*/
	
	div = new objController('divStage' + ActiveIndex);
	div.Show('absolute');
	div.FadeIn(TransitionTimeout);

	ResetTimer();
	
	DrawButtons('light', blnInsp);
}



function ChangeActiveStageItem(divOld, divNew)
{
    //alert(divOld + ' to ' + divNew);
    if (divOld == divNew)
	    return;
	
    var objNewDiv = new objController(divNew);
    objNewDiv.SetOpacity(1);
    objNewDiv.Show('absolute');
    objNewDiv.FadeIn(TransitionTimeout);
	
    var objOldDiv = new objController(divOld);
    objOldDiv.FadeOut(TransitionTimeout);
	//objOldDiv.Hide();
	
	var div;
	for (i = 0; i < aryStageItems.length; i++)
	{
		div = new objController('divStage' + i);
		//alert('Hide ' + i + ' ' + div.Hide());
		div.Hide();
		//alert(i);
	}
	//alert('hi');
	objNewDiv.Show('absolute');
    ActiveStageItemDiv = divNew;
    ResetTimer();
}


function ResetTimer()
{
	clearTimeout(TimerFlip);
	TimerFlip = setTimeout("AutoFlip()", (AutoFlipTimeout * 1000));
}


function Flip()
{
	var cI; // Current Index
	var nI; // New Index
	
	cI = ActiveStageItemDiv.replace('divStage', '');
	nI = parseInt(cI) + 1;
	
	// This allows us to go back to number 1 if we've ran out
	if (cI == (aryStageItems.length - 1))
		nI = 0;
	
	// Sets the selectedIndex of the ddl to our New Index 
	ActiveStageItemDiv = 'divStage' + nI;
	
	ChangeActiveStageItem('divStage' + cI, 'divStage' + nI);
}


function AutoFlip()
{
	if (AutoTrans == true)
	{
		Flip();
	}
	ResetTimer();
}

function setAuto(bln)
{
	AutoTrans = bln;
	if (bln == true)
		ResetTimer();
}

function showDiv(id)
{
	ChangeActiveStageItem(ActiveStageItemDiv, id);
}

function DrawButtons(param1, blnInsp)
{

	div = new objController();
	
	var i = 0;
	
	while (div.Load('divStageButtons' + i))
	{
		//if (false) { 
		if (blnInsp) {
			div.Object.innerHTML = "<table cellpadding=\"0\" cellspacing=\"0\" style=\"width: 100%;\"><tr><td style=\"text-align: left;\"><a href=\"TVStationLocator.aspx\" style=\"font-weight: bold; font-style: italic;\">Watch us Thursday nights at 6 PM on Inspiration!</a></td><td>" + GetButtonHTML(i, div.Object.innerHTML) + "</td></tr></table>";
		}
		else {
			div.Object.innerHTML = GetButtonHTML(i, div.Object.innerHTML);
		}
	    
	    i++;
	}

}

function GetButtonHTML(ButtonSet, FontShade)
{
	var trail = ' &nbsp;|&nbsp; ';
	
	var fontClass = '';
	if (FontShade == 'dark')
		fontClass = 'StageButtonsD';
	else
		fontClass = 'StageButtonsL';
		
	var output = '';


	try
	{
		if (blnStageShowAllOffersLink == true)
			output += '<a href="AllBanners.aspx" target="_blank">All Offers</a>' + trail;
	}
	catch (err)
	{ }
		
	div = new objController();
	
	var i = 0;
	
	//console.log(aryStageItems.length);
	
	while (div.Load('divStage' + i))
	{
	    //console.log(i);
	    //if (i == CurrentStageID)
	    
	    //		    output += '<span style="font-weight: bold; text-decoration: underline;">' + (i + 1) + '</span>\n';
	    //output += '<span class="menu"><span class="menu MenuItem4" style="border: 1px solid #333333; padding: 2px 8px 2px 8px; font-weight: bold;">' + (i + 1) + '</span></span>\n';
	    
	    //output += '<table class="menu" cellpadding="0" cellspacing="1"><tr><td class="MenuItem4" style="padding: 2px 8px 2px 8px; font-weight: bold;">' + (i + 1) + '</td></tr></table>\n';
	    
	    if (i == ButtonSet)
			output += '<span class="menu"><span class="menu MenuItem4 ActiveStage">' + (i + 1) + '</span></span>\n';
		else	
		    output += '<span style="border: 1px solid none; padding: 2px 8px 2px 8px;"><a href="javascript:showDiv(\'divStage' + i + '\');">' + (i + 1) + '</a></span>\n';
	    
	    //console.log(div.Load('divStage' + i));
	    i++;
	    
	    //console.log(i);
	    //console.log('divStage' + i);
	    //console.log(div.Load('divStage' + i));
	    
	    if (div.Load('divStage' + i))
			output += trail + '\n';
	}
	
	return output;
}

function drawButtons(asking, fontcolor)
{
	var trail = ' &nbsp;|&nbsp; ';
	
	var fontClass = '';
	if (fontcolor == 'dark')
		fontClass = 'StageButtonsD';
	else
		fontClass = 'StageButtonsL';
		
	//document.write('<div class="StageButtons ' + fontClass + '">');
	for (i = 0; i < aryStageItems.length; i++)
	{
		if (i == (aryStageItems.length - 1))
			trail = '';
		if (i == asking)
		    document.write('<span style="font-weight: bold; text-decoration: underline;">' + (i + 1) + '</span>' + trail);
		else	
		    document.write('<a href="javascript:showDiv(\'divStage' + i + '\');">' + (i + 1) + '</a>' + trail);
	}
	//document.write('</div>');
}