        // Apertura BOX
        function abox(box,url,lar,alt)
        {
            var w = screen.width;
            var h = screen.height;
            var x = Math.round(w / 2) - Math.round(lar / 2);

          	if (self.pageYOffset) {
          		var yScroll = self.pageYOffset;
          	} else if (document.documentElement && document.documentElement.scrollTop){	 // Explorer 6 Strict
          		var yScroll = document.documentElement.scrollTop;
							var yFine = document.documentElement.scrollHeight;
          	} else if (document.body) {// all other Explorers
          		var yScroll = document.body.scrollTop;
							var yFine = document.body.scrollHeight;
          	}
            

					  var y = Math.round(screen.availHeight / 2) + yScroll - 300;   
            
            document.getElementById(box + '_ext').style.width = lar;           
            document.getElementById(box + '_ext').style.height = alt;
            document.getElementById(box + '_ext').style.top = y;
            document.getElementById(box + '_ext').style.left = x;
            document.getElementById(box + '_ext').style.display = "block";
            if(yFine!='0') document.getElementById(box + '_overlay').style.height = yFine;
            document.getElementById(box + '_overlay').style.display = "block";
            makeRequest(box, url);
            
        }
        
        // Chiusura BOX
        function cbox(box)
        {
            document.getElementById(box + '_ext').style.display = "none";
            document.getElementById(box + '_overlay').style.display = "none";
            
        }
        
    var campo;
    var tipo;
    var loading;
    var risultato;
    

    function makeRequest(id_div_output,url) {

    		if(!(id_div_output)) id_div_output=campo;

        var http_request = false;
        risultato = false;

        if (window.XMLHttpRequest) { // Mozilla, Safari,...
            http_request = new XMLHttpRequest();
            if (http_request.overrideMimeType) {
                http_request.overrideMimeType('text/xml');
                // See note below about this line
            }
        } else if (window.ActiveXObject) { // IE
            try {
                http_request = new ActiveXObject("Msxml2.XMLHTTP");
            } catch (e) {
                try {
                    http_request = new ActiveXObject("Microsoft.XMLHTTP");
                } catch (e) {}
            }
        }

        if (!http_request) {
            alert('Giving up  Cannot create an XMLHTTP instance');
            return false;
        }

				if(loading!=0) document.getElementById(id_div_output).innerHTML='<div style="margin: 0px auto; text-align: center; padding: 50px;">Attendere..<br /><br /><img src="../_skins/black/loading.gif" /></div>';
        http_request.onreadystatechange = function() { alertContents(http_request,id_div_output); };

        if(tipo==null) {
            http_request.open('GET', url, true);
            http_request.send(null);
        } else if(tipo=='POST') {
        		tipo=null;
      			var parti = url.split("?");
            var parameters=parti[1];
            url=parti[0];
            http_request.open('POST', url, true);
            http_request.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
            http_request.setRequestHeader("Content-length", parameters.length);
            http_request.setRequestHeader("Connection", "close");
            http_request.send(parameters);
        }              
    }

    function alertContents(http_request,output) {

        if (http_request.readyState == 4) {
            if (http_request.status == 200) {
			risposta=http_request.responseText;
			//alert(output);
			document.getElementById(output).innerHTML=risposta;
      risposta=execJS(risposta);
      risultato=true;
            } else {
                alert('There was a problem with the request.');
            }
        }

    }
    
    //-----------------------------------------------------
//valuta il codice javascript e restituisce la stringa
//senza codice
//-----------------------------------------------------
function execJS(t)
{
    var p1 = 0, p2 = 0, p3 = 0, p4 = 0;
    p1 = t.indexOf("<" + "script", 0);
    if(p1 == -1) return t;
    
    p2 = t.indexOf(">", p1 + 7) + 1;
    p3 = t.indexOf("<" + "/script>", p2);
    p4 = p3 + 9;
    
    var c = t.substring(p2, p3);
    var s = document.createElement("script");
    s.type = "text/javascript";
    s.text = c;
    document.getElementsByTagName("head")[0].appendChild(s);
    
    t = t.substring(0, p1) + t.substr(p4);
    return execJS(t);

}
    
    // Funzione per ottenere il valore del radio button
    function readvalue(check) {
        var indice = 0;
        for (var i = 0; i < check.length; i++) {
            if (check[i].checked) indice = i;
        }
        return check[indice].value;
    }
    
    // Funzione per l'attesa dell'Ajax
    function controlla(){
      if (risp!='')
          return;
    else setTimeout('controlla();',300);
		}