var FAQ = {
	
	hideAnswerBlocks: function () {
		var answerDivs = YAHOO.util.Dom.getElementsByClassName('faqAnswerBlock', 'div');
		
		for(var i = 0; i < answerDivs.length; i++) {
			answerDiv = answerDivs[i];
			answerDiv.jHeight = answerDiv.offsetHeight;
			answerDiv.style.display = "none";
		}
		
	},
	
	registerEvents: function() {
		
		//Register the events for showing the Hidden Elements
		var faqQuestionLinks = YAHOO.util.Dom.getElementsByClassName('expandLink', 'a');
		
		for(var i = 0; i < faqQuestionLinks.length; i++) {
			link = faqQuestionLinks[i];
			faqID = link.getAttribute('faqid');
			
			questionExpandImgID = "expandImage" + faqID;
			questionExpandImg = YAHOO.util.Dom.get(questionExpandImgID);
			
			
			answerElementID = "answer" + faqID;
			answerElement = YAHOO.util.Dom.get(answerElementID);
			answerElement.expandState = false;
			answerElement.firstExecution = true;
			
			
			YAHOO.util.Event.addListener(link, "click", this.toggleHiddenElement, {answerElement: answerElement, questionExpandImg: questionExpandImg}, this);
		}

	},
	
	toggleHiddenElement: function(evt, obj) {
		YAHOO.util.Event.stopEvent(evt);
		answerElement = obj.answerElement;
		questionExpandImg = obj.questionExpandImg;
		
		if(answerElement.expandState){
			eff = new YAHOO.widget.Effects.BlindUp(answerElement);
			answerElement.expandState = false;
			answerElement.firstExecution = false;
			questionExpandImg.src = "/images/expand.gif";
			questionExpandImg.height = 9;
			questionExpandImg.width = 9;
		}
		else{
			answerElement.style.height = answerElement.jHeight + "px";
			eff = new YAHOO.widget.Effects.BlindDown(answerElement);
			answerElement.expandState = true;
			answerElement.firstExecution = false;
			questionExpandImg.src = "/images/collapse.gif";
			questionExpandImg.height = 9;
			questionExpandImg.width = 9;
		}
	}
};