
Event.observe(window,'load',startTabs);
	
function startTabs(){
	var maxH;
	var tipoH;
	var myEls;
	//---------------------------------------------------------------------	
	
	var tabList = $('frame').getElementsByClassName('tabList'); 
	for (var t=0; t < tabList.length ; t++  ) {
		tipoH = $(tabList[t]).getAttribute('altezza');
		maxH = 0;

		var tabElements = $(tabList[t]).getElementsByTagName('div');

		
		for (var i=0; i < tabElements.length ; i++ ) {
			if ($(tabElements[i]).hasClassName('tabGreyON')){					
				eval("activeTab_" + tabElements[i].id.split('_')[1] + " = tabElements[i].id.split('_')[2]");				
				isTab = true;
			}else if ($(tabElements[i]).hasClassName('tabGreyOFF')){
				isTab = true;			
			}else{
				isTab = false;
			}			
			if (isTab){
				Event.observe(tabElements[i], 'click' , tabs.clicked.bindAsEventListener(tabs));
				Event.observe(tabElements[i], 'mouseover' , tabs.over.bindAsEventListener(tabs));
				Event.observe(tabElements[i], 'mouseout' , tabs.out.bindAsEventListener(tabs));
				maxH = Math.max(maxH, $("tabcontent_" + tabElements[i].id.split('_')[2]).getHeight()); 				
			}	
			
			
		}

		if (tipoH=="max"){
			myEls = tabList[t].up().getElementsByClassName('tabcontent');
			for (var tt=0; tt<myEls.length; tt++){ 
				myEls[tt].style.height = maxH +  'px';
			}
		}
	}		
	//---------------------------------------------------------------------
	
}


var tabs = {
	showTab: function(event) {

		var myDiv = Event.findElement(event, 'div');
		
		var idTabList = myDiv.id.split('_')[1];
		var activeTab = eval("activeTab_" + idTabList);
		
		//spegne vecchio
		Element.removeClassName($('label_' + idTabList + '_' + activeTab),'tabGreyOVER');
		Element.removeClassName($('label_' + idTabList + '_' + activeTab),'tabGreyON');
		Element.addClassName($('label_' + idTabList + '_' + activeTab),'tabGreyOFF');

		if ($('tabcontent_' +activeTab)!= null){
			$('tabcontent_' +activeTab).hide();
		}

				
		//accende nuovo
		Element.removeClassName(myDiv,'tabGreyOVER');
		Element.removeClassName(myDiv,'tabGreyOFF');
		Element.addClassName(myDiv,'tabGreyON');
		if ($('tabcontent_' + $(myDiv).id.split('_')[2]) != null){
			$('tabcontent_' + $(myDiv).id.split('_')[2]).show();
		}
		
		//imposta activeTab per prossime chiamate
		activeTab =  $(myDiv).id.split('_')[2];	
		//alert(activeTab);
		
		eval("activeTab_" + idTabList + " = " + activeTab);
						
		
	}, //showTab
	exit: function(event){
	},//exit
	
	clicked: function(event,myStyle){
		var myDiv = Event.findElement(event, 'div');
		var myTab = myDiv.up('div.tabList');

		if (myTab) {
			var openOnClick = myTab.getAttribute('openOnClick');
		}
		// if superfluo?
		if (openOnClick == 'true') {
			this.showTab(event);
		}	
	},//clicked

	
	over: function(event){
		var myDiv = Event.findElement(event, 'div');
		idTabList = myDiv.id.split('_')[1];
		activeTab = eval("activeTab_" + idTabList);
		
		var myTab = myDiv.up('div.tabList');
		if (myTab) {
			var openOnClick = myTab.getAttribute('openOnClick');
		}
		if (openOnClick == 'true') {
			//accende il tab-label sotto il mouse
			if (myDiv.id.split('_')[2] != activeTab){
				Element.removeClassName(myDiv,'tabGreyOFF');
				Element.addClassName(myDiv,'tabGreyOVER');
			}
		}
		// visualizza il tab attivo e nasconde gli altri
		if (openOnClick == 'false') {
			this.showTab(event);
		} else {
				myDiv.style.cursor='pointer';	
		}	
	},//over
	out: function(event){
		var myDiv = Event.findElement(event, 'div');
		idTabList = myDiv.id.split('_')[1];
		activeTab = eval("activeTab_" + idTabList);
		myDiv.style.cursor='';	

		if (myDiv.id.split('_')[2] != activeTab){
			Element.removeClassName(myDiv,'tabGreyOVER');
			Element.addClassName(myDiv,'tabGreyOFF');
		}		
		
	}//out
} //tabs





