﻿//
// START STANDARD INVIO DATI
//

function urlencode( str ) {
    // http://kevin.vanzonneveld.net
    // +   original by: Philip Peterson
    // +   improved by: Kevin van Zonneveld (http://kevin.vanzonneveld.net)
    // +      input by: AJ
    // +   improved by: Kevin van Zonneveld (http://kevin.vanzonneveld.net)
    // +   improved by: Brett Zamir
    // %          note: info on what encoding functions to use from: http://xkr.us/articles/javascript/encode-compare/
    // *     example 1: urlencode('Kevin van Zonneveld!');
    // *     returns 1: 'Kevin+van+Zonneveld%21'
    // *     example 2: urlencode('http://kevin.vanzonneveld.net/');
    // *     returns 2: 'http%3A%2F%2Fkevin.vanzonneveld.net%2F'
    // *     example 3: urlencode('http://www.google.nl/search?q=php.js&ie=utf-8&oe=utf-8&aq=t&rls=com.ubuntu:en-US:unofficial&client=firefox-a');
    // *     returns 3: 'http%3A%2F%2Fwww.google.nl%2Fsearch%3Fq%3Dphp.js%26ie%3Dutf-8%26oe%3Dutf-8%26aq%3Dt%26rls%3Dcom.ubuntu%3Aen-US%3Aunofficial%26client%3Dfirefox-a'
                             
    var histogram = {}, tmp_arr = [];
    var ret = str.toString();
    
    var replacer = function(search, replace, str) {
        var tmp_arr = [];
        tmp_arr = str.split(search);
        return tmp_arr.join(replace);
    };
    
    // The histogram is identical to the one in urldecode.
    histogram["'"]   = '%27';
    histogram['(']   = '%28';
    histogram[')']   = '%29';
    histogram['*']   = '%2A';
    histogram['~']   = '%7E';
    histogram['!']   = '%21';
    histogram['%20'] = '+';
    
    // Begin with encodeURIComponent, which most resembles PHP's encoding functions
    ret = encodeURIComponent(ret);
    
    for (search in histogram) {
        replace = histogram[search];
        ret = replacer(search, replace, ret) // Custom replace. No regexing
    }
    
    // Uppercase for full PHP compatibility
    return ret.replace(/(\%([a-z0-9]{2}))/g, function(full, m1, m2) {
        return "%"+m2.toUpperCase();
    });
    
    return ret;
}

function urldecode( str ) {
    // http://kevin.vanzonneveld.net
    // +   original by: Philip Peterson
    // +   improved by: Kevin van Zonneveld (http://kevin.vanzonneveld.net)
    // +      input by: AJ
    // +   improved by: Kevin van Zonneveld (http://kevin.vanzonneveld.net)
    // +   improved by: Brett Zamir
    // %          note: info on what encoding functions to use from: http://xkr.us/articles/javascript/encode-compare/
    // *     example 1: urldecode('Kevin+van+Zonneveld%21');
    // *     returns 1: 'Kevin van Zonneveld!'
    // *     example 2: urldecode('http%3A%2F%2Fkevin.vanzonneveld.net%2F');
    // *     returns 2: 'http://kevin.vanzonneveld.net/'
    // *     example 3: urldecode('http%3A%2F%2Fwww.google.nl%2Fsearch%3Fq%3Dphp.js%26ie%3Dutf-8%26oe%3Dutf-8%26aq%3Dt%26rls%3Dcom.ubuntu%3Aen-US%3Aunofficial%26client%3Dfirefox-a');
    // *     returns 3: 'http://www.google.nl/search?q=php.js&ie=utf-8&oe=utf-8&aq=t&rls=com.ubuntu:en-US:unofficial&client=firefox-a'
    
    var histogram = {};
    var ret = str.toString();
    
    var replacer = function(search, replace, str) {
        var tmp_arr = [];
        tmp_arr = str.split(search);
        return tmp_arr.join(replace);
    };
    
    // The histogram is identical to the one in urlencode.
    histogram["'"]   = '%27';
    histogram['(']   = '%28';
    histogram[')']   = '%29';
    histogram['*']   = '%2A';
    histogram['~']   = '%7E';
    histogram['!']   = '%21';
    histogram['%20'] = '+';
 
    for (replace in histogram) {
        search = histogram[replace]; // Switch order when decoding
        ret = replacer(search, replace, ret) // Custom replace. No regexing   
    }
    
    // End with decodeURIComponent, which most resembles PHP's encoding functions
    //alert(ret)
    ret = decodeURIComponent(ret);
    //alert(ret)
 
    return ret;
}

var request = null;
var queryString;

// VERIFICA QUALE OGGETTO UTILIZZARE PER LA RICHIESTA HTTP A SECONDA DEL BROWSER DELL'UTENTE
function httpRequest(reqType,url,async,respHandle)
{
	if (window.XMLHttpRequest)
	{
		request = new XMLHttpRequest();
		
		//alert("mozilla :-)")
	}
	
	else if (window.ActiveXObject)
	{
		request = new ActiveXObject("Msxml2.XMLHTTP");
		
		if (!request)
		{
			request = new ActiveXObject("Microsoft.XMLHTTP");
		}
		
		//alert("explorer :-(");
	}
	
	if (request)
	{
		if (reqType.toLowerCase() != 'post')
		{
			initReq(reqType,url,async,respHandle);
		}
		
		else
		{
		 	var args = arguments[4];
		 	
		 	if (args != null && args.length > 0)
		 	{
				initReq(reqType,url,async,respHandle,args);
			}
			
			else
			{
				alert ("Nessun parametro da inviare!");
			}
		}
		
		//alert("OK!");
	}
	
	else
	{
		alert("Il browser utilizzato non permette di utilizzare tutte le funzionalit‡ di questa applicazione");
	}
}

// INIZIALIZZA L'OGGETTO REQUEST
function initReq(reqType,url,bool,respHandle)
{
	try
	{
		if (respHandle != '')
		{
			request.onreadystatechange=respHandle;
		}
		
		request.open(reqType,url,bool);
		
		if (reqType.toLowerCase() == 'post')
		{
			request.setRequestHeader("Content-Type","application/x-www-form-urlencoded; charset=UTF-8");
			request.send(arguments[4]);
		}
		
		else
		{
			request.send(null);
		}
	}
	
	catch(errv)
	{
		alert ("L'applicazione non e' al momento in grado di contattare il server.\r\nRiprovate fra qualche istante.\r\n"+errv.message);	
	}
	
	/*request.onreadystatechange=handleResponse;
	request.open(reqType,url,bool);
	//request.send(null);
	request.setRequestHeader("Content-Type","application/x-www-form-urlencoded; charset=UTF-8");
	request.send(queryString);*/
}

// CREA LA STRINGA DA INVIARE AL SERVER
function setQueryString(nomeForm)
{
	queryString = "";
	
	var frm = document.forms[nomeForm]
	
	var numEle = frm.elements.length;
	
	for (i=0; i<numEle; i++)
	{
		if (frm.elements[i].name)
		{
		 	queryString += frm.elements[i].name+"=";
		 	
			if (frm.elements[i].type == 'select-multiple')
			{
			 	var temp = '';
			 	
				for (var j=0; j<frm.elements[i].options.length; j++)
				{
					if (frm.elements[i].options[j].selected == true)
					{
						temp += frm.elements[i].options[j].value+",";
					}
				}
				
				temp = temp.substr(0,temp.length-1);
				
				queryString += temp+"&";
				
				var label = frm.elements[i].name.replace(/_temp/i,'');
				
				if (document.getElementById(label))
				{
					//alert(label+' .... '+temp);
					
					document.getElementById(label).value = temp;
				}
			}
			
			else
			{
				queryString += encodeURIComponent(frm.elements[i].value)+"&";
			}
		}
	}
	
	queryString = queryString.substr(0,queryString.length-1);
	
	//alert(queryString);
}

// INVIA I DATI IN POST PRESI DA UN FORM

function SendDataPOST(nomeForm,url,respHandle)
{
	setQueryString(nomeForm);
	//url = "http://www.parkerriver.com/s/sender";
	httpRequest("POST",url,true,respHandle,queryString);
}

// INVIA I DATI CHE GLI PASSO MANUALMENTE

function SendDataPOSTgen(dati,url,respHandle)
{
	httpRequest("POST",url,true,respHandle,dati);
}

// INVIA UNA QUERY AD UNA PAGINA AD HOC

function SendDataPOSTquery(query,url,respHandle)
{
	httpRequest("POST",url,true,respHandle,query);
}

//
// END STANDATD INVIO DATI
//

// GESTISCE LE RISPOSTE DEL SERVER in formato testo
function handleResponse()
{
	if (request.readyState == 4)
	{
		if (request.status == 200)
		{
			alert(request.responseText+" ("+request.status+")");
		}
		
		else if (request.status == 404)
		{
			alert("Pagina inesistente!"+" ("+request.status+")");
		}
		
		else
		{
			alert ("Si e' verificato un problema di comuincazione tra l'oggetto inviato e il server ricevente."+" ("+request.status+")");
		}
	}
}

// GESTISCE LE RISPOSTE DEL SERVER SOLO IN CASO DI ERRORI

function handleResponseNoResponse()
{
	if (request.readyState == 4)
	{
		if (request.status == 200)
		{
			//alert(request.responseText+" ("+request.status+")");
			
			if (request.responseText != '')
			{
				window.document.location = request.responseText;
			}
		}
		
		else if (request.status == 404)
		{
			alert("Pagina inesistente!"+" ("+request.status+")");
		}
		
		else
		{
			alert ("Si e' verificato un problema di comuincazione tra l'oggetto inviato e il server ricevente."+" ("+request.status+")");
		}	
	}
}

// GESTISCE LE RISPOSTE DEL SERVER CON UN REFRESH

function handleResponseRefresh()
{
	if (request.readyState == 4)
	{
		if (request.status == 200)
		{
			window.history.go(0);
		}

		else if (request.status == 404)
		{
			alert("Pagina inesistente!"+" ("+request.status+")");
		}
		
		else
		{
			alert ("Si e' verificato un problema di comuincazione tra l'oggetto inviato e il server ricevente."+" ("+request.status+")");
		}
	}
}

// GESTISCE LE RISPOSTE DEL SERVER NASCONDENDO IL LAYER POPUP

function handleResponseReload()
{
	if (request.readyState == 4)
	{
		if (request.status == 200)
		{
			window.document.location.reload();
		}

		else if (request.status == 404)
		{
			alert("Pagina inesistente!"+" ("+request.status+")");
		}
		
		else
		{
			alert ("Si e' verificato un problema di comuincazione tra l'oggetto inviato e il server ricevente."+" ("+request.status+")");
		}
	}
}

// GESTISCE LE RISPOSTE DEL SERVER ESEGUENDO CODICE JS
function handleResponseExec()
{
	if (request.readyState == 4)
	{
		if (request.status == 200)
		{
			eval(request.responseText);
		}
		
		else if (request.status == 404)
		{
			alert("Pagina inesistente!"+" ("+request.status+")");
		}
		
		else
		{
			alert ("Si e' verificato un problema di comuincazione tra l'oggetto inviato e il server ricevente."+" ("+request.status+")");
		}
	}
}

// RESTITUISCE UNA SELECT IN BASE AI DATI CHE RITORNANO DALLO SCRIPT DI ELABORAZIONE FORMATTATI COME value=text&...
// i primi CINQUE parametri che devono ritornare sono fieldName=<fieldName>&idName=<idName>&idNum=<id_num>&dove=<dove>&fieldType=<fieldType> - tutte coppi value=text&
function handleResponseCreaSelect()
{
	if (request.readyState == 4)
	{
		if (request.status == 200)
		{
			var stringResponse = request.responseText;
			//alert(stringResponse);
			
			var primoArray = stringResponse.split("&");
			
			var primoArrayA = primoArray[0].split("=");
			var fieldName = primoArrayA[1];
			
			var primoArrayB = primoArray[1].split("=");
			var idName = primoArrayB[1];
			
			var primoArrayC = primoArray[2].split("=");
			var idNum = primoArrayC[1];
			
			var primoArrayD = primoArray[3].split("=");
			var dove = primoArrayD[1];
			
			var primoArrayE = primoArray[4].split("=");
			var come = primoArrayE[1];
			
			var primoArrayF = primoArray[5].split("=");
			var slave = primoArrayF[1];
			
			var primoArrayG = primoArray[6].split("=");
			var sel = primoArrayG[1];
			
			var primoArrayH = primoArray[7].split("=");
			var chiudi = primoArrayH[1];
			
			if (dove == '')
			{
				dove = 'window';
			}
			
			//alert(dove)
			//alert(come)
			
			//alert(idName+'---'+idNum);
			
			var tendina = eval(dove).document.createElement("select");
			
			if (idNum != '')
			{
				var valore = eval(dove).document.getElementById(idName+''+eval(idNum));				
				var div = eval(dove).document.getElementById(idName+'Div'+eval(idNum));
			
				tendina.setAttribute("id",idName+''+eval(idNum));
				
				if (come == 'multiple')
				{
					tendina.setAttribute("name",fieldName+"["+eval(idNum)+"][]");
				}
				
				else
				{
					tendina.setAttribute("name",fieldName+"["+eval(idNum)+"]");
				}
				
				//alert(fieldName+"["+eval(idNum)+"]");
			}
			
			else
			{
				var valore = eval(dove).document.getElementById(idName);				
				var div = eval(dove).document.getElementById(idName+'Div');
			
				tendina.setAttribute("id",idName);
				
				if (come == 'multiple')
				{
					tendina.setAttribute("name",fieldName+"[]");
				}
				
				else
				{
					tendina.setAttribute("name",fieldName);
				}
				
				//alert(idName+'Div');
			}
			
			if (come == 'multiple')
			{
				tendina.setAttribute("multiple",true);
				tendina.setAttribute("size",20);
			}
			
			//alert(valore.name+' --- '+div.id);
			
			if (valore)
			{
				var onCh = valore.onchange;
			}
			
			if (onCh)
			{
				//onCh = String.replace(onCh,'function onchange(event) {','');
				//onCh = String.replace(onCh,'}','');
				
				//alert(onCh);
				
				//tendina.setAttribute("onChange", onCh);
				tendina.onchange = onCh;
				
				//alert(tendina.id+' '+tendina.onchange);
			}
			
			var opzione = eval(dove).document.createElement("option");
			opzione.appendChild(eval(dove).document.createTextNode("...seleziona..."));
			opzione.setAttribute("value","0")
			
			tendina.appendChild(opzione);
			//var ciccio;
			
			for (var i=8; i<primoArray.length; i++)
			{
				var secondoArray = primoArray[i].split("=");
				//alert(decodeURIComponent(secondoArray[1]));
				var opzione = eval(dove).document.createElement("option");
				opzione.appendChild(document.createTextNode(urldecode(secondoArray[1])));
				opzione.setAttribute("value",secondoArray[0]);
				
				if (secondoArray[0] == sel)
				{
					opzione.setAttribute("selected",true);
				}

				tendina.appendChild(opzione);
				//ciccio += secondoArray[0]+" --> "+secondoArray[1]+"\r\n";	
			}
			
			div.innerHTML = '';
			
			div.appendChild(tendina);
			
			if (slave != '')
			{
				SendDataPOSTgen('&dove='+dove+'&idNum='+idNum+'&record='+secondoArray[0]+'&id_gestione='+slave[0]+'&id_azione='+slave[1]+'&campo='+slave[2]+'&tabella='+slave[3],'ajaxImpostaCampiDipendenti.php',handleResponseCampiSlave);
			}
			
			if (chiudi == 'si')
			{
				self.close();
			}
			
			//alert(ciccio);
		}
		
		else if (request.status == 404)
		{
			alert("Pagina inesistente!");
		}
		
		else
		{
			alert ("Si e' verificato un problema di comuincazione tra l'oggetto inviato e il servr ricevente.'")
		}
	}
}

// RESTITUISCE UNA SELECT IN BASE AI DATI CHE RITORNANO DALLO SCRIPT DI ELABORAZIONE FORMATTATI COME value=text&...
// i primi CINQUE parametri che devono ritornare sono fieldName=<fieldName>&idName=<idName>&idNum=<id_num>&dove=<dove>&fieldType=<fieldType> - tutte coppi value=text&
function handleResponseSelectNoSelect()
{
	if (request.readyState == 4)
	{
		if (request.status == 200)
		{
			var stringResponse = request.responseText;
			//alert(stringResponse);
			
			var primoArray = stringResponse.split("&");
			
			var primoArrayA = primoArray[0].split("=");
			var fieldName = primoArrayA[1];
			
			var primoArrayB = primoArray[1].split("=");
			var idName = primoArrayB[1];
			
			var primoArrayC = primoArray[2].split("=");
			var idNum = primoArrayC[1];
			
			var primoArrayD = primoArray[3].split("=");
			var dove = primoArrayD[1];
			
			var primoArrayE = primoArray[4].split("=");
			var come = primoArrayE[1];
			
			var primoArrayF = primoArray[5].split("=");
			var slave = primoArrayF[1].split(",");
			
			var primoArrayG = primoArray[6].split("=");
			var sel = primoArrayG[1];
			
			var primoArrayH = primoArray[7].split("=");
			var chiudi = primoArrayH[1];
			
			//alert(slave[0]+' '+slave[1]+' '+slave[2]+' '+slave[3])
			
			if (dove == '')
			{
				dove = 'window';
			}
			
			//alert(dove)
			//alert(come)
			
			//alert(idName+'---'+idNum);
			
			var elenco = eval(dove).document.createElement("ol");
			elenco.setAttribute("class","OlAjaxAutocomplete");
			
			if (idNum != '')
			{
				var valore = eval(dove).document.getElementById(idName+''+eval(idNum));				
				var div = eval(dove).document.getElementById(idName+'SelectNoSelect'+eval(idNum));
				var divPrint = "document.getElementById('"+idName+"SelectNoSelect"+eval(idNum)+"')";
				
				//alert(fieldName+"["+eval(idNum)+"]");
			}
			
			else
			{
				var valore = eval(dove).document.getElementById(idName);				
				var div = eval(dove).document.getElementById(idName+'SelectNoSelect');
				var divPrint = "document.getElementById('"+idName+"SelectNoSelect')";
				
				//alert(idName+'Div');
			}
			
			for (var i=8; i<primoArray.length; i++)
			{
				var secondoArray = primoArray[i].split("=");
				
				var voce = eval(dove).document.createElement("li");
				voce.setAttribute("class","LiAjaxAutocomplete");
				var selezione = eval(dove).document.createElement("a");
				selezione.setAttribute("class","AajaxAutocomplete");
				voce.appendChild(selezione);
				selezione.appendChild(document.createTextNode(urldecode(secondoArray[1])));
				selezione.setAttribute("href","javascript: var i=0");
				
				if (secondoArray[0] != 0)
				{
					if (come == 'soloTesto')
					{
						selezione.setAttribute("onClick","window.document.getElementById('"+idName+"').value='"+urldecode(secondoArray[1])+"';"+divPrint+".style.display='none'")
					}
					
					else
					{
						selezione.setAttribute("onClick","window.document.getElementById('"+idName+"').value='"+secondoArray[0]+"';document.getElementById('"+idName+" temp').value='"+urldecode(secondoArray[1])+"';"+divPrint+".style.display='none';SendDataPOSTgen('"+"&"+"dove="+dove+"&idNum="+idNum+"&record="+secondoArray[0]+"&id_gestione="+slave[0]+"&id_azione="+slave[1]+"&campo="+slave[2]+"&tabella="+slave[3]+"','ajaxImpostaCampiDipendenti.php',handleResponseCampiSlave);")				
					}
				}
				
				else
				{
						selezione.setAttribute("onClick", divPrint+".style.display='none'")
				}
				
				elenco.appendChild(voce);
				//ciccio += secondoArray[0]+" --> "+secondoArray[1]+"\r\n";	
			}
			
			div.innerHTML = '';
			
			div.appendChild(elenco);
			
			//alert(ciccio);
		}
		
		else if (request.status == 404)
		{
			alert("Pagina inesistente!");
		}
		
		else
		{
			alert ("Si e' verificato un problema di comuincazione tra l'oggetto inviato e il server ricevente: "+request.status+" testo: "+request.responseText)
		}
	}
}

// IMPOSTA I CAMPI DELLA TABELLA IN BASE AI DATI CHE RITORNANO DALLO SCRIPT DI ELABORAZIONE FORMATTATI COME value=text&...
function handleResponseCampiSlave()
{
	if (request.readyState == 4)
	{
		if (request.status == 200)
		{
			var stringResponse = request.responseText;
			//alert(stringResponse);
			
			if (stringResponse != '-------')
			{
				var primoArray = stringResponse.split("&");
				
				var primoArrayA = primoArray[0].split("=");
				var dove = primoArrayA[1];
				
				var primoArrayB = primoArray[1].split("=");
				var idNum = primoArrayB[1];
				
				if (dove == '')
				{
					dove = 'window';
				}
				
				//alert(dove)
				
				//alert(idNum);
				
				for (var i=2; i<primoArray.length; i++)
				{
					var secondoArray = primoArray[i].split("=");
					
					if (idNum != '')
					{
						var campo = eval(dove).document.getElementById(secondoArray[0].replace("_"," ")+''+eval(idNum));				
					}
					
					else
					{
						var campo = eval(dove).document.getElementById(secondoArray[0].replace(/_/g," "));				
					}
					
					//alert(secondoArray[0].replace(/_/g," ")+''+eval(idNum)+" - "+campo);
					
					var pattern = /\d{4}-\d{2}-\d{2}\s*[a-zA-Z0-9_:\.]*/;
					var ver = campo.value.match(pattern);
	//
	//	ATTENZIONE!! GESTITO SOLO PER CAMPI DATA E NON DATA E ORA OD ORA
	//
					if (ver != null)
					{
						//alert(secondoArray[1].match(pattern)+' -- '+campo.id);
						
						if (secondoArray[1] != '')
						{
							if (idNum != '')
							{
								if (eval(dove).document.getElementById(secondoArray[0]+eval(idNum)+'_anno_temp'))
								{
									var anno = eval(dove).document.getElementById(secondoArray[0]+eval(idNum)+'_anno_temp');
									var mese = eval(dove).document.getElementById(secondoArray[0]+eval(idNum)+'_mese_temp');
									var giorno = eval(dove).document.getElementById(secondoArray[0]+eval(idNum)+'_giorno_temp');
									
									anno.disabled = false;
									mese.disabled = false;
									giorno.disabled = false;
		
									anno.value = secondoArray[1].substr(0,4);
									mese.value = secondoArray[1].substr(5,2);
									giorno.value = secondoArray[1].substr(8,2);
								}
								
								else if (eval(dove).document.getElementById(secondoArray[0]+eval(idNum)+'_temp'))
								{
									var data = eval(dove).document.getElementById(secondoArray[0]+eval(idNum)+'_temp');
									
									data.value = secondoArray[1].substr(8,2)+'.'+secondoArray[1].substr(5,2)+'.'+secondoArray[1].substr(0,4);
								}
							}
							
							else
							{
								if (eval(dove).document.getElementById(secondoArray[0]+'_anno_temp'))
								{
									var anno = eval(dove).document.getElementById(secondoArray[0]+'_anno_temp');
									var mese = eval(dove).document.getElementById(secondoArray[0]+'_mese_temp');
									var giorno = eval(dove).document.getElementById(secondoArray[0]+'_giorno_temp');
									
									anno.disabled = false;
									mese.disabled = false;
									giorno.disabled = false;
		
									anno.value = secondoArray[1].substr(0,4);
									mese.value = secondoArray[1].substr(5,2);
									giorno.value = secondoArray[1].substr(8,2);
								}
								
								else if (eval(dove).document.getElementById(secondoArray[0]+'_temp'))
								{
									var data = eval(dove).document.getElementById(secondoArray[0]+'_temp');
									
									data.value = secondoArray[1].substr(8,2)+'.'+secondoArray[1].substr(5,2)+'.'+secondoArray[1].substr(0,4);
								}
							}
						}
						
						else
						{
							secondoArray[1] = '0000-00-00';
						}
					}
					
					//alert(secondoArray[0]+' = '+secondoArray[1]);
					
					campo.value = secondoArray[1];
					campo.disabled = false;
					campo.removeAttribute('onfocus');
					campo.className = 'inputCampiSlave';
				}
			}
		}
		
		else if (request.status == 404)
		{
			alert("Pagina inesistente!");
		}
		
		else
		{
			alert ("handleResponseCampiSlave: si e' verificato un problema di comuincazione tra l'oggetto inviato e il server ricevente: "+request.status+" testo: "+request.responseText)
		}
	}
}

// RESTITUISCE LA STAMPA DEL MESSAGGIO CREATO DALLO SCRIPT CHE HA ELABORATO I DATI

function stampaMsgConSelect()
{
	if (request.readyState == 4)
	{
		if (request.status == 200)
		{
			var testo = request.responseText;
			//var info = getDocInfo(text);
			RestituisciMsg(testo,document.getElementById("visualizzaMsg"));
			//document.forms[0].responso.value=testo;
			//document.getElementById("visualizzaMsg").innerHTML = testo;
			SendDataPOSTgen('fieldName=condizione_registrata&idName=condizioneregistrata&idNum=&dove=window.opener&tabella=condizioni_di_ricerca&idGestione='+document.getElementById('gestione').value,'ajaxSelect.php',handleResponseCreaSelect)
		}
		
		else if (request.status == 404)
		{
			alert("Pagina inesistente!");
		}
		
		else
		{
			alert ("Si è verificato un problema di comuincazione tra l'oggetto inviato e ilserver ricevente.'")
		}
	}
}

function stampaMsg()
{
	if (request.readyState == 4)
	{
		if (request.status == 200)
		{
			var testo = request.responseText;
			//var info = getDocInfo(text);
			RestituisciMsg(testo,document.getElementById("visualizzaMsg"));
			//document.forms[0].responso.value=testo;
			//document.getElementById("visualizzaMsg").innerHTML = testo;
		}
		
		else if (request.status == 404)
		{
			alert("Pagina inesistente!");
		}
		
		else
		{
			alert ("Si è verificato un problema di comuincazione tra l'oggetto inviato e il server ricevente.'")
		}
	}
}

function stampaHTML()
{
	if (request.readyState == 4)
	{
		if (request.status == 200)
		{
			var testo = request.responseText;
			
			var div = document.getElementById("contenitoreHTML");
			
			RestituisciMsg(testo,div);
			
			var X = document.width;
			var Y = document.height;
			var XX = div.clientWidth;
			var YY = div.clientHeight;
		
			var posXX = Math.round((X-XX)/2);
			var posYY = Math.round((Y-YY)/2);
			
			//alert(X);
			//alert(Y);
			
			div.style.left = posXX;
			div.style.top = posYY;
		}
		
		else if (request.status == 404)
		{
			alert("Pagina inesistente!");
		}
		
		else
		{
			alert ("Si è verificato un problema di comuincazione tra l'oggetto inviato e il server ricevente.'")
		}
	}
}

function RestituisciMsg(contenuto,div)
{
	div.innerHTML="";
	div.innerHTML=contenuto;
}

// ------------------------------------------------- da implementare
// GESTISCE LE RISPOSTE DEL SERVER in formato XML
function handleResponseA()
{
	if (request.readyState == 4)
	{
		if (request.status == 200)
		{
			var testo = request.responseText;
			//var info = getDocInfo(text);
			RestituisciMsg(testo,document.getElementById("visualizzaMsg"));
			//document.forms[0].responso.value=testo;
			//document.getElementById("visualizzaMsg").innerHTML = testo;
		}
		
		else if (request.status == 404)
		{
			alert("Pagina inesistente!");
		}
		
		else
		{
			alert ("Si è verificato un problema di comuincazione tra l'oggetto inviato e il server ricevente.'")
		}
	}
}

// GESTISCE LE RISPOSTE DEL SERVER ESEGUENDO CODICE JS
function handleResponseModStyle()
{
	if (request.readyState == 4)
	{
		if (request.status == 200)
		{
			var stringResponse = request.responseText;
			//alert(stringResponse);
			
			if (stringResponse != '')
			{
				var primoArray = stringResponse.split("&");
				
				var primoArrayA = primoArray[0].split("=");
				var id = primoArrayA[1];
				
				var primoArrayB = primoArray[1].split("=");
				var attributo = primoArrayB[1];
				
				var primoArrayC = primoArray[2].split("=");
				var valore = primoArrayC[1];
				
				eval('document.getElementById(\''+id+'\').style.'+attributo+'.value=\''+valore+'\'');	
			}
		}
		
		else if (request.status == 404)
		{
			alert("Pagina inesistente!"+" ("+request.status+")");
		}
		
		else
		{
			alert ("Si e' verificato un problema di comuincazione tra l'oggetto inviato e il server ricevente."+" ("+request.status+")");
		}
	}
}


