var MsgDiv = {
	init : function() {
		if (!document.getElementById || !document.createTextNode) {return;} 
			// Verifica il supporto per il DOM
		
		var div_array = this.getElementsByClassName(document , "div" ,"input_field" ); 
		for(i=0; i<div_array.length;i++){
			this.init_div(div_array[i]);
		}
	},
	init_div : function (div){
			acess = this.getElementsByClassName(
						div ,
						"div" ,
						"form accessibilita"	
					)[0];	
			info = this.getElementsByClassName(
						div,
						"div" ,
						"form info"	
					)[0];	
			
			if(acess||info){
				text = this.init_label(div);	
				if(acess)					
					this.init_alert(acess,text)
				if(info)
					this.init_alert(info,text)	
			}
	},
	init_label : function (div){
		label = div.getElementsByTagName("label")[0];
		div.className += " " +  label.htmlFor + "_js";
		text = div.className ; 
		input = div.getElementsByTagName("input")[0];
		var span = document.createElement('span');
		var punto = document.createElement('a');
		//punto.href="";//manu
		punto.innerHTML= "[?]";
		punto.id= label.htmlFor + "_js" ; 
		punto.onclick = function(e ){
				if (!e) var e = window.event;
				a = (e.target) ? e.target : e.srcElement
				MsgDiv.apri(a.id);
		}
		span.appendChild(punto);
		label.appendChild(span);
		return label.htmlFor + "_js";	
	},
	init_alert : function (div,text){
		
		var div_chiudi= document.createElement("div");
		var a = document.createElement("a");
		var p= 	div.getElementsByTagName("p")[0]
		div_chiudi.className="chiudi"; 
		a.innerHTML = "[X]";
		a.id = text; 
		a.onclick = function(e ){
				if (!e) var e = window.event;
				a = (e.target) ? e.target : e.srcElement
				MsgDiv.chiudi(a.id);
		}
		div.className = div.className + " hidden";  
		div_chiudi.appendChild(a);
		div.insertBefore(div_chiudi,p);
		
	},
	apri : function(cname) {
		var div = this.getElementsByClassName(document, 'div', "input_field "+cname )[0];
		var div_info = this.getElementsByClassName(div, 'div', "form info hidden")[0];
		var div_acces = this.getElementsByClassName(div, 'div', "form accessibilita hidden")[0];
		var oRegExp = new RegExp("(^|\\s)" + "hidden" + "(\\s|$)");
		if(div_info)
			div_info.className =div_info.className.replace(oRegExp, '') ; 
		if(div_acces)
			div_acces.className =div_acces.className.replace(oRegExp, '') ; 
},
	chiudi : function(cname) {
		var div = this.getElementsByClassName(document, 'div', "input_field "+cname )[0];
		var div_info = this.getElementsByClassName(div, 'div', "form info")[0];
		var div_acces = this.getElementsByClassName(div, 'div', "form accessibilita")[0];
		if(div_info)
			div_info.className +=" hidden"; 
		if(div_acces)
			div_acces.className +=" hidden" ; 
},
		
	addEvent : function(obj, type, fn) {
		if (obj.addEventListener)
			obj.addEventListener(type, fn, false);
		else if (obj.attachEvent) {
			obj["e"+type+fn] = fn;
			obj[type+fn] = function() {obj["e"+type+fn](window.event);}
			obj.attachEvent("on"+type, obj[type+fn]);
		}
	},
	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(oElement);
	        }   
	    }
	    return (arrReturnElements)
	}
};

