/*
USAGE
<form name="newsletter" method="post" action="newsletter.php" onsubmit="InviaDati(); return false;">
        <input type="text" name="newsletter" />
        <input type="submit" value="invia" />
      </form>

*/


function AJAXReq(method,url,bool){
  if(window.XMLHttpRequest){
    myReq = new XMLHttpRequest();
  } else 
  
  if(window.ActiveXObject){
    myReq = new ActiveXObject("Microsoft.XMLHTTP");
    
    if(!myReq){
      myReq = new ActiveXObject("Msxml2.XMLHTTP");
    }
  }
  
  if(myReq){
    execfunc(method,url,bool);
  }else{
    alert("Impossibilitati ad usare AJAX");
  }
}

function PreparaDati(){
  stringa = "";
  var frm = document.forms['newsletter'];
  var numeroElementi = frm.elements.length;
  
  for(var i = 0; i < numeroElementi; i++){
    if(i < numeroElementi-1){
      stringa += frm.elements[i].name+"="+encodeURIComponent(frm.elements[i].value)+"&";
    }else{
      stringa += frm.elements[i].name+"="+encodeURIComponent(frm.elements[i].value);
    }  
  }
}

var myReq;
var stringa;
var stringa;
var lang;
function InviaDati(_lang){
 lang=_lang;
var frm = document.forms['newsletter'];
if(checkEmail(frm.elements[0])== false){
    if(lang == "it"){
        document.getElementById("responsediv").innerHTML = '<span style="color:#F00" >E-mail non corretta</span>';
    }else{
        document.getElementById("responsediv").innerHTML = '<span style="color:#F00" >Invalid E-mail </span>';
    }
}else{
    PreparaDati();
    AJAXReq("POST","newsletter.php",true);
}
 
}

function execfunc(method,url,bool){

  myReq.onreadystatechange = handleResponse;
  myReq.open(method,url,bool);
  
  /* Spiegare setRequestHeader */
  myReq.setRequestHeader("Content-Type","application/x-www-form-urlencoded; charset=UTF-8");
  myReq.send(stringa);
}

function handleResponse(){
  if(myReq.readyState == 4){
    if(myReq.status == 200){
    
        if(lang == "it"){
            document.getElementById("responsediv").innerHTML = '<span style="color:#090" >Grazie!</span>';
        }else{
            document.getElementById("responsediv").innerHTML = '<span style="color:#090" >Thanks!</span>';
        }
        var frm = document.forms['newsletter'];
      frm.elements[0].value = "";
    }else{
      alert("Niente da fare, AJAX non funziona :(");
    }
  }
}

function checkEmail(email) {
	
	
	var filter = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
	
	if (!filter.test(email.value)) 
	{
        email.focus
        return false;
	
	}
	
	return true;
}

