/***************************************
*---------------------------------------
* JS Formulaire
*
* modifié le 	: 07/09/09
* par 			: Amélie Jouineau
*---------------------------------------
***************************************/

// Validation des formulaires

/* Teste si une chaine est vide */
function isEmpty(elm){
  var elmstr = elm.value + "";
  elmstr = trim(elmstr);
  if(elmstr.length == 0)
    return true;
  return false;
}

function trim(st){
  var len = st.length
    var begin = 0, end = len - 1;
  while (st.charAt(begin) == " " && begin < len){
      begin++;
  }
  while (st.charAt(end) == " " && begin < end){
      end--;
  }
  return st.substring(begin, end + 1);
}

/* Teste la validite d'un email */
function checkEmail(elm){
  var elmstr = elm.value + "";
  elmstr = trim(elmstr);
  var filter = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;

  if (filter.test(elmstr)){
    return true;
  }else{
    return false;
  }
}

/* Teste la validite d'une date
	format jj/mm/aaaa */
function checkDate(elm){
  var elmstr = elm.value + "";
  elmstr = trim(elmstr);
  var filter = /^([0-9]{2,2})+\/([0-9]{2,2})+\/([0-9]{4,4})+$/;

  if (filter.test(elmstr)){
    return true;
  }else{
    return false;
  }
}

/* Vérifie le nombre limite de cases à cocher */
function checkedLimite(nb){
	var f = document.formulaire;
	var iChecked = 0;
	
	for (i=0;i<f.length;i++){
		var element = f[i];
		if (element.type=="checkbox" && element.checked == true){
			iChecked++;
		}
	}
	if (iChecked > nb){
		return false;
	}else{
		if (iChecked == 0){
			return false;
		}else{
			return true;
		}
	}
}

function setFocus(champ) {
	document.getElementById(champ).focus();
}

function testemail(email) {
	if ((email.indexOf('@',0)==-1) || (email.indexOf('.',0)==-1)) {
		// l'adresse entrée est incorrecte
		return false;
	}
	else{
		// l'adresse est correcte, on soumet le formulaire
		return true;
	}
}



// VERIFIE LE FORMULAIRE D'INFOS PROSPECTS
// ---------------------------
function valid_form_infos_prospects(formulaire){

	var erreur 		= 'Merci d\'indiquer :\n';
	var lenInit 	= erreur.length;
	var focuson 	= false;
	var formz 		= document.formulaire;
	var testdate  	= "";
	
	if(isEmpty(formz.civ) ){
		erreur+="- votre civilite \n";
  		if(!focuson) focuson = formz.civ;
  	}
	if(isEmpty(formz.nom) ){
		erreur+="- votre nom \n";
  		if(!focuson) focuson = formz.nom;
  	}
  	if(isEmpty(formz.prenom) ){
		erreur+="- votre prénom \n";
  		if(!focuson) focuson = formz.prenom;
  	}
  	if(isEmpty(formz.adresse) ){
		erreur+="- votre adresse \n";
  		if(!focuson) focuson = formz.adresse;
  	}
  	if(isEmpty(formz.codepostal) ){
		erreur+="- votre code postal \n";
  		if(!focuson) focuson = formz.codepostal;
  	}
  	if(isEmpty(formz.ville) ){
		erreur+="- votre ville \n";
  		if(!focuson) focuson = formz.ville;
  	}
  	if(isEmpty(formz.pays) ){
		erreur+="- votre pays \n";
  		if(!focuson) focuson = formz.pays;
  	}
	if(isEmpty(formz.email) ){
		erreur+="- votre e-mail \n";
  		if(!focuson) focuson = formz.email;
  	}else{
		if(!checkEmail(formz.email) ){
			erreur+="- un email valide\n";
  			if(!focuson) focuson = formz.email;
  		}
	}
	if(isEmpty(formz.fonction) ){
		erreur+="- votre fonction \n";
  		if(!focuson) focuson = formz.fonction;
  	}
  	if(isEmpty(formz.niveau) ){
		erreur+="- votre niveau d\'enseignement \n";
  		if(!focuson) focuson = formz.niveau;
  	}
	
	
  	if ( erreur.length == lenInit ) {
    	formz.submit();
		return true;
  	} else {
    	if ( focuson ) focuson.focus();
    	alert(erreur);
  	}
	
}




// VERIFIE LE FORMULAIRE CONTACTS
// ---------------------------
function verifFormCont(form){

	var erreur 		= 'Merci d\'indiquer :\n';
	var lenInit 	= erreur.length;
	var focuson 	= false;
	var formz 		= document.form;
	var testdate  	= "";
	
	if(isEmpty(formz.souhait) ){
		erreur+="- le motif de votre contact \n";
		if(!focuson) focuson = formz.souhait;
  	}
  	if(isEmpty(formz.qui) ){
		erreur+="- votre profil \n";
  		if(!focuson) focuson = formz.qui;
  	}
	if(isEmpty(formz.nom) ){
		erreur+="- votre nom \n";
		if(!focuson) focuson = formz.nom;
	}
	if(isEmpty(formz.prenom) ){
		erreur+="- votre prénom \n";
  		if(!focuson) focuson = formz.prenom;
  	}
	if(isEmpty(formz.email) ){
		erreur+="- votre e-mail \n";
		if(!focuson) focuson = formz.email;
	}else{
		if(!checkEmail(formz.email) ){
			erreur+="- un e-mail valide\n";
			if(!focuson) focuson = formz.email;
		}
	}
	if(isEmpty(formz.demande) ){
		erreur+="- votre demande \n";
		if(!focuson) focuson = formz.demande;
	}

  	if ( erreur.length == lenInit ) {
    	formz.submit();
  	} else {
    	if ( focuson ) focuson.focus();
    	alert(erreur);
  	}

}