		function GetXmlHttpObject(){ 
			var objXMLHttp=null

			if (window.XMLHttpRequest){
				objXMLHttp=new XMLHttpRequest();
			}else if (window.ActiveXObject){			
				objXMLHttp=new ActiveXObject("Microsoft.XMLHTTP")
			}
			return objXMLHttp;
		}	
		
		function makePOSTRequest(url, parameters, type) {
			http_request = false;
			http_request=GetXmlHttpObject();
			if (http_request==null){
				alert ("Browser does not support HTTP Request");
				return false;
			} 
			if (type == "register")
				http_request.onreadystatechange = alertContentsRegister;

			if (type == "rescue")
				http_request.onreadystatechange = alertContentsRescue;
			
			if (type == "update")
				http_request.onreadystatechange = alertContentsUpdate;

			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.send(parameters);
		}

		function alertContentsRegister() {
		      if (http_request.readyState == 4 || http_request.readyState=="complete") {
		         if (http_request.status == 200) {
		            result=http_request.responseText;
		            if (result){
			            //success = result.getElementsByTagName("success")[0].childNodes[0].nodeValue;
			            success = $(result).find("success").text();
			            if (success == 1){
							//$("#id_cliente").attr("value", result.getElementsByTagName("id_cliente")[0].childNodes[0].nodeValue);
							$("#id_cliente").attr("value", $(result).find("id_cliente").text());
							$("#username").attr("value", $(result).find("username").text());
							$("#password").attr("value", $(result).find("password").text());
							$("#login").submit();
							//$("#dialog_conferma_prenotazione").dialog("open");	
						}else{
							//if (success == "CAPTCHA_ERR"){
							//	$("#dialog_captcha_err").dialog("open");
							//}else{
								if (success == "SEND_ERR"){
									$("#dialog_send_err").dialog("open");
								}else{
									if (success == "EMAIL_EXIST"){
										$("#dialog_email_exist_err").dialog("open");
									}else{
										$("#dialog_registrazione_fallita").dialog("open");
									}
								}
							//}
						}
			         } else {
			            alert('There was a problem with the request.');
			         }
		      	}
			}
		}

		function alertContentsRescue() {
			if (http_request.readyState == 4) {
				if (http_request.status == 200) {
					result=http_request.responseText;
					$("#msg_rescue").html(result);	
					$("#dialog_msg_rescue").dialog("open");								
				} else {
					alert('There was a problem with the request.');
				}
			}
		}

		function alertContentsUpdate() {
			if (http_request.readyState == 4) {
				if (http_request.status == 200) {
					result=http_request.responseText;
					$("#msg_data").html(result);	
					$("#dialog_data").dialog("close");								
					$("#dialog_msg_data").dialog("open");
				} else {
					alert('There was a problem with the request.');
				}
			}
		}
		
		
// IWS AJAX LIB
function createXMLHttpRequest()
{
    var ua;
    if(window.XMLHttpRequest)
    {
        try
        {
            ua = new XMLHttpRequest();
        }
        catch(e)
        {
        ua = false;
        }
    }
    else if (window.ActiveXObject)
    {
        try
        {
        ua = new ActiveXObject("Microsoft.XMLHTTP");
        }
        catch(e)
        {
            ua = false;
        }
    }
    return ua;
}

var req = createXMLHttpRequest();
var divID = "testdiv";

function sendRequest(_url, _divID)
{
    var chpar = '';
    divID = _divID;
    if (_url.indexOf('?')!=-1)
    {
        chpar = '&';
    }
    else
    {
        chpar = '?';
    }
    req.open('post', _url+chpar+"rand="+escape(Math.random()));
    req.onreadystatechange = handleResponse;
    req.send(null);
}

function sendShadowBoxRequest(_url, _divID)
{
    var chpar = '';
    divID = _divID;
    if (_url.indexOf('?')!=-1)
    {
        chpar = '&';
    }
    else
    {
        chpar = '?';
    }
    Shadowbox.setup();
    req.open('post', _url+chpar+"rand="+escape(Math.random()));
    req.onreadystatechange = handleResponse;
    req.send(null);
}

function handleResponse()
{
    if(req.readyState == 4)
    {
        var response = req.responseText;
        var update = new Array();
        var search = req.responseText;
        if(response.indexOf('||' != -1))
        {
            update = response.split('||');

            while( script = search.match(/(<script>)/i)) //[^>]+javascript[^>]+>\s)/i))
            {
                search = search.substr(search.indexOf(RegExp.$1) + RegExp.$1.length);

                if (!(endscript = search.match(/(<\/script>)/i))) break;

                block = search.substr(0, search.indexOf(RegExp.$1));
                search = search.substring(block.length + RegExp.$1.length);

                eval(block);
            }
            document.getElementById(divID).innerHTML = req.responseText;
        }
    }
    else
    {
        strloading = "Loading (";
        switch (req.readyState)
        {
            case 1: strloading = strloading + "25%)";
            break;
            case 2: strloading = strloading + "50%)";
        	break;
            case 3: strloading = strloading + "75%)";
            break;
            default: strloading = "Loading ...";
            break;
        }
        val2 = getElementsByClassName(document, "div", divID);
        //document.getElementById("testdiv").innerHTML = strloading;

    }
}

function getElementsByClassName(oElm, strTagName, strClassName)
{
    var arrElements = (strTagName == "*" && oElm.all)? oElm.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)
};
