var objectIdToSlideDown = false;
var activeId = false;
var slideRunning = false;
var slideSpeed = 4;	
var timer = 10;	

function toggleAnswer(e,inputId)
{
	if(slideRunning)return;
	slideRunning = true;
	if(!inputId)inputId = this.id;
	inputId = inputId + '';
	var numericId = inputId.replace(/[^0-9]/g,'');
	var answerDiv = document.getElementById('div_a' + numericId);

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

function ScrollAnswer(inputId,direction)
{
	
	var obj =document.getElementById('div_a' + inputId);
	var contentObj = document.getElementById('div_ac' + inputId);

	height = obj.clientHeight;
	if(height==0)height = obj.offsetHeight;
	height = height + direction;

	slideMore = true;
	if(height>contentObj.offsetHeight){
		height = contentObj.offsetHeight;
		slideMore = false;
	}
	if(height<=1){
		height = 1;
		slideMore = false;
	}

	obj.style.height = height + 'px';
	var topPos = height - contentObj.offsetHeight;
	if(topPos>0)topPos=0;
	contentObj.style.top = topPos + 'px';
	if(slideMore){
		setTimeout('ScrollAnswer(' + inputId + ',' + direction + ')',timer);
	}else{
		if(height<=1){
			obj.style.display='none'; 
			if(objectIdToSlideDown && objectIdToSlideDown!=inputId){
				document.getElementById('div_a' + objectIdToSlideDown).style.visibility='visible';
				document.getElementById('div_a' + objectIdToSlideDown).style.display='block';
				ScrollAnswer(objectIdToSlideDown,slideSpeed);				
			}else{
				slideRunning = false;
			}
		}else{
			activeId = inputId;
			slideRunning = false;
		}
	}
}



function initToggleQA()
{
	var divs = document.getElementsByTagName('DIV');
	var counter = 1;
	for(var no=0;no<divs.length;no++){
		if(divs[no].className=='question'){

			divs[no].onclick = toggleAnswer;
			divs[no].id = 'div_q'+counter;

			var answer = divs[no].nextSibling;
			while(answer && answer.tagName!='DIV'){
				answer = answer.nextSibling;
			}
			answer.id = 'div_a'+counter;	

			contentDiv = answer.getElementsByTagName('DIV')[0];
			contentDiv.style.top = 0 - contentDiv.offsetHeight + 'px'; 	
			contentDiv.className='answer';
			contentDiv.id = 'div_ac' + counter;

			answer.style.display='none';
			answer.style.height='1px';

			counter++;
		}		
	}	
}

