/**
 * Fonction utilisee pour gerer l'alternance d'ouverture
 * des blocs commentaires recents et posts recents
 */

var timerOpenThisTab;

function openThisTab(tab,clicked){
	//on recupere tout les tab a gerer
	clearTimeout(timerOpenThisTab);
	var dejapasse=false;
	var tabs=$('sidebar').getElementsBySelector('[onclick="openThisTab(this,true);"]');
	
	for ( var i = 0; i < tabs.length; i++) {
		//si on arrive ici apres avoir clique sur un tab
		if(clicked==true){
			//on recupere le parent du div
			var parent=tabs[i].ancestors()[0];
			//pour recuperer son voisin direct dans le DOM
			var next_ul=parent.nextSiblings()[0];
			//Si c'est celui qu'on a cliqué, on l'affiche
			if(tabs[i]==tab){
				if (Element.hasClassName(tabs[i].id, 'selected')){
					break;
				}
				else{
					Element.addClassName(tabs[i].id,'selected');
					Effect.BlindDown(next_ul);
				}
			}
			//Sinon si c'est celui qui était affiché on le cache
			else if (Element.hasClassName(tabs[i].id, 'selected')){
				Element.removeClassName(tabs[i].id,'selected');
				Effect.BlindUp(next_ul);
			}
		}
		//si on arrive ici sans avoir clique sur un tab
		else if(dejapasse==false){
			if (Element.hasClassName(tabs[i].id, 'selected')){
				var parent=tabs[i].ancestors()[0];
				//pour recuperer son voisin direct dans le DOM
				var next_ul=parent.nextSiblings()[0];
				Element.removeClassName(tabs[i].id,'selected');
				Effect.BlindUp(next_ul);
				//par défaut l'element a ouvrir est le suivant
				var tabToChange=tabs[i+1];
				//Si l'element qui avait la class selected est le dernier
				//du tableau on met la classe selected au premier elment du tableau
				if(i==tabs.length-1){
					var tabToChange=tabs[0];
				}
				var parent=tabToChange.ancestors()[0];
				//pour recuperer son voisin direct dans le DOM
				var next_ul=parent.nextSiblings()[0];
				//on affiche l'element 
				Element.addClassName(tabToChange.id,'selected');
				//on ouvre l'ul de cet element
				Effect.BlindDown(next_ul);
				//on met le flag dejapasse a true pour pas que le for continue
				dejapasse=true;
			}
		}
	}
	//on recupere l'element qui a la classe selected
	var tabOuverte=$('sidebar').getElementsByClassName('selected')[0].id;
	//on relance la fonction en passant l'id de l'element selected et false
	//pour signaler que la fonction ne s'effectue par sur le click
	timerOpenThisTab=setTimeout("openThisTab('"+tabOuverte+"',false);",60000);
}

//Initialise les tabs : on ouvre le premier + class selected
function initTabs(){
	var tabs=$('sidebar').getElementsBySelector('[onclick="openThisTab(this,true);"]');
	
	for ( var i = 0; i < tabs.length; i++) {
		//on recupere le parent du div
		var parent=tabs[i].ancestors()[0];
		//pour recuperer son voisin direct dans le DOM
		var next_ul=parent.nextSiblings()[0];
		if(i==0){
			Element.addClassName(tabs[i].id,'selected');
		}else{
			next_ul.style.display="none";
		}
	}
	//on recupere l'element qui a la classe selected
	var tabOuverte=$('sidebar').getElementsByClassName('selected')[0].id;
	//on relance la fonction en passant l'id de l'element selected et false
	//pour signaler que la fonction ne s'effectue par sur le click
	timerOpenThisTab=setTimeout("openThisTab('"+tabOuverte+"',false);",60000);
}