
//Change l'etat de la liste modifiable vers un champ libre
function VerifListeMetier(list){
	if(list.value == 'autre'){
		list.name = 'desactive';
		list.disabled = 'true';
		var txt = document.getElementById('recrut_postul_spont_poste_txt');
		txt.style.display = 'inline';
		txt.name = 'recrut_postul_spont_poste';
	}
}

//On control le formulaire avant envoie
function PostForm(f){
	if(VerifForm(f)){
		return true;
	}else{
		return false;
	}
}

//Fonction sur changement du contenu de la iframe de post
function RetourPost(f){
	var reg_exp_ok = /ok/;
	var reg_exp_ko = /ko/;
	if (f.contentDocument) {
		//Cas autre IE
		var d = f.contentDocument;
	} else {
		//Cas IE
		var d = f.contentWindow.document;
	}
	if(reg_exp_ok.test(d.body.innerHTML)){
		ChargeContenu('/pl/recrutement.pl?action=validation_ok','c_annonce',0);
	}else if(reg_exp_ko.test(d.body.innerHTML)){
		ChargeContenu('/pl/recrutement.pl?action=validation_ko','c_annonce',0);
	}
}

function RetourPostSpont(f){
	var reg_exp_ok = /ok/;
	var reg_exp_ko = /ko/;
	if (f.contentDocument) {
		//Cas autre IE
		var d = f.contentDocument;
	} else {
		//Cas IE
		var d = f.contentWindow.document;
	}
	if(reg_exp_ok.test(d.body.innerHTML)){
		ChargeContenu('/pl/recrutement.pl?action=validation_ok','c_candidat_spont',0);
	}else if(reg_exp_ko.test(d.body.innerHTML)){
		ChargeContenu('/pl/recrutement.pl?action=validation_ko','c_candidat_spont',0);
	}
}


function startCallback() {
	// make something useful before submit (onStart)
	return true;
}
function completeCallback(response) {
	// make something useful after (onComplete)
	document.getElementById('nr').innerHTML = parseInt(document.getElementById('nr').innerHTML) + 1;
	document.getElementById('r').innerHTML = response;
}

/*
*Verifie les champs du formulaire avant la requete AJAX
*/
function VerifForm(f){
	var reg_exp = /nom|prenom|adresse|tel|code_postal|ville|cv|lm|poste/;
	var reg_exp_mail = /mail/;
	var reg_exp_civilite = /civilite/;
	
	var f = document.forms[f];
	var test = true;
	var RadioTest = false;
	for(i=0;i<f.elements.length;i++){
		var elem = f.elements[i];
		//Verification de la validite du mail
		if(reg_exp_mail.test(elem.name)){
			if(elem.value == null || elem.value == ''){
				document.getElementById(elem.name+'_err').style.display='inline';
				test = false;
			}else{
				//test l'existence de la validite du mail
				if(validateEmailv2(elem.value)){
					document.getElementById(elem.name+'_err').style.display='none';
				}else{
					document.getElementById(elem.name+'_err').style.display='inline';
					test = false;	
				}
			}
		}
		//Verification des champ textuel
		if(reg_exp.test(elem.name)){
			if(elem.value == null || elem.value == ''){
				document.getElementById(elem.name+'_err').style.display='inline';
				test = false;
			}else{
				document.getElementById(elem.name+'_err').style.display='none';
			}
		}
		if(reg_exp_civilite.test(elem.name) && !RadioTest){
			var SelectOk = false;
			RadioTest = true;
			for (i=0;i<=2;i++) {
				if (f.elements[elem.name][i].checked == true) {
			  		SelectOk = true;
					break;
				}
			}
			if(SelectOk){
				document.getElementById(elem.name+'_err').style.display='none';
			}else{
				document.getElementById(elem.name+'_err').style.display='inline';
				test = false;
			}	
		}
	}
	return test;
}

function validateEmailv2(email)
{
// a very simple email validation checking. 
// you can add more complex email checking if it helps 
    if(email.length <= 0)
	{
	  return true;
	}
    var splitted = email.match("^(.+)@(.+)$");
    if(splitted == null) return false;
    if(splitted[1] != null )
    {
      var regexp_user=/^\"?[\w-_\.]*\"?$/;
      if(splitted[1].match(regexp_user) == null) return false;
    }
    if(splitted[2] != null)
    {
      var regexp_domain=/^[\w-\.]*\.[A-Za-z]{2,4}$/;
      if(splitted[2].match(regexp_domain) == null) 
      {
	    var regexp_ip =/^\[\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\]$/;
	    if(splitted[2].match(regexp_ip) == null) return false;
      }// if
      return true;
    }
return false;
}