//global variables for rotater
var rotationSpeed = 5000;
var currIndex = 0;
var bannerElements = new Array();

$(document).ready(function() { 
	$(".homeTabWindow").each(function () {
		$(this).animate({ opacity: 0.85 }, 1);
		$(this).css("display", "block");
	}); 
	$("#Nbanner > ul > li").last().addClass("lastItem");
});

function initHomeNBanner() {

    //add hover behaviors for banner links
    $("#Nbanner > ul > li" ).each(
	function() {
    		$(this).hover(
    			function () {
				var oldId = $(this).attr("id");
				var linkId = "#tab" + (currIndex + 1) + "_link";
				if (oldId != linkId) {
					hideCurrentNav();
				}
    				$(this).removeClass("ui-state-default");
    				$(this).addClass("ui-state-active");
    				$(this).addClass("ui-tabs-selected");
				var elmId = oldId.substring(0, oldId.indexOf("_"));
				showContent(elmId, oldId);
  			}, 
  			function () {
    				$(this).removeClass("ui-state-active");
    				$(this).removeClass("ui-tabs-selected");
    				$(this).addClass("ui-state-default");
  			}
    		);
	}
    );

    function showContent(targetId, linkId){
  	$.each(bannerElements, function( intIndex, objValue ){$(objValue).hide().stop(true, true);});
	//TODO: Add some code to start re-cycling images 
	//if hover state hasn't fired in XX seconds
	var currElm = $("#" + targetId);
	currElm.fadeIn(500);
    }

    //add elements to the collection 
    var currElm = $("#tab1");
    addToCollection(currElm);
}


function addToCollection(elm) {
	if (elm.attr("id") != null) {
		var currElmId = elm.attr("id");
		if (currElmId.indexOf("tab") > -1) {
			bannerElements.push(elm); 
			addToCollection($(elm).next("div"));
		} else {
			startBannerAnimation();	
		}
	} else {
		startBannerAnimation();	
	}
}

function startBannerAnimation() {
	//hide all the elements except for the first 
	for (var i = 1; i < bannerElements.length; i++) {
		bannerElements[i].hide();
	}
	//show current element link on state 
	var linkId = "#" + bannerElements[0].attr("id") + "_link";
	$(linkId).addClass("ui-state-active");
    	$(linkId).addClass("ui-tabs-selected");
	contentRotate(bannerElements[0]);
}	

function contentRotate(feature) {	
	feature.fadeIn(500, function () { 			
 		highlightNav();
 		feature.delay(rotationSpeed).fadeOut(500, function () { 			
 			if (currIndex < bannerElements.length -1){
 				currIndex++;
 			} else {
 				currIndex = 0;
 			}	
 			contentRotate($(bannerElements[currIndex]));
		});
  	});
}	

function highlightNav() {
	hideAllNav();
	var linkId = "#" + bannerElements[currIndex].attr("id") + "_link";
	$(linkId).removeClass("ui-state-default");
    	$(linkId).addClass("ui-state-active");
    	$(linkId).addClass("ui-tabs-selected");
}

function hideAllNav() {
	for (var i = 0; i < bannerElements.length; i++) {
		if (i != currIndex) { 
			var linkId = "#" + bannerElements[i].attr("id") + "_link";
    			$(linkId).removeClass("ui-state-active");
    			$(linkId).removeClass("ui-tabs-selected");
    			$(linkId).addClass("ui-state-default");
		}
	}
}

function hideCurrentNav() {
	var linkId = "#tab" + (currIndex + 1) + "_link";
    	$(linkId).removeClass("ui-state-active");
    	$(linkId).removeClass("ui-tabs-selected");
    	$(linkId).addClass("ui-state-default");
}

