var dhtmlgoodies_slideSpeed = 10;	// Higher value = faster
var dhtmlgoodies_timer = 10;	// Lower value = faster

var objectIdToSlideDown = false;
var dhtmlgoodies_activeId = false;
var dhtmlgoodies_slideInProgress = false;
function showHideContent(e,inputId)
{
	if(dhtmlgoodies_slideInProgress)return;
	dhtmlgoodies_slideInProgress = true;
	if(!inputId)inputId = this.id;
	inputId = inputId + '';
	var numericId = inputId.replace(/[^0-9]/g,'');
	var answerDiv = document.getElementById('dhtmlgoodies_a' + numericId);

	objectIdToSlideDown = false;
	
	if(!answerDiv.style.display || answerDiv.style.display=='none'){		
		if(dhtmlgoodies_activeId &&  dhtmlgoodies_activeId!=numericId){			
			objectIdToSlideDown = numericId;
			slideContent(dhtmlgoodies_activeId,(dhtmlgoodies_slideSpeed*-1));
		}else{
			
			answerDiv.style.display='block';
			answerDiv.style.visibility = 'visible';
			
			slideContent(numericId,dhtmlgoodies_slideSpeed);
		}
	}else{
		slideContent(numericId,(dhtmlgoodies_slideSpeed*-1));
		dhtmlgoodies_activeId = false;
	}	
}

function slideContent(inputId,direction)
{
	
	var obj =document.getElementById('dhtmlgoodies_a' + inputId);
	var contentObj = document.getElementById('dhtmlgoodies_ac' + inputId);
	height = obj.clientHeight;
	if(height==0)height = obj.offsetHeight;
	height = height + direction;
	rerunFunction = true;
	if(height>contentObj.offsetHeight){
		height = contentObj.offsetHeight;
		rerunFunction = false;
	}
	if(height<=1){
		height = 1;
		rerunFunction = false;
	}

	obj.style.height = height + 'px';
	var topPos = height - contentObj.offsetHeight;
	if(topPos>0)topPos=0;
	contentObj.style.top = topPos + 'px';
	if(rerunFunction){
		setTimeout('slideContent(' + inputId + ',' + direction + ')',dhtmlgoodies_timer);
	}else{
		if(height<=10){
			obj.style.display='none'; 
			if(objectIdToSlideDown && objectIdToSlideDown!=inputId){
				document.getElementById('dhtmlgoodies_a' + objectIdToSlideDown).style.display='block';
				document.getElementById('dhtmlgoodies_a' + objectIdToSlideDown).style.visibility='visible';
				slideContent(objectIdToSlideDown,dhtmlgoodies_slideSpeed);				
			}else{
				dhtmlgoodies_slideInProgress = false;
			}
		}else{
			dhtmlgoodies_activeId = inputId;
			dhtmlgoodies_slideInProgress = false;
		}
	}
}



function initShowHideDivs()
{
	var divs = document.getElementsByTagName('DIV');
	var divCounter = 1;
	for(var no=0;no<divs.length;no++){
		if(divs[no].className=='dhtmlgoodies_question'){
			divs[no].onclick = showHideContent;
			divs[no].id = 'dhtmlgoodies_q'+divCounter;
			var answer = divs[no].nextSibling;
			while(answer && answer.tagName!='DIV'){
				answer = answer.nextSibling;
			}
			answer.id = 'dhtmlgoodies_a'+divCounter;	
			contentDiv = answer.getElementsByTagName('DIV')[0];
			contentDiv.style.top = 0 - contentDiv.offsetHeight + 'px'; 	
			contentDiv.className='dhtmlgoodies_answer_content';
			contentDiv.id = 'dhtmlgoodies_ac' + divCounter;
			answer.style.display='none';
			answer.style.height='1px';
			divCounter++;
		}		
	}	
}

//window.onload = initShowHideDivs;

// qTip starts

// qTip - CSS Tool Tips - by Craig Erskine

// http://qrayg.com

//

// Multi-tag support by James Crooke

// http://www.cj-design.com

//

// Inspired by code from Travis Beckham

// http://www.squidfingers.com | http://www.podlob.com

//

// Copyright (c) 2006 Craig Erskine

// Permission is granted to copy, distribute and/or modify this document

// under the terms of the GNU Free Documentation License, Version 1.3

// or any later version published by the Free Software Foundation;

// with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts.

// A copy of the license is included in the section entitled "GNU

// Free Documentation License".



var qTipTag = "a,label,input"; //Which tag do you want to qTip-ize? Keep it lowercase!//

var qTipX = 20; //This is qTip's X offset//

var qTipY = -15; //This is qTip's Y offset//



//There's No need to edit anything below this line//

tooltip = {

  name : "qTip",

  offsetX : qTipX,

  offsetY : qTipY,

  tip : null

}



tooltip.init = function () {

	var tipNameSpaceURI = "http://www.w3.org/1999/xhtml";

	if(!tipContainerID){ var tipContainerID = "qTip";}

	var tipContainer = document.getElementById(tipContainerID);



	if(!tipContainer) {

	  tipContainer = document.createElementNS ? document.createElementNS(tipNameSpaceURI, "div") : document.createElement("div");

		tipContainer.setAttribute("id", tipContainerID);

	  document.getElementsByTagName("body").item(0).appendChild(tipContainer);

	}



	if (!document.getElementById) return;

	this.tip = document.getElementById (this.name);

	if (this.tip) document.onmousemove = function (evt) {tooltip.move (evt)};



	var a, sTitle, elements;

	

	var elementList = qTipTag.split(",");

	for(var j = 0; j < elementList.length; j++)

	{	

		elements = document.getElementsByTagName(elementList[j]);

		if(elements)

		{

			for (var i = 0; i < elements.length; i ++)

			{

				a = elements[i];

				sTitle = a.getAttribute("title");				

				if(sTitle)

				{

					a.setAttribute("tiptitle", sTitle);

					a.removeAttribute("title");

					a.removeAttribute("alt");

					a.onmouseover = function() {tooltip.show(this.getAttribute('tiptitle'))};

					a.onmouseout = function() {tooltip.hide()};

				}

			}

		}

	}

}



tooltip.move = function (evt) {

	var x=0, y=0;

	if (document.all) {//IE

		x = (document.documentElement && document.documentElement.scrollLeft) ? document.documentElement.scrollLeft : document.body.scrollLeft;

		y = (document.documentElement && document.documentElement.scrollTop) ? document.documentElement.scrollTop : document.body.scrollTop;

		x += window.event.clientX;

		y += window.event.clientY;

		

	} else {//Good Browsers

		x = evt.pageX;

		y = evt.pageY;

	}

	this.tip.style.left = (x + this.offsetX) + "px";

	this.tip.style.top = (y + this.offsetY) + "px";

}



tooltip.show = function (text) {

	if (!this.tip) return;

	this.tip.innerHTML = text;

	this.tip.style.display = "block";

}



tooltip.hide = function () {

	if (!this.tip) return;

	this.tip.innerHTML = "";

	this.tip.style.display = "none";

}

/*
window.onload = function () {
	tooltip.init ();
}
*/