var slideSpeed = 10;	// Higher value = faster
var _timer = 10;	// Lower value = faster

var objectIdToSlideDown = false;
var rightActiveId = false;
var leftActiveId = false;
var slideInProgress = false;

var cellPos;
cellPos = 'right';

function showHideContent(numericId, cellPosInp){
	if(slideInProgress)return;
	slideInProgress = true;
	cellPos = cellPosInp;
	
	//reset selected item class
	document.getElementById('accordionHeadInner_'+cellPos+'_'+numericId).className = 'accordionHead_selected';
	if(cellPos=='right'){
		if(document.getElementById('accordionHeadInner_right_'+rightActiveId)) document.getElementById('accordionHeadInner_right_'+rightActiveId).className = 'accordionHead_normal';
	}else{
		if(document.getElementById('accordionHeadInner_left_'+leftActiveId)) document.getElementById('accordionHeadInner_left_'+leftActiveId).className = 'accordionHead_normal';
	}
	//if(!inputId)inputId = this.id;
	//inputId = inputId + '';
	//console.log(numericId);
	
	//var numericId = inputId.replace(/[^0-9]/g,'');
	var answerDiv = document.getElementById('accordionBodyCntnr_'+cellPos+'_' + numericId);

	objectIdToSlideDown = false;
	if(cellPos=='right'){
		//clicked on right boxes
		if(!answerDiv.style.display || answerDiv.style.display=='none'){		
			if(rightActiveId &&  rightActiveId!=numericId){			
				objectIdToSlideDown = numericId;
				slideContent(rightActiveId,(slideSpeed*-1));
				
			}else{
				answerDiv.style.display='block';
				answerDiv.style.visibility = 'visible';
				slideContent(numericId,slideSpeed);
			}
		}else{
			slideContent(numericId,(slideSpeed*-1));
			rightActiveId = false;
		}
		
	}else{
		//clicked on left boxes
		if(!answerDiv.style.display || answerDiv.style.display=='none'){		
			if(leftActiveId &&  leftActiveId!=numericId){			
				objectIdToSlideDown = numericId;
				slideContent(leftActiveId,(slideSpeed*-1));
				
			}else{
				answerDiv.style.display='block';
				answerDiv.style.visibility = 'visible';
				slideContent(numericId,slideSpeed);
				
			}
			
		}else{
			slideContent(numericId,(slideSpeed*-1));
			leftActiveId = false;
			
		}
	}	
};

function slideContent(inputId,direction){
	
	var obj =document.getElementById('accordionBodyCntnr_'+cellPos+'_'+inputId);
	var contentObj = document.getElementById('accordionBodyCntnt_'+cellPos+'_'+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 + ',"' + cellPos + '")',_timer);
	}else{
		if(height<=1){
			obj.style.display='none'; 
			if(objectIdToSlideDown && objectIdToSlideDown!=inputId){
				document.getElementById('accordionBodyCntnr_'+cellPos+'_'+objectIdToSlideDown).style.display='block';
				document.getElementById('accordionBodyCntnr_'+cellPos+'_'+objectIdToSlideDown).style.visibility='visible';
				slideContent(objectIdToSlideDown,slideSpeed);				
			}else{
				slideInProgress = false;
			}
		}else{
			if(cellPos=='right'){
				rightActiveId = inputId;
			}else{
				leftActiveId = inputId;
			}
			slideInProgress = false;
		}
	}
};


/*
function initShowHideDivs(){
	var divs = document.getElementsByTagName('DIV');
	var divCounter = 1;
	for(var no=0;no<divs.length;no++){
		if((divs[no].className=='accordionHeadCntnrCss_right') || (divs[no].className=='accordionHeadCntnrCss_left')){
			var cell = (divs[no].className=='accordionHeadCntnrCss_right') ? 'right' : 'left' ;
			divs[no].onclick = showHideContent;//assign prpoer function 
			divs[no].id = 'accordionHead_'+cell+'_'+divCounter;
			
			//retrieve body container
			var answer = divs[no].nextSibling;
			while(answer && answer.tagName!='DIV'){
				answer = answer.nextSibling;
			}
			answer.id = 'accordionCntnr_'+cell+'_'+divCounter;	// dhtmlgoodies_a ==> 
			contentDiv = answer.getElementsByTagName('DIV')[0];
			contentDiv.style.top = 0 - contentDiv.offsetHeight + 'px'; 	
			contentDiv.className='accordionBodyCss_content';
			contentDiv.id = 'accordionBodyCntnr_'+cell+'_' + divCounter;
			answer.style.display='none';
			answer.style.height='1px';
			divCounter++;
		}		
	}	
}
window.onload = initShowHideDivs;
*/
