// JavaScript Document

var condidat={
	form:(function (){
		
				return 	document.forms['form_condidat'];
					
					})(),
	isValid:true,
	validate:function()
			{
				
				this.isValide=true;
						
				if(!UTIL.isValidMailadress(this.form.email.value))
				{ this.isValide=false;UTIL.Alert('Attention','Vous devez entrer une adresse email valide');this.form.email.focus();return false;}
				if (!UTIL.fnEmptyField(this.form.pws1.value)) 
				{	UTIL.Alert('Attention','Vous devez entrer une un mot de passe');this.form.pws1.focus();;return false;}
				else if(this.form.pws1.value.length<6 || this.form.pws1.value.length>10)
				{	UTIL.Alert('Attention','la longueur du mot de passe doit etre compris entre 6 et 8 caractères');this.form.pws1.focus();return false;}
				else
				if (!UTIL.fnEmptyField(this.form.pws2.value) || this.form.pws1.value!=this.form.pws2.value) 
				{	UTIL.Alert('Attention','Vous devez confirmer votre mot de passe');this.form.pws2.focus();return false;}
				if (!UTIL.fnEmptyField(this.form.nom.value)){	UTIL.Alert('Attention','Vous devez entrer votre nom');this.form.nom.focus();return false;}
				if (!UTIL.fnEmptyField(this.form.prenom.value)){	UTIL.Alert('Attention','Vous devez entrer votre prenom');this.form.prenom.focus();return false;}
					if (this.form.civilite.selectedIndex<=0){	UTIL.Alert('Attention','Vous devez spécifier votre etat civile');this.form.civilite.focus();return false;}														
				//if(!this.isValidCIN()) { this.isValide=false;return false;}
				if(!UTIL.fnEmptyField(this.form.CIN.value)) {	UTIL.Alert('Attention','Vous devez entrer votre CIN');this.form.CIN.focus();return false;}
				if(this.form.nationalite.selectedIndex<=0 ){UTIL.Alert('Attention','Vous devez spécifier votre nationalité');this.form.nationalite.focus();return false;}
			
				if(this.form.nationalite.options[this.form.nationalite.selectedIndex].text.toUpperCase().startsWith('TUNIS'))
				{
					if (this.form.gouvernerat.selectedIndex<=0){	UTIL.Alert('Attention','Vous devez spécifier le gouvernorat');this.form.gouvernerat.focus();return false;}	
					
				}
				else
				{
					if (!UTIL.fnEmptyField(this.form.autre_gouv.value)){	UTIL.Alert('Attention','Vous devez spécifier le gouvernorat');this.form.autre_gouv.focus();return false;}
				}
				if (!this.isValidDateNaiss()) { this.isValide=false;return false;}
				if (!UTIL.fnEmptyField(this.form.lieu_naiss.value)){	UTIL.Alert('Attention','Vous devez spécifier votre lieu de naissance');this.form.lieu_naiss.focus();return false;}
				if (!UTIL.fnEmptyField(this.form.addresse.value)){	UTIL.Alert('Attention','Vous devez spécifier votre adresse');this.form.addresse.focus();return false;}
				if (!UTIL.fnEmptyField(this.form.tel_portable.value)){	UTIL.Alert('Attention','Vous devez spécifier au moins un N° de tel portable');this.form.tel_portable.focus();return false;}
				
				if (this.form.secteur.selectedIndex<=0){	UTIL.Alert('Attention','Vous devez spécifier votre secteur d\'activité');this.form.secteur.focus();return false;}
				if (!UTIL.fnEmptyField(this.form.fonction_actuelle.value)){	UTIL.Alert('Attention','Vous devez spécifier votre fonction actuèlle');this.form.fonction_actuelle.focus();return false;}
				
				// verification de la saisi des etudes aux moins une
			
				if (this.form.diplome_1.selectedIndex<=0 ){	
				UTIL.Alert('Attention','Vous devez avoir aux moins un diplôme');this.form.diplome_1.focus();
				return false;
				}
				else
				{
					for(var i=1;i<=5;i++)
					{
						if (eval('this.form.diplome_'+i).selectedIndex>0 )
						{
							if (!UTIL.fnEmptyField(eval('this.form.specialite_'+i).value) || !UTIL.fnEmptyField(eval('this.form.etablissement_'+i).value) || eval('this.form.diplome_annee_'+i).selectedIndex<=0)
							{
								
								UTIL.Alert('Attention','Vous devez bien remplir la parti études en spécifiant:\n\n1- diplôme obtenu (au moins un).\n2- Etablissement.\n3- l\'année d\'obtention pour chaque diplôme obtenu diplôme');
								return false;
							}
						}
						
						
					}
					
				}
				// VERIFICATION DE LA SAISIE DE Expériences Professionnelles
					for(var i=1;i<=5;i++)
					{
						if (eval('this.form.experience_DU_'+i).selectedIndex>0 && eval('this.form.experience_AU_'+i).selectedIndex>0)
						{
							if (!UTIL.fnEmptyField(eval('this.form.experience_empl_'+i).value) || !UTIL.fnEmptyField(eval('this.form.experience_fonc_'+i).value))
							{
								
								UTIL.Alert('Attention','vous devez spécifier pour chaque periode de votre expérience professionnelle :\n1- l\'employeur.\n2- la fonction que vous avez occupé pendant la période en question. ');
								return false;
							}
						}
						else if (eval('this.form.experience_DU_'+i).selectedIndex>0 || eval('this.form.experience_AU_'+i).selectedIndex>0)
						{
							UTIL.Alert('Attention','vous devez bien spécifier la periode exacte pour chaque expérience professionnelle que vous avez vecus');
								return false;
						}
						
						
					}
				//verification de la saisi des langues
				if (this.form.langue_1.selectedIndex<=0 || this.form.langue_2.selectedIndex<=0 ){	
				UTIL.Alert('Attention','vous devez spécifier aux moins deux langues que vous maitrisez');
				return false;
				}
				else
				{
					for(var i=1;i<=5;i++)
					{
						if (eval('this.form.langue_'+i).selectedIndex>0 )
						{
							if (eval('this.form.langue_ecrit_'+i).selectedIndex<=0 || eval('this.form.langue_parle_'+i).selectedIndex<=0)
							{
								
								UTIL.Alert('Attention','vous devez spécifier votre niveau (parlé/ecrit) pour chaque langue');
								return false;
							}
						}
						
						
					}
					
				}
				if (!UTIL.fnEmptyField(this.form.competence_info.value)){	UTIL.Alert('Attention','Vous devez spécifier vos compétences en informatique');this.form.competence_info.focus();return false;}
				if (!UTIL.fnEmptyField(this.form.poste_recherche.value)){	UTIL.Alert('Attention','Vous devez spécifier le poste que vous cherchez');this.form.poste_recherche.focus();return false;}
				if (!UTIL.fnEmptyField(this.form.salaire_actuel.value)){	UTIL.Alert('Attention','Vous devez spécifier votre salaire actuel mensuel net');this.form.salaire_actuel.focus();return false;}
				if (!UTIL.fnEmptyField(this.form.pretention_salarial.value)){	UTIL.Alert('Attention','Vous devez spécifier votre Pretention Salariale');this.form.pretention_salarial.focus();return false;}
				if (this.form.disponibilite.selectedIndex<=0 )
				{	UTIL.Alert('Attention','Vous devez spécifier votre disponibilité');this.form.disponibilite.focus();return false;}
				if (this.form.permis.selectedIndex<=0 )
				{	UTIL.Alert('Attention','Vous devez spécifier si vous posseder un permis de conduire si oui séléctionnéez un parmis la liste');this.form.permis.focus();return false;}
				
				if (!UTIL.fnEmptyField(this.form.cv.value) && !UTIL.fnEmptyField(this.form.cvuploadedfile.value)){	UTIL.Alert('Attention','Vous devez spécifier votre CV (format *.doc ou *.pdf)');this.form.cv.focus();return false;}	
				if (!UTIL.fnEmptyField(this.form.verif_code.value)){	UTIL.Alert('Attention','Vous devez retaper le code généré en respectant la casse');this.form.verif_code.focus();return false;}
				
				//var date_naiss=this.form.date_naiss.value.split('/');
				//this.form.date_naiss.value=date_naiss[2]+'-'+date_naiss[1]+'-'+date_naisss[0]

				//alert(this.form.date_naiss.value);
				
				return true;
				
			}//fin fonction validate
	,
	updateform:function(posteddataobj)
	{
		this.form.email.value=posteddataobj.email;
		this.form.pws1.value=posteddataobj.pws1;
		this.form.nom.value=posteddataobj.nom;
		this.form.prenom.value=posteddataobj.prenom;
		for (var i=0;i< this.form.civilite.options.length;i++)
		{
			if (this.form.civilite.options[i].value==posteddataobj.civilite)
			{this.form.civilite.selectedIndex=i;break;
				
			}
		}
		this.form.CIN.value=posteddataobj.CIN;
			for (var i=0;i< this.form.nationalite.options.length;i++)
		{
			if (this.form.nationalite.options[i].value==posteddataobj.nationalite)
			{this.form.nationalite.selectedIndex=i;break;
				
			}
		}	
		if(this.form.nationalite.options[this.form.nationalite.selectedIndex].text.toUpperCase().startsWith('TUNIS'))
		{
			for (var i=0;i< this.form.gouvernerat.options.length;i++)
		{
			if (this.form.gouvernerat.options[i].value==posteddataobj.gouvernerat)
			{this.form.gouvernerat.selectedIndex=i;break;
				
			}
		}
		}
		else
		{this.UpdateNationSelection();}
		this.form.autre_gouv.value=posteddataobj.autre_gouv;
		this.form.date_naiss.value=posteddataobj.date_naiss;
		this.form.lieu_naiss.value=posteddataobj.lieu_naiss;
		this.form.addresse.value=posteddataobj.addresse;
		
		
		
	}//fin updateform
	,
	UpdateNationSelection:function()
	
			{//alert(this.form.nationalite.options[this.form.nationalite.selectedIndex].value);
			//var nationalite=this.form.nationalite.options[this.form.nationalite.selectedIndex];
			if(this.form.nationalite.options[this.form.nationalite.selectedIndex].text.toUpperCase().startsWith('TUNIS'))
			{
			this.form.gouvernerat.disabled=false;
			this.form.gouvernerat.selectedIndex=0;
			this.form.autre_gouv.disabled=true;
			this.form.autre_gouv.value='';
			}
			
			else
			
			{
			this.form.gouvernerat.disabled=true;
			this.form.gouvernerat.selectedIndex=0;
			this.form.autre_gouv.disabled=false;
			this.form.autre_gouv.value='';
			
			}
			
			}// fin de UpdateNationSelection
			,
			isValidCIN:function()
			{
 			reCIN = new RegExp(/(^\d{8}$)/);
			 if(UTIL.fnEmptyField($('CIN').value)){
				 if (!reCIN.test(condidat.form.CIN.value)) {
					  UTIL.Alert('Attention',"Vous devez entrez un CIN valide");
					  condidat.form.CIN.focus();
					  return false;
				 }}else
				 
			 {
					UTIL.Alert('Attention',"vous devez entrer votre CIN ");
					condidat.form.CIN.focus();
					return false;
					} 
			return true;
			},
			isValidDateNaiss:function()
	{
	var motjour;
	var motan;
	var choix;
	var motmois;
	var motsep;
	var mot=condidat.form.date_naiss.value;
var Erreur=true;
    if (mot.length!=10){UTIL.Alert('Attention',"Veuillez introduire votre date de naissance au format JJ/MM/AAAA (exemple : 12/02/1981)");condidat.form.date_naiss.focus();return false;}
    else{
    motjour=mot.substring(0,2);motmois=mot.substring(3,5);
    motan=mot.substring(6,10);motsep=mot.charAt(2)+mot.charAt(5);}
    if (isNaN(motjour+motmois+motan)|| motan>3000 ||motan<1900 || motsep!="//"){UTIL.Alert('Attention',"Veuillez introduire votre date de naissance au format JJ/MM/AAAA (exemple : 12/02/1981)");condidat.form.date_naiss.focus();return false;}
    else {choix="";    
    if (motan-(parseInt(motan/4)*4)==0){choix="bi"};
    if (motan-(parseInt(motan/4)*4)==0&&motan-(parseInt(motan/100)*100)==0)
    {choix=""};
    if (motan-(parseInt(motan/4)*4)==0&&motan-(parseInt(motan/400)*400)==0)
    {choix="bi"}
    switch (motmois){
    case "01":if(motjour<1 || motjour>31){UTIL.Alert('Attention',"Le mois de Janvier comporte 31 jours, veuillez choisir une date de naissance comprise en 1 et 31.");condidat.form.date_naiss.focus();return false;};
    break;
    case"02":if(choix=="bi"){if(motjour<1 || motjour>29){UTIL.Alert('Attention',"Le mois de Février comporte 29 jours car l'année choisie est bissextile.\nVeuillez choisir une date de naissance comprise en 1 et 29.");condidat.form.date_naiss.focus();return false;}}
              else{if(motjour<1 || motjour>28){UTIL.Alert('Attention',"Le mois de Février comporte 28 jours car l'année choisie n'est pas bissextile.\nVeuillez choisir une date de naissance comprise en 1 et 28.");condidat.form.date_naiss.focus();return false;}};
    break;
    case "03":if(motjour<1 || motjour>31){UTIL.Alert('Attention',"Le mois de Mars comporte 31 jours, veuillez choisir une date de naissance comprise en 1 et 31.");condidat.form.date_naiss.focus();return false;};
    break;
    case "04":if(motjour<1 || motjour>30){UTIL.Alert('Attention',"Le mois de Avril comporte 30 jours, veuillez choisir une date de naissance comprise en 1 et 30.");condidat.form.date_naiss.focus();return false;};
    break;
    case "05":if(motjour<1 || motjour>31){UTIL.Alert('Attention',"Le mois de Mai comporte 31 jours, veuillez choisir une date de naissance comprise en 1 et 31.");condidat.form.date_naiss.focus();return false;};
    break;
    case "06":if(motjour<1 || motjour>30){UTIL.Alert('Attention',"Le mois de Juin comporte 30 jours, veuillez choisir une date de naissance comprise en 1 et 30.");condidat.form.date_naiss.focus();return false;};
    break;
    case "07":if(motjour<1 || motjour>31){UTIL.Alert('Attention',"Le mois de Juillet comporte 31 jours, veuillez choisir une date de naissance comprise en 1 et 31.");condidat.form.date_naiss.focus();return false;};
    break;
    case "08":if(motjour<1 || motjour>31){UTIL.Alert('Attention',"Le mois de Août comporte 31 jours, veuillez choisir une date de naissance comprise en 1 et 31.");condidat.form.date_naiss.focus();return false;};
    break;
    case "09":if(motjour<1 || motjour>30){UTIL.Alert('Attention',"Le mois de Septembre comporte 30 jours, veuillez choisir une date de naissance comprise en 1 et 30.");condidat.form.date_naiss.focus();return false;};
    break;
    case "10":if(motjour<1 || motjour>31){UTIL.Alert('Attention',"Le mois de Octobre comporte 31 jours, veuillez choisir une date de naissance comprise en 1 et 31.");condidat.form.date_naiss.focus();return false;};
    break;
    case "11":if(motjour<1 || motjour>30){UTIL.Alert('Attention',"Le mois de Novembre comporte 30 jours, veuillez choisirune date de naissance comprise en 1 et 30.");condidat.form.date_naiss.focus();return false;};
    break;
    case "12":if(motjour<1 || motjour>31){UTIL.Alert('Attention',"Le mois de Décembre comporte 31 jours, veuillez choisir une date de naissance comprise en 1 et 31.");Vdate_naiss.focus();return false;};
    break;
    default:UTIL.Alert('Attention',"Le mois que vous avez entré n'est pas valide. Choisissez un mois compris entre 1 et 12.");condidat.form.date_naiss.focus();return false;	
}
}

	return true;   
}
//fin isvalidatenaiss
		
			
};