//form validation
//languages:
//0: deutsch
//1: italiano
//2: english

//show and hide privacy terms
function setDisplay(id){
	try{
  	var elem;
  	elem = document.getElementById(id);
  	if (elem != null){
    	if (elem.style.display == "none"){
    		elem.style.display = "block";
    		return;
    	}
    	else{
      	elem.style.display = "none";
      	return;
    	}
  	}
	}
	catch(e){
	}
}




function checkCheckBoxes() {
var error = "";
  if (document.formular.products_immanuel.checked == false &&
  document.formular.products_jerusalem.checked == false &&
  document.formular.products_ankleidekrippe.checked == false)
  {
    error="You didnt choose any of the checkboxes";
    alert("Please select at least one checkbox. Bitte mindestens ein Produkt auswaehlen. Prego selezionare almeno un prodotto.")
    return error;
  }else{
    return error;
  }
  
  
}






function validateFormOnSubmit(theForm, language) {
var reason = "";
  if(document.forms.formular.privacy.checked != true){
    reason = "privacy";
    alert("Please agree to the privacy terms. Bitte stimmen sie den Privacy-Bedingungen zu. Prego confermare le condizioni della privacy.")
  }
	
  reason += validateEmpty(theForm.name_surname);
  reason += validateEmpty(theForm.telefon);
  reason += validateEmail(theForm.e_mail);
  reason += checkCheckBoxes();
  
  
  if (reason != ""){
    return false;
  }

  return true;
}

function validateEmpty(fld) {
    var error = "";
 
    if (fld.value.length == 0) {
        fld.style.border = '1px solid red'; 
        error = "The required field has not been filled in.\n"
    } else {
        fld.style.border = '1px dotted silver';
    }
    return error;  
}


function trim(s)
{
  return s.replace(/^\s+|\s+$/, '');
}

function validateEmail(fld) {
    var error="";
    var tfld = trim(fld.value);                        // value of field with whitespace trimmed off
    var emailFilter = /^[^@]+@[^@.]+\.[^@]*\w\w$/ ;
    var illegalChars= /[\(\)\<\>\,\;\:\\\"\[\]]/ ;
   
    if (fld.value == "") {
        fld.style.border = '1px solid red';
        error = "You didn't enter an email address.\n";
    } else if (!emailFilter.test(tfld)) {              //test email for illegal characters
        fld.style.border = '1px solid red';
        error = "Please enter a valid email address.\n";
    } else if (fld.value.match(illegalChars)) {
        fld.style.border = '1px solid red';
        error = "The email address contains illegal characters.\n";
    } else {
        fld.style.border = '1px dotted silver';
    }
    return error;
}
