function validate(){
  var obj = document.getElementById("gaForm")
  var errors = ""
  var err_msg = "Merci de remplir correctement les champs obligatoires suivants :"

  if (obj.name == "na"){

    if (!obj["rq_gtype1"].checked && !obj["rq_gtype2"].checked && !obj["rq_gtype3"].checked){
      errors += '\n-Madame - Mademoiselle - Monsieur (Demandeur)'
    }

    if (obj["rq_name"].value == ""){
      errors += "\n-Nom (Demandeur)"
    }

    if (obj["rq_fname"].value == ""){
      errors += "\n-Prénom (Demandeur)"
    }

    if (obj["rq_addr"].value == ""){
      errors += "\n-Adresse (Demandeur)"
    }

    if (obj["rq_zip"].value == ""){
      errors += "\n-Code postal (Demandeur)"
    }

    if (obj["rq_city"].value == ""){
      errors += "\n-Ville (Demandeur)"
    }

    regexp = /^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,6})+$/;
    if (!regexp.test(obj["rq_email"].value)){
      errors += "\n-E-mail (Demandeur)"
    }

    if (!obj["for_gtype1"].checked && !obj["for_gtype2"].checked && !obj["for_gtype3"].checked){
      errors += "\n-Madame - Mademoiselle - Monsieur (L'acte concerné)"
    }

    if (obj["for_name"].value == ""){
      errors += "\n-Nom actuel (L'acte concerné)"
    }

    if (obj["for_bname"].value == ""){
      errors += "\n-Nom de naissance (L'acte concerné)"
    }

    if (obj["for_fname"].value == ""){
      errors += "\n-Prénom (L'acte concerné)"
    }

    regexp_d = /^\d{1,2}$/
    regexp_y = /^\d{4}$/
    if (!regexp_y.test(obj["for_birth_year"].value) || !regexp_d.test(obj["for_birth_day"].value) 
        || obj["for_birth_year"].value<1700 || obj["for_birth_year"].value > 2100
        || obj["for_birth_day"].value < 1 || obj["for_birth_day"].value > 31 
        ){
      errors += "\n-Date de naissance (L'acte concerné)"
    }

    if (obj["for_birth_place"].value == ""){
      errors += "\n-Lieu de naissance (L'acte concerné)"
    }

  }else if (obj.name == "na_f"){

    if (!obj["rq_gtype1"].checked && !obj["rq_gtype2"].checked && !obj["rq_gtype3"].checked){
      errors += '\n-Madame - Mademoiselle - Monsieur (Demandeur)'
    }

    if (obj["rq_name"].value == ""){
      errors += "\n-Nom (Demandeur)"
    }

    if (obj["rq_fname"].value == ""){
      errors += "\n-Prénom (Demandeur)"
    }

    if (obj["rq_addr"].value == ""){
      errors += "\n-Adresse (Demandeur)"
    }

    if (obj["rq_zip"].value == ""){
      errors += "\n-Code postal (Demandeur)"
    }

    if (obj["rq_city"].value == ""){
      errors += "\n-Ville (Demandeur)"
    }

    regexp = /^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,6})+$/;
    if (!regexp.test(obj["rq_email"].value)){
      errors += "\n-E-mail (Demandeur)"
    }

    if (!obj["for_gtype1"].checked && !obj["for_gtype2"].checked && !obj["for_gtype3"].checked){
      errors += "\n-Madame - Mademoiselle - Monsieur (L'acte concerné)"
    }

    if (obj["for_name"].value == ""){
      errors += "\n-Nom actuel (L'acte concerné)"
    }

    if (obj["for_bname"].value == ""){
      errors += "\n-Nom de naissance (L'acte concerné)"
    }

    if (obj["for_fname"].value == ""){
      errors += "\n-Prénom (L'acte concerné)"
    }

    regexp_d = /^\d{1,2}$/
    regexp_y = /^\d{4}$/
    if (!regexp_y.test(obj["for_birth_year"].value) || !regexp_d.test(obj["for_birth_day"].value) 
        || obj["for_birth_year"].value<1700 || obj["for_birth_year"].value > 2100
        || obj["for_birth_day"].value < 1 || obj["for_birth_day"].value > 31 
        ){
      errors += "\n-Date de naissance (L'acte concerné)"
    }

    if (obj["for_birth_place"].value == ""){
      errors += "\n-Lieu de naissance (L'acte concerné)"
    }

  }else if (obj.name == "ma"){

    if (!obj["rq_gtype1"].checked && !obj["rq_gtype2"].checked && !obj["rq_gtype3"].checked){
      errors += '\n-Madame - Mademoiselle - Monsieur (Demandeur)'
    }

    if (obj["rq_name"].value == ""){
      errors += "\n-Nom (Demandeur)"
    }

    if (obj["rq_fname"].value == ""){
      errors += "\n-Prénom (Demandeur)"
    }

    if (obj["rq_addr"].value == ""){
      errors += "\n-Adresse (Demandeur)"
    }

    if (obj["rq_zip"].value == ""){
      errors += "\n-Code postal (Demandeur)"
    }

    if (obj["rq_city"].value == ""){
      errors += "\n-Ville (Demandeur)"
    }

    regexp = /^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,6})+$/;
    if (!regexp.test(obj["rq_email"].value)){
      errors += "\n-E-mail (Demandeur)"
    }

    if (obj["rq_prnt_link"].value == ""){
      errors += "\n-Lien de parenté (Demandeur)"
    }

    if (obj["for_name"].value == ""){
      errors += "\n-Nom de l'époux (L'acte concerné)"
    }
    if (obj["for_fname"].value == ""){
      errors += "\n-Prénom de l'époux (L'acte concerné)"
    }

    if (obj["for_fname2"].value == ""){
      errors += "\n-Prénom de l'épouse (L'acte concerné)"
    }

    regexp_d = /^\d{1,2}$/
    regexp_y = /^\d{4}$/
    if (!regexp_y.test(obj["for_year"].value) || !regexp_d.test(obj["for_day"].value) 
        || obj["for_year"].value<1700 || obj["for_year"].value > 2100
        || obj["for_day"].value < 1 || obj["for_day"].value > 31 
        ){
      errors += "\n-Date du mariage (L'acte concerné)"
    }

    if (obj["for_place"].value == ""){
      errors += "\n-Lieu du mariage (L'acte concerné)"
    }

}else if (obj.name == "ma_f"){

    if (!obj["rq_gtype1"].checked && !obj["rq_gtype2"].checked && !obj["rq_gtype3"].checked){
      errors += '\n-Madame - Mademoiselle - Monsieur (Demandeur)'
    }

    if (obj["rq_name"].value == ""){
      errors += "\n-Nom (Demandeur)"
    }

    if (obj["rq_fname"].value == ""){
      errors += "\n-Prénom (Demandeur)"
    }

    if (obj["rq_addr"].value == ""){
      errors += "\n-Adresse (Demandeur)"
    }

    if (obj["rq_zip"].value == ""){
      errors += "\n-Code postal (Demandeur)"
    }

    if (obj["rq_city"].value == ""){
      errors += "\n-Ville (Demandeur)"
    }

    regexp = /^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,6})+$/;
    if (!regexp.test(obj["rq_email"].value)){
      errors += "\n-E-mail (Demandeur)"
    }

    if (obj["rq_prnt_link"].value == ""){
      errors += "\n-Lien de parenté (Demandeur)"
    }

    if (obj["for_name"].value == ""){
      errors += "\n-Nom de l'époux (L'acte concerné)"
    }
    if (obj["for_fname"].value == ""){
      errors += "\n-Prénom de l'époux (L'acte concerné)"
    }

    if (obj["for_fname2"].value == ""){
      errors += "\n-Prénom de l'épouse (L'acte concerné)"
    }

    regexp_d = /^\d{1,2}$/
    regexp_y = /^\d{4}$/
    if (!regexp_y.test(obj["for_year"].value) || !regexp_d.test(obj["for_day"].value) 
        || obj["for_year"].value<1700 || obj["for_year"].value > 2100
        || obj["for_day"].value < 1 || obj["for_day"].value > 31 
        ){
      errors += "\n-Date du mariage (L'acte concerné)"
    }

    if (obj["for_place"].value == ""){
      errors += "\n-Lieu du mariage (L'acte concerné)"
    }

  }else if (obj.name == "de"){

    if (!obj["rq_gtype1"].checked && !obj["rq_gtype2"].checked && !obj["rq_gtype3"].checked){
      errors += '\n-Madame - Mademoiselle - Monsieur (Demandeur)'
    }

    if (obj["rq_name"].value == ""){
      errors += "\n-Nom (Demandeur)"
    }

    if (obj["rq_fname"].value == ""){
      errors += "\n-Prénom (Demandeur)"
    }

    if (obj["rq_addr"].value == ""){
      errors += "\n-Adresse (Demandeur)"
    }

    if (obj["rq_zip"].value == ""){
      errors += "\n-Code postal (Demandeur)"
    }

    if (obj["rq_city"].value == ""){
      errors += "\n-Ville (Demandeur)"
    }

    regexp = /^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,6})+$/;
    if (!regexp.test(obj["rq_email"].value)){
      errors += "\n-E-mail (Demandeur)"
    }

    if (!obj["for_gtype1"].checked && !obj["for_gtype2"].checked && !obj["for_gtype3"].checked){
      errors += "\n-Madame - Mademoiselle - Monsieur (L'acte concerné)"
    }

    if (obj["for_name"].value == ""){
      errors += "\n-Nom actuel (L'acte concerné)"
    }
    if (obj["for_name2"].value == ""){
      errors += "\n-Nom de naissance (L'acte concerné)"
    }

    if (obj["for_fname2"].value == ""){
      errors += "\n-Prénom (L'acte concerné)"
    }

    regexp_d = /^\d{1,2}$/
    regexp_y = /^\d{4}$/
    if (!regexp_y.test(obj["for_year"].value) || !regexp_d.test(obj["for_day"].value) 
        || obj["for_year"].value<1700 || obj["for_year"].value > 2100
        || obj["for_day"].value < 1 || obj["for_day"].value > 31 
        ){
      errors += "\n-Date de décès (L'acte concerné)"
    }

    if (obj["for_place"].value == ""){
      errors += "\n-Lieu de décès (L'acte concerné)"
    }

  }else{
    errors = "\n-Unknown form";
  }

  if(errors != ""){
		alert(err_msg + errors);
			return false;
	}
	return true;
}