var TabbedPane = function(classe){
	this.classe=classe
	this.tabbedpane= $(classe); 
	this.titoli = Array(); 	
	this.etichette = Array();
 };
TabbedPane.prototype = {
	carica : function(){
		this.panes = this.getElementsByClassName(this.tabbedpane,"div","pane");
		var div_menu = new Element("div"); 
		div_menu.set("class", "tabbed_pane_container_etichette");
		for(var i = 0; i<this.panes.length;i++){
			this.creaMenuLink(div_menu,this.panes[i],i);
			if(i>0){
			this.panes[i].set("class","pane hidden");
			}
		} 
		
		div_menu.inject(this.tabbedpane,"before");
			
		var test = new Element("div");
		test.set("id","test"); 
		test.inject(this.tabbedpane); 
		test.innerHTML = this.titoli; 
		},
	creaMenuLink : function(div_menu,pane,i){
		var a_titolo = new Element("a"); 
		var h2 = new Element(pane.getElementsByTagName("h2")[0]); 
		a_titolo.innerHTML= h2.innerHTML;
		h2.dispose();
		var div_etichetta = new Element("div"); 
		var select = ""; 
		if(i==0){
		 select = "_selected"; 
		}
		div_etichetta.set("class", "tabbed_pane_etichetta"+select);
		
		var div_etichetta_testo = new Element("div"); 
		div_etichetta_testo.set("class", "tabbed_pane_etichetta_testo"+select);
				
		var div_etichetta_img = new Element("div"); 
		div_etichetta_img.set("class", "tabbed_pane_etichetta_img"+select);
		
	

		div_etichetta_testo.inject(div_etichetta);
		a_titolo.inject(div_etichetta_testo);
		div_etichetta_img.inject(div_etichetta);
				
		this.etichette[i] = div_etichetta ;  		

		div_etichetta.inject(div_menu);
		a_titolo.set("class",this.classe+"_pane_"+i);
		a_titolo.addEvent('click', function(event) {
			event = new Event(event);
			a = event.target; 
			n  = a.get("class").replace(this.classe+"_pane_",""); 
			this.hiddenAll(n);
		}.bind(this));
			
	},
	hiddenAll : function(s){
		
		for(i = 0; i<this.panes.length;i++){
			var pane = this.panes[i]; 
			var div_etichetta= this.etichette[i];
			var div_etichetta_testo = this.getElementsByClassName(div_etichetta,"div","tabbed_pane_etichetta_testo")[0]; 	
			if(!div_etichetta_testo){
				div_etichetta_testo = this.getElementsByClassName(div_etichetta,"div","tabbed_pane_etichetta_testo_selected")[0]; 
			}		
			var div_etichetta_img =  this.getElementsByClassName(div_etichetta,"div","tabbed_pane_etichetta_img")[0]; 
			if(!div_etichetta_img){
				div_etichetta_img = this.getElementsByClassName(div_etichetta,"div","tabbed_pane_etichetta_img_selected")[0]; 
			}		
	
	
			if(i!=s){
				pane.set("class","pane hidden");
				div_etichetta.set("class", "tabbed_pane_etichetta");
				div_etichetta_testo.set("class", "tabbed_pane_etichetta_testo");
				div_etichetta_img.set("class", "tabbed_pane_etichetta_img");
				
			}else{
				pane.set("class","pane");
				div_etichetta.set("class", "tabbed_pane_etichetta_selected");
				div_etichetta_testo.set("class", "tabbed_pane_etichetta_testo_selected");
				div_etichetta_img.set("class", "tabbed_pane_etichetta_img_selected");
			}
		}
	},
	getElementsByClassName : function(oElm, strTagName, strClassName){
	    var arrElements = (strTagName == "*" && document.all)? document.all : oElm.getElementsByTagName(strTagName);
	    var arrReturnElements = new Array();
	    strClassName = strClassName.replace(/\-/g, "\\-");
	    var oRegExp = new RegExp("(^|\\s)" + strClassName + "(\\s|$)");
	    var oElement;
	    for(var i=0; i<arrElements.length; i++){
	        oElement = arrElements[i];      
	        if(oRegExp.test(oElement.className)){
	            arrReturnElements.push(new Element(oElement));
	        }   
	    }
	    return (arrReturnElements)
	}
}

