//-- **/

/*
 * js function to manage tabs in MEOW2
 * 
 * @date 05/09/2005
 *
 */

// constants
var classSelectedHeader = "celluleheadTab";
var classNotSelectedHeader = "celluleheadDisableTab";
var imgLeftDecoHead = "/images/tab_left_on.gif";
var imgRightDecoHead = "/images/tab_right_on.gif";
var imgLeftDecoHeadDisable = "/images/tab_left_off.gif";
var imgRightDecoHeadDisable = "/images/tab_right_off.gif";
var suffix_header = "Head";
var suffix_left_deco = "LeftDeco";
var suffix_right_deco = "RightDeco";

/**
 * go to next tab
 * @param parameterName
 */
function nextTab(parameterName){
  var strIdAttName = parameterName+'previous';
  var valueId = eval(strIdAttName);
  var nextId =  parseInt(valueId)+1;
  changeTab(parameterName, nextId);
}

/**
 * go to previous tab
 * @param parameterName
 */
function previousTab(parameterName){
  var strIdAttName = parameterName+'previous';
  var valueId = eval(strIdAttName);
  var previousId =  parseInt(valueId)-1;
  changeTab(parameterName, previousId);
}

/**
 * change tab with id given in parameter
 * @param parameterName
 * @param idTab index of the tab to display
 */
function changeTab(parameterName,idTab) { 
	var nbTabs = eval(parameterName+'nbTabs');
 	var valueId = eval(parameterName+'previous');
 	
	if(idTab == -1 || idTab >= nbTabs ||valueId == idTab){
		return;
	}

	//disable all header             
	for (i=0; i < nbTabs; i++){

		//changer header
		var header= parameterName+i+suffix_header;
		var left_deco =  parameterName+i+suffix_left_deco;
		var right_deco =  parameterName+i+suffix_right_deco;
		
		document.getElementById(header).className=classNotSelectedHeader;
		var left_elt = document.getElementById(left_deco);
		left_elt.src=imgLeftDecoHeadDisable;
		var right_elt = document.getElementById(right_deco);
		right_elt.src=imgRightDecoHeadDisable;
	}

	
	//enable selected tab header
	var header= parameterName+idTab+suffix_header;
	var left_deco = parameterName+idTab+suffix_left_deco;
	var right_deco = parameterName+idTab+suffix_right_deco;
	
	document.getElementById(header).className=classSelectedHeader;
	var left_elt = document.getElementById(left_deco);
	left_elt.src=imgLeftDecoHead;
	var right_elt = document.getElementById(right_deco);
	right_elt.src=imgRightDecoHead;
	
	//sav current content into tmp
	var showedId = parameterName+'tdId';
	var nextId= parameterName+idTab;

	var tmp = document.getElementById(showedId).innerHTML;
	//change content of the body
	document.getElementById(showedId).innerHTML=document.getElementById(nextId).innerHTML;

	//clean current hidden div to evict double declaration
	document.getElementById(nextId).innerHTML="";
	
	//store current index of the tab
	//
	// TODO: multiple
	document.getElementById('selectedTab').value=idTab;

	//restaure previous content in the correct hidden div

	var funct = eval(parameterName+'RestaurePreviousTab');
	funct(valueId, idTab, tmp);
}

function mpChangeTab(url){
  window.location.href=url;
}

function setFromTabValue(tabValue){
	document.getElementById('_meow.fromtabs').value= tabValue;
}