window.onload = initPage;

if(lang == 'NL'){
	var warnings = {
	  "sNaam" : {
	    "required": "Vul uw naam in aub.",
	    "letters" : "Enkel letters zijn toegestaan",
	    "err"     : 0
	  },
	  "sComment" : {
	    "required": "Vul een bericht in aub.",
	    "err"     : 0
	  },
	  "sMail" : {
	    "required": "Vul een email adres in aub.",
	    "format" : "Vul een email adres in volgens het formaat 'naam@domein.be' in aub.",
	    "err"     : 0
	  },
	  "sVeri": {
	  	"fail" : "Verificatie mislukt, probeer opnieuw en klik op Zend",
	  	"err" : 0
	  },
	  "succes": {
	  	"fail" : "Bericht succesvol verzonden.",
	  	"err" : 0
	  },
	  "check": {
	  	"fail" : "Data Controle & Bericht zenden...",
	  	"err" : 0
	  },
	  "fail": {
	  	"fail" : "Zenden mislukt, probeer later opnieuw.",
	  	"err" : 0
	  }
	}
}else if(lang == 'FR'){
	var warnings = {
	  "sNaam" : {
	    "required": "Entrer votre nom s'il vous plaît.",
	    "letters" : "Seules les lettres sont autorisés dans un nom.",
	    "err"     : 0
	  },
	  "sComment" : {
	    "required": "Remplir un message s'il vous plaît.",
	    "err"     : 0
	  },
	  "sMail" : {
	    "required": "Entrer votre adresse e-mail s'il vous plaît.",
	    "format" : "Entrer votre adresse e-mail comme la forme 'nom@domaine.fr' s'il vous plaît",
	    "err"     : 0
	  },
	  "sVeri": {
	  	"fail" : "La vérification a échoué, essayez à nouveau, cliquez sur Envoyer après",
	  	"err" : 0
	  },
	  "succes": {
	  	"fail" : "La message est envoyer avec succès.",
	  	"err" : 0
	  },
	  "check": {
	  	"fail" : "Vérification des données et envoi du message ...",
	  	"err" : 0
	  },
	  "fail": {
	  	"fail" : "L'envoi a échoué, réessayez plus tard",
	  	"err" : 0
	  }
	}
} else{
	var warnings = {
	  "sNaam" : {
	    "required": "Please enter in your name.",
	    "letters" : "Only letters are allowed in a name.",
	    "err"     : 0
	  },
	  "sComment" : {
	    "required": "Please fill in a message.",
	    "err"     : 0
	  },
	  "sMail" : {
	    "required": "Please enter in your e-mail address.",
	    "format" : "Please enter your e-mail in the form 'name@domain.com'.",
	    "err"     : 0
	  },
	  "sVeri": {
	  	"fail" : "Verification failed, try again",
	  	"err" : 0
	  },
	  "succes": {
	  	"fail" : "Message Succesfully send.",
	  	"err" : 0
	  },
	  "check": {
	  	"fail" : "Checking Data & Sending Message...",
	  	"err" : 0
	  },
	  "fail": {
	  	"fail" : "Sending failed, try again later",
	  	"err" : 0
	  }
	}
}

var naamcheck = false;
var mailcheck = false;
var msgcheck = false;

function initPage() {
  addEventHandler(document.getElementById("sNaam"), "blur", checkNaam);
  addEventHandler(document.getElementById("sMail"), "blur", checkMail);
  addEventHandler(document.getElementById("sComment"), "blur", checkMsg);
  document.getElementById("submit").disabled = true;
  document.getElementById("submit").className = "disabledbutton";
  document.getElementById("submit").onclick = sendForm;
}

function sendForm(e){
	var naam = document.getElementById("sNaam").value;
	var email = document.getElementById("sMail").value;
	var adres = document.getElementById("sAdres").value;
	var tel = document.getElementById("sTel").value;
	var msg = document.getElementById("sComment").value;
	formRequest = createRequest();
  if (formRequest == null) {
    alert("Unable to create request");
  } else {
	var url = "ajaxobjects.php";
	var formData = "function=sendForm&naam="+naam+"&email="+email+"&tel="+tel+"&adres="+adres+"&msg="+msg;
	formRequest.onreadystatechange = formsuc;
	formRequest.open("POST", url, true);
	formRequest.setRequestHeader("Content-Type",
      "application/x-www-form-urlencoded");
	formRequest.send(formData);
	document.getElementById("contactform").className = "hidden";
	document.getElementById("contactresponse").className = "";
	document.getElementById("contactresponse").innerHTML = eval('warnings.' + "check" + '.' + "fail")+" <img src='images/progress.gif' />";
  }
}

function formsuc(){
  if (formRequest.readyState == 4) {
    if (formRequest.status == 200) {
   		if(formRequest.responseText == "captchafail"){
   			Recaptcha.reload();
   			document.getElementById("contactresponse").className = "hidden";
   			document.getElementById("contactform").className = "";
   		}else if(formRequest.responseText == "okay"){
			document.getElementById("contactform").className = "hidden";
			document.getElementById("contactresponse").className = "";
			document.getElementById("contactresponse").innerHTML = eval('warnings.' + "succes" + '.' + "fail")+" <img src='images/approved.gif' />";
   		}else{
   			document.getElementById("contactform").className = "hidden";
			document.getElementById("contactresponse").className = "";
			document.getElementById("contactresponse").innerHTML = eval('warnings.' + "fail" + '.' + "fail")+" <img src='images/denied.gif' />";
   		}
    }
  }
}

function checkNaam(e){
	if(fieldIsFilled(e) && fieldIsLetters(e)){
		naamcheck = true;
	}else{
		naamcheck = false;
	}
	checkFormStatus();
}

function checkMail(e){
	if(fieldIsFilled(e) && emailIsProper(e)){
		mailcheck = true;
	}else{
		mailcheck = false;
	}
	checkFormStatus();
}

function checkMsg(e){
	if(fieldIsFilled(e)){
		msgcheck = true;
	}else{
		msgcheck = false;
	}
	checkFormStatus();
}

function fieldIsFilled(e) {
  var me = getActivatedObject(e);
  if (me.value == "") {
    return false;
  } else {
    return true;
  }
}

function emailIsProper(e) {
  var me = getActivatedObject(e);
  if (!/^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/.test(me.value)) {
    return false;
  } else {
    return true;
  }
}

function fieldIsLetters(e) {
  var me = getActivatedObject(e);
  var nonAlphaChars = /[^a-zA-Z ]/;
  if (nonAlphaChars.test(me.value)) {
    return false;
  } else {
    return true;
  }
}

function fieldIsNumbers(e) {
  var me = getActivatedObject(e);
  var nonNumericChars = /[^0-9]/;
  if (nonNumericChars.test(me.value)) {
    return false;
  } else {
    return true;
  }
}

function checkFormStatus() {
	 
  if (naamcheck && mailcheck && msgcheck) {
    document.getElementById("submit").disabled = false;
    document.getElementById("submit").className = "";
  } else {
    document.getElementById("submit").disabled = true;
    document.getElementById("submit").className = "disabledbutton";
  }
}

