		function getPostStr(Res){
		    var len = Res.elements.length;
			var poststr = "";
			var curElement = Res.elements[0];
			poststr += curElement.name+"="+curElement.value;
		    for(var i = 1;i < len;i++){
		      var curElement = Res.elements[i];
		      poststr += "&"+curElement.name+"="+curElement.value;
		    }
		    return poststr;
		}		


		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 == "news")
				http_request.onreadystatechange = alertContentsNews;

			if (type == "promozione")
				http_request.onreadystatechange = alertContentsPromozione;

			if (type == "newsletter")
				http_request.onreadystatechange = alertContentsNewsletter;

			if (type == "scrivici")
				http_request.onreadystatechange = alertContentsScrivici;

			if (type == "register_step_one"){
				$('#barcode_check').animate({ opacity: "show" }, 1000);
				$('#cognome_check').animate({ opacity: "show" }, 1000);
				$('#nome_check').animate({ opacity: "show" }, 1000);
				http_request.onreadystatechange = alertContentsRegisterStepOne;
			}
				

			if (type == "register_step_two")
				http_request.onreadystatechange = alertContentsRegisterStepTwo;

			if (type == "retrieve_password"){
				$("#tabRetrieve").fadeOut();
				http_request.onreadystatechange = alertContentsRetrievePassword;
			}
				

			if (type == "send_changes"){
				$("#tabDati").fadeOut();
				http_request.onreadystatechange = alertContentsChanges;
			}
				

			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 alertContentsNews() {
			if (http_request.readyState == 4) {
				if (http_request.status == 200) {
					result=http_request.responseText;
					$("#tabNews").hide();
					document.getElementById("tabNews").innerHTML = "";
					document.getElementById("tabNews").innerHTML = result;
					$('#tabNews').animate({ opacity: "show" }, 1000);														
				} else {
					alert('There was a problem with the request.');
				}
			}
		}

		function alertContentsNewsletter() {
			if (http_request.readyState == 4) {
				if (http_request.status == 200) {
					result=http_request.responseText;
					$("#newsletter_risultati").hide();
					document.getElementById("newsletter_risultati").innerHTML = "";
					document.getElementById("newsletter_risultati").innerHTML = result;
					$('#newsletter_risultati').animate({ opacity: "show" }, 1000);														
				} else {
					alert('There was a problem with the request.');
				}
			}
		}

		function alertContentsScrivici() {
			if (http_request.readyState == 4) {
				if (http_request.status == 200) {
					result=http_request.responseText;
					$("#scrivici_risultati").hide();
					document.getElementById("scrivici_risultati").innerHTML = "";
					document.getElementById("scrivici_risultati").innerHTML = result;
					$('#scrivici_risultati').animate({ opacity: "show" }, 1000);														
				} else {
					alert('There was a problem with the request.');
				}
			}
		}


		function alertContentsPromozione() {
			if (http_request.readyState == 4) {
				if (http_request.status == 200) {
					result=http_request.responseText;
					$("#tabPromozioni").hide();
					document.getElementById("tabPromozioni").innerHTML = "";
					document.getElementById("tabPromozioni").innerHTML = result;
					$('#tabPromozioni').animate({ opacity: "show" }, 1000);														
				} else {
					alert('There was a problem with the request.');
				}
			}
		}

		function alertContentsRegisterStepOne(){
		      if (http_request.readyState == 4 || http_request.readyState=="complete") {
		         if (http_request.status == 200) {
		            result=http_request.responseXML;
		            if (result){
		            	barcode = result.getElementsByTagName("tessera")[0].childNodes[0].nodeValue;
		            	nome = result.getElementsByTagName("nome")[0].childNodes[0].nodeValue;
		            	cognome = result.getElementsByTagName("cognome")[0].childNodes[0].nodeValue;
		            	clifid_id = result.getElementsByTagName("clifid_id")[0].childNodes[0].nodeValue;
		            	email = result.getElementsByTagName("email")[0].childNodes[0].nodeValue;
		            
		            	$("#barcode_check").fadeOut();
		            	$("#cognome_check").fadeOut();
		            	$("#nome_check").fadeOut();
						
						ok=0;

		            	if (barcode == "OK"){
		            		ok++;
							get_obj("barcode_check").innerHTML = "<img src=\"img/chk_on.png\" />";
						}else{
							get_obj("barcode_check").innerHTML = "<img src=\"img/chk_off.png\" />";
							get_obj("barcode_err").innerHTML = "(NESSUNA CORRISPONDENZA)";
							$("#barcode_err").animate({ opacity: "show" }, 1000);							
						}
						
		            	if (cognome == "OK"){
		            		ok++;
							get_obj("cognome_check").innerHTML = "<img src=\"img/chk_on.png\" />";
						}else{
							get_obj("cognome_check").innerHTML = "<img src=\"img/chk_off.png\" />";
							get_obj("cognome_err").innerHTML = "(NESSUNA CORRISPONDENZA)";
							$("#cognome_err").animate({ opacity: "show" }, 1000);									
						}
						
		            	if (nome == "OK"){
		            		ok++;
							get_obj("nome_check").innerHTML = "<img src=\"img/chk_on.png\" />";
						}else{
							get_obj("nome_check").innerHTML = "<img src=\"img/chk_off.png\" />";
							get_obj("nome_err").innerHTML = "(NESSUNA CORRISPONDENZA)";
							$("#nome_err").animate({ opacity: "show" }, 1000);
						}
						
						if (email != "KO"){
							get_obj("email_register").value = email;
						}
						
						if (clifid_id != "KO")
							get_obj("clifid_id").value = clifid_id;
						else
							get_obj("clifid_id").value = "";
						
						$('#barcode_check').animate({ opacity: "show" }, 1000);
						$('#cognome_check').animate({ opacity: "show" }, 1000);
						$('#nome_check').animate({ opacity: "show" }, 1000);
						
						if (ok == 3) showStepTwo();

		         	} else {
		            	alert('There was a problem with the request.');
		         	}
		          }
		      }			
		}

		function alertContentsRegisterStepTwo(){
			if (http_request.readyState == 4) {
				if (http_request.status == 200) {
					result=http_request.responseText;
					$("#tabRegister").hide();
					document.getElementById("tabRegister").innerHTML = "";
					document.getElementById("tabRegister").innerHTML = result;
					$('#tabRegister').animate({ opacity: "show" }, 1000);														
				} else {
					alert('There was a problem with the request.');
				}
			}
		}

		function alertContentsRetrievePassword(){
			if (http_request.readyState == 4) {
				if (http_request.status == 200) {
					result=http_request.responseText;
					document.getElementById("tabRetrieve").innerHTML = "";
					document.getElementById("tabRetrieve").innerHTML = result;
					$('#tabRetrieve').animate({ opacity: "show" }, 1000);														
				} else {
					alert('There was a problem with the request.');
				}
			}
		}

		function alertContentsChanges(){
			if (http_request.readyState == 4) {
				if (http_request.status == 200) {
					result=http_request.responseText;
					
					document.getElementById("tabDati").innerHTML = "";
					document.getElementById("tabDati").innerHTML = result;
					$('#tabDati').animate({ opacity: "show" }, 1000);														
				} else {
					alert('There was a problem with the request.');
				}
			}
		}


		function addOption(selectbox,text,value ){
			var optn = document.createElement("OPTION");
			optn.text = text;
			optn.value = value;
			selectbox.options.add(optn);
		}	
		
		function removeAllOptions(selectbox){
			var i;
			for(i=selectbox.options.length-1;i>=0;i--){
				selectbox.remove(i);
			}
		}					


		function sleep(n)
		{
		    var now = new Date();
		    var exitTime = now.getTime() + (n*1000);
		    while (true) {
		        now = new Date();
		            if (now.getTime() > exitTime) return;
		    }
		}
