/*******************************
* EC Scripts
*
*******************************/
var featureCount = 0;
var currentFeature;
var featureRefObjs;
var featureImgObjs;
var featureStepObjs = new Array();



/*********************************
* function showHide
* IN: object ID (or an array of IDs)
*
* this function is used to toggle
* the visibility of a page element
**********************************/
function showHide(objIds,dispType) {
	if(isArray(objIds)){
		for(var i=0; i<objIds.length; i++){
			var objRef=document.getElementById(objIds[i]);
			if (objRef.style.display=='none') {
				objRef.style.display=dispType;
			} else {
				objRef.style.display='none';
			}
		}
	}
	else {	
		var objRef=document.getElementById(objIds);
		if (objRef.style.display=='none') {
			objRef.style.display=dispType;
		} else {
			objRef.style.display='none';
		}
	}
	
}

/****************************
* function isArray
* IN: any variable
* OUT: bool
*
* This function returns true if the variable
* that was passed in is an array 
*******************************/
function isArray(myVar) {	
	var tempType = typeof myVar;
	//alert(tempType);

	if (tempType == "string")
		return false;
	else
		return true;
}

function toggleComments(objRef) {
	var commentRef = objRef.parentNode;
	
	if(objRef.className == "closed"){
		//commentRef.style.marginLeft = "0px";
		commentRef.parentNode.className = "";
		objRef.className = "open";
	}
	else {
		//commentRef.style.marginLeft = COMMENT_START_MARGIN;
		objRef.className = "closed";
		commentRef.parentNode.className = "closedContainer";
	}
}

function showComments(objID) {
	var objRef = document.getElementById(objID);
	//var commentRef = objRef.parentNode;
	
	//commentRef.style.marginLeft = "0px";
	//commentRef.className = "open";
	toggleComments(objRef);
}

function setNav(navID) {
	var navRef = document.getElementById("nav_"+navID);
	highlightNav(navRef);
}
function unsetNav(navID) {
	var navRef = document.getElementById("nav_"+navID);
	unhighlightNav(navRef);
}
function setSubNav(navID) {
	var navRef = document.getElementById("subnav_"+navID);
	highlightNav(navRef);
}
function unsetSubNav(navID) {
	var navRef = document.getElementById("subnav_"+navID);
	unhighlightNav(navRef);
}

function highlightNav(navRef) {
	//if(navRef.id.indexOf("subnav_") == -1)
		navRef.parentNode.className = navRef.parentNode.className + " selected";

	navRef.className = navRef.className + " selected";
}
function unhighlightNav(navRef) {
	currStyle = navRef.className;
	pieces = currStyle.split(" ");

	if(navRef.id.indexOf("subnav_") == -1)
		navRef.parentNode.className = "";
	navRef.className = pieces[0];
}


/************************
* init feature story controller
************************/
function initFeature() {
	featureRefObjs = document.getElementById("homeFeatureCopy").getElementsByTagName("DIV");
	//featureImgObjs = document.getElementById("featureImage").getElementsByTagName("IMG");
	tempStepObjs = document.getElementById("featureController").getElementsByTagName("A");
	featureCount = featureRefObjs.length;
	currentFeature = 0;
	
	for(j=1; j<=featureCount; j++){
		featureStepObjs.push(tempStepObjs[j]);
	}
	
	for(i=1; i<featureCount; i++){
		featureRefObjs[i].style.display = "none";
		//featureImgObjs[i].style.display = "none";
	}
}

function showNext() {
	newIndex = (currentFeature + 1) % featureCount;
	currentFeature = newIndex;
	showFeature(newIndex);
}

function showPrev() {
	newIndex = (currentFeature + featureCount - 1) % featureCount;
	currentFeature = newIndex;
	showFeature(newIndex);
}

function showFeature(targetID){
	//targetID = targetID;
	currentFeature = targetID;
	for(i=0; i<featureCount; i++){
		if(i == targetID) {
			featureRefObjs[i].style.display = "inline";
			//featureImgObjs[i].style.display = "inline";
			featureStepObjs[i].className = "stepSelected";
		}
		else {
			featureRefObjs[i].style.display = "none";
			//featureImgObjs[i].style.display = "none";
			featureStepObjs[i].className = "step";
		}
	}
}
