var preloadList = "";

// returns browser-specific reference to .swf object
function thisMovie(movieName)
{
  if (window.document[movieName]) 
  {
      return window.document[movieName];
  }
  if (navigator.appName.indexOf("Microsoft Internet")==-1)
  {
    if (document.embeds && document.embeds[movieName])
      return document.embeds[movieName]; 
  }
  else // if (navigator.appName.indexOf("Microsoft Internet")!=-1)
  {
    return document.getElementById(movieName);
  }
}

function initOverlay(sCurrOverlayID) {
	eval(sCurrOverlayID + "FadeOut.onComplete.subscribe(showContent)");
}

function hideContent(sID, sName) {
	// store current scroll state, to return to when overlay is closed
	nScrollPos = (document.all)?document.body.scrollTop:window.pageYOffset; 
	// scroll up to top; should be tweened
	window.scrollTo(0,0);
	// show overlay layer
	sCurrOverlayID = sID;
	sCurrMovieName = sName;
	contentFadeOut.animate();
	contentDiv.origContentHeight = contentDiv.offsetHeight;
	var contentNewHeight = new YAHOO.util.Anim(contentDiv, { height: { to: document.getElementById(sCurrOverlayID).offsetHeight } }, 0.25);
	contentNewHeight.animate();
}
function showOverlay() {
	contentDiv.style.visibility = "hidden";
	YAHOO.util.Dom.setStyle(contentDiv,"opacity","1");
	var overlayDiv = document.getElementById(sCurrOverlayID);
	YAHOO.util.Dom.setStyle(overlayDiv,"opacity","100");
	overlayDiv.style.visibility = "visible";
	//eval(sCurrOverlayID + "FadeIn.onComplete.subscribe(alertMe)");
	//eval(sCurrOverlayID + "FadeIn.animate()");
	if (sCurrMovieName!='' && sCurrMovieName!=undefined) {
		var flashMovie = eval(sCurrOverlayID + "Html()");
		overlayDiv.innerHTML = flashMovie;
	}
}

function hideOverlay() {
	setTimeout("hideOverlayDelegate()",1000);
	return true;
}

function hideOverlayDelegate() {
	eval(sCurrOverlayID + "FadeOut.animate()");
	if (sCurrMovieName!='' && sCurrMovieName!=undefined) {
		document.getElementById(sCurrOverlayID).innerHTML = "";
	}
}

function showContent() {
	window.scrollTo(0,nScrollPos);
	nScrollPos = 0;
	var overlayDiv = document.getElementById(sCurrOverlayID);
	overlayDiv.style.visibility = "hidden";
	YAHOO.util.Dom.setStyle(overlayDiv,"opacity","1");
	contentDiv.style.visibility = "visible";
	YAHOO.util.Dom.setStyle(contentDiv,"opacity","0");
	contentFadeIn.animate();
	var contentOrigHeight = new YAHOO.util.Anim(contentDiv, { height: { to: contentDiv.origContentHeight } }, 0.25);
	contentOrigHeight.animate();
	contentDiv.focus();
}

function fixIE() {
	if (YAHOO.env.ua.ie > 0) {
		contentDiv.style.removeAttribute('filter');
		overlayDiv.style.removeAttribute('filter');
	}
}

// find all disabled elements and disable them
// from http://textsnippets.com/posts/show/686
function getElementsByClassName(oElm, strTagName, strClassName){
	var arrElements = (strTagName == "*" && document.all)? document.all : oElm.getElementsByTagName(strTagName);
	var arrReturnElements = new Array();
	strClassName = strClassName.replace(/\-/g, "\\-");
	var oRegExp = new RegExp("(^|\\s)" + strClassName + "(\\s|$)");
	var oElement;
	for(var i=0; i<arrElements.length; i++){
		oElement = arrElements[i];
		if(oRegExp.test(oElement.className)){
			arrReturnElements.push(oElement);
		}
	}
	return (arrReturnElements)
}

function setDisabledLinks() {
	//alert('setting disabled');
	var aDisabled = getElementsByClassName(document, '*', 'disabled');
	for (var i=0; i<aDisabled.length; i++) {
		aDisabled[i].href = null;
		aDisabled[i].onclick = function() { return false; } 
		aDisabled[i].onmouseover = function() { return false; } 
	}
}

function preloadImages() {
	if (preloadList !="") {
		var images = new Array();
		var aFiles = preloadList.split(",");
		for (var i=0;i<aFiles.length;i++) {
			if (aFiles[i]!="") {
				images[i] = new Image();
				images[i].src = aFiles[i];
			}
		}
	}
}

function setupFAQs() {
	var hideThese = getElementsByClassName(document, 'span', 'faqAnswer');
	for (i=0;i<hideThese.length;i++) {
		hideThese[i].contents = hideThese[i].innerHTML;
		hideThese[i].innerHTML = "";
		hideThese[i].toggle = function() {
			if (this.innerHTML==""){
				hideFAQs(hideThese);
				this.innerHTML = this.contents;
				this.button.className = "faqButtonShown";
			} else {
				this.innerHTML = "";
				this.button.className = "faqButtonHidden";
			}
		}
	}
	var showThem = getElementsByClassName(document, 'span', 'faqButton');
	for (i=0;i<showThem.length;i++) {
		showThem[i].style.cursor = "pointer";
		showThem[i].innerHTML = "<a>" + showThem[i].innerHTML + "</a>";
		showThem[i].hider = hideThese[i];
		showThem[i].className = "faqButtonHidden";
		hideThese[i].button = showThem[i];
		showThem[i].onclick = function() {
			this.hider.toggle();
		}
	}
}

function hideFAQs(aAnswers) {
	for (i=0;i<aAnswers.length;i++) {
		aAnswers[i].innerHTML = "";
		aAnswers[i].button.className = "faqButtonHidden";
	}
}

window.onload = function() {
	setupFAQs();
	setDisabledLinks();
}