
var accordion_slideSpeed = 50;	// Higher value = faster
var accordion_timer = 1;	// Lower value = faster

var objectIdToSlideDown = false;
var accordion_activeId = false;
var accordion_slideInProgress = false;
function showHideContent(e,inputId)
{
	if(accordion_slideInProgress)return;
	accordion_slideInProgress = true;
	if(!inputId)inputId = this.id;
	inputId = inputId + '';
	var numericId = inputId.replace(/[^0-9]/g,'');
	var contentDiv = document.getElementById('accordion_c' + numericId);

	objectIdToSlideDown = false;
	
	if(!contentDiv.style.display || contentDiv.style.display=='none'){		
		if(accordion_activeId &&  accordion_activeId!=numericId){			
			objectIdToSlideDown = numericId;
			slideContent(accordion_activeId,(accordion_slideSpeed*-1));
		}else{
			
			contentDiv.style.display='block';
			contentDiv.style.visibility = 'visible';
			
			slideContent(numericId,accordion_slideSpeed);
		}
	}else{
		slideContent(numericId,(accordion_slideSpeed*-1));
		accordion_activeId = false;
	}	
}

function slideContent(inputId,direction)
{
	
	var obj =document.getElementById('accordion_c' + inputId);
	var contentObj = document.getElementById('accordion_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 + ')',accordion_timer);
	}else{
		if(height<=1){
			obj.style.display='none'; 
			if(objectIdToSlideDown && objectIdToSlideDown!=inputId){
				document.getElementById('accordion_c' + objectIdToSlideDown).style.display='block';
				document.getElementById('accordion_c' + objectIdToSlideDown).style.visibility='visible';
				slideContent(objectIdToSlideDown,accordion_slideSpeed);			
	
			}else{
				accordion_slideInProgress = false;
			}
		}else{
			accordion_activeId = inputId;
			accordion_slideInProgress = false;
		}
	}
}



function initShowHideDivs()
{
	var divs = document.getElementsByTagName('DIV');
	var divCounter = 1;
	for(var no=0;no<divs.length;no++){
		if(divs[no].className=='accordion_header'){
			divs[no].onclick = showHideContent;
			divs[no].id = 'accordion_h'+divCounter;
			var content = divs[no].nextSibling;
			while(content && content.tagName!='DIV'){
				content = content.nextSibling;
			}
			content.id = 'accordion_c'+divCounter;	
			contentDiv = content.getElementsByTagName('DIV')[0];
			contentDiv.style.top = 0 - contentDiv.offsetHeight + 'px'; 	
			
			contentDiv.className = 'accordion_content_body';
			contentDiv.id = 'accordion_ac' + divCounter;
			content.style.display = 'none';
			content.style.height = '1px';
			divCounter++;
		}		
	}	
}