var states = new Array();
var queues = new Array();

function openTab(indexId){
	if(states[indexId]==null){
		states[indexId] = 'new';
	}	
	if(states[indexId]=='closing-wait'){
		states[indexId] = 'open';
	}else if(states[indexId]=='new' || states[indexId]=='closed'){
		states[indexId] = 'opening';	
		Effect.BlindDown('thumb_'+indexId,{transition: Effect.Transitions.linear,fps:10,duration:1,afterFinish:finishOpen});			
	}else if(states[indexId] == 'opening' || states[indexId] == 'open'){
		//do nothing
		queues[indexId] = null;
	}else{
		queues[indexId] = 'open';
	}
}

function finishOpen(effect){
	var indexId = effect.element.getAttribute("indexId");
	states[indexId] = 'open';
	if(queues[indexId]=='close'){
		queues[indexId]=null;
		closeTab(indexId);
	}	
}

function closeTab(indexId){
	if(states[indexId]==null){
		states[indexId] = 'open';
	}
	if(states[indexId]=='open'){
		states[indexId] = 'closing-wait';
		setTimeout('realClose('+indexId+')',100);
		//Effect.BlindUp('thumb_'+indexId,{transition: Effect.Transitions.linear,fps:10,duration:1,afterFinish:finishClose});	
	}else if(states[indexId]=='closed' || states[indexId]=='closing'){
		//do nothing
		queues[indexId] = null; 
	}else{
		queues[indexId] = 'close';	
	}
}	

function realClose(indexId){
	if(states[indexId] == 'closing-wait'){
		states[indexId] = 'closing';
		Effect.BlindUp('thumb_'+indexId,{transition: Effect.Transitions.linear,fps:10,duration:1,afterFinish:finishClose});
	}else{
		//do nothing
	}
}

function finishClose(effect){
	var indexId = effect.element.getAttribute("indexId");
	states[indexId] = 'closed';	
	if(queues[indexId]=='open'){
		queues[indexId]=null;
		openTab(indexId);
	}
}


/*
function closeTabs(){
	var cbUl = document.getElementById("cbUl");
	var tabs = cbUl.childNodes;
	for(var i=0; i<tabs.length;i++){
		try{
			var liItem = tabs[i];
			var thumbSpan = document.getElementById('thumb' + liItem.id);
			thumbSpan.style.display='none';
			//closeTab(liItem.id.substring(1));
		}catch(err){
			//alert(err);
		}
	}
}


try{
	window.attachEvent("onload", closeTabs);
}catch(err){
	closeTabs();
}
*/

