function popupaide(page) {
  fenetre = window.open(page, "", "width=475,height=390,scrollbars=yes,menubar=no,toolbar=no, status=no, resizable=yes");
  fenetre.focus();
}

function popupcgu(page) {
  fenetre = window.open(page, "", "width=655,height=490,scrollbars=yes,menubar=no,toolbar=no, status=no, resizable=yes");
  fenetre.focus();
}

function init (fieldID) {
	document.getElementById(fieldID).style.display='block';
	document.getElementById(fieldID + '_sansjs').style.display='none';
}

function initsimul () {
	if (!document.getElementsByTagName){ return; }
	init ('btn_next_step');
	var inputs = document.getElementsByTagName("input");
	for (var i=0; i<inputs.length; i++){
		var input1 = inputs[i];
		var inputtype1 = input1.getAttribute("type");		
		if (inputtype1=="radio"){
			input1.onclick=function() {verifcas(this.name);}
		}
	}
	var lst=getElementsByClassNameie("blocformsup", "div");
	var lst2=getElementsByClassNameie("cachea", "h3");
	tempcache(lst);
	tempcache(lst2);
	
	var cas = getURLVar("chomage");
	if(cas){
		document.getElementById("cas" + cas).style.display="block";
		verifcas(document.getElementById("cas" + cas).name);
	}
}

function initsimul2 () {
	if (!document.getElementsByTagName){ return; }
	init ('btn_calcul');
	var inputs = document.getElementsByTagName("input");
	var inputtype1arr = new Array();
	var pressed = 0;
	
	lien=getElementsByClassNameie("lien_aide1", "a");
	lien[0].style.display = "block";
	lien[0].onmouseover = function(event){
		pressed = 1;
	}
	lien[0].onmouseout = function(event){
		pressed = 0;
	}
	
	for (var i=0; i<inputs.length; i++){
		var input1 = inputs[i];
		if (input1.getAttribute("type")=="text") {
			inputtype1arr[inputtype1arr.length] = input1;			
			if(this.id)verifcas2(this, inputtype1arr,"");
			else verifcas2(input1, inputtype1arr,"1");	
			
			input1.onchange=function() {
				if(!pressed)verifcas2(this, inputtype1arr,"");
				else pressed = 0;
			}
			if(input1.id=="date_debut_conge") {
				input1.focus();
				input1.onkeyup = function() {
					input1_val = this.value;
					if(input1_val.length == 10){
						pressed = 1;
						verifcas2(this, inputtype1arr,"");
					}
				}
			}
			if((input1.id=="mois1")||(input1.id=="mois2")||(input1.id=="mois3")) {
				input1.onkeyup = function() {
					val = this.value;
					this.value = val.replace(",",".");
					verifcas2(this, inputtype1arr,"");
				}
				input1.onblur = function() {
					val = this.value;
					this.value = val.replace(",",".");
					verifcas2(this, inputtype1arr,"");
				}				
			}
		}
	}
	var lst=getElementsByClassNameie("blocformsup", "div");
	tempcache(lst);
		
	if(getURLVar("date_debut_conge")){		
		document.getElementById("volet").style.display="block";
		inputtype1arr[inputtype1arr.length] = document.getElementById("volet");
		verifcas2(document.getElementById("volet").name,inputtype1arr,"");		
	}
	
	if(getURLVar("errorDate")){		
		if(document.getElementById("date_debut_conge"))document.getElementById("date_debut_conge").focus();			
	}
	else if(getURLVar("errorMois1")){
		if(document.getElementById("mois1"))document.getElementById("mois1").focus();
	}
	else if(getURLVar("errorMois2")){
		if(document.getElementById("mois2"))document.getElementById("mois2").focus();
	}
	else if(getURLVar("errorMois3")){
		if(document.getElementById("mois3"))document.getElementById("mois3").focus();
	}
	
	if(document.getElementById("volet") && document.getElementById("volet").style.display == "block"){		
		lien[0].style.display = "none";
	}
}

function getElementsByClassNameie (classnam, type) {
	var gebcn=new Array();
	if (document.getElementsByClassName){
		gebcn=document.getElementsByClassName(classnam);
	}
	else { 
        var i = 0;
		var div = document.getElementsByTagName(type);
		while (element = div[i++]) {
			if (element.className.indexOf(classnam, 0)!="-1") {
				gebcn[gebcn.length]=element;
			}
		}
	}
	return gebcn;
}

function verifcas2 (elm, arr, loadevent) {
	if(elm){
		
		if (elm.id=="date_debut_conge") {
			var err_date = false;
			if (elm.value!=''){
				var diplayErrMsg = "1";
				if(loadevent == "1")diplayErrMsg = "";
				//Controle de la date saisie
				if(check_date(elm,diplayErrMsg)){
					//Mise a jour des labels de mois
					updateLabel(elm.value);
					document.getElementById("volet").style.display="block";	
					lien=getElementsByClassNameie("lien_aide1", "a");
					lien[0].style.display = "none";
					if(document.getElementById("mois1")){
						document.getElementById("mois1").focus();
					}
				}
				else{
					var err_date = true;
				}
			}
			else{
				document.getElementById("volet").style.display="none";				
			}
			if (!err_date) {
				//On verifie que les champs salaire ne sont pas en erreur
				if(!verif_salaire())err_date = true;
				else{				
					var btn=getElementsByClassNameie("boutongris", "div");
					for (var k=0; k<btn.length; k++){
						var reg=new RegExp("(boutongris)", "g");
						btn[k].className=btn[k].className.replace(reg,"boutonbleu");
					}
				}
			}
		}
		else {
			var rempli2=true;
			for (var p=0; p<arr.length; p++) {
				if (arr[p].value=="")
					rempli2=false;
				if (document.getElementById("mois1")&&document.getElementById("mois2")&&document.getElementById("mois3")) {
					if (elm.id=="mois1"||elm.id=="mois2"||elm.id=="mois3") {
						if ((parseFloat(document.getElementById("mois1").value)!=document.getElementById("mois1").value)||(parseFloat(document.getElementById("mois2").value)!=document.getElementById("mois2").value)||(parseFloat(document.getElementById("mois3").value)!=document.getElementById("mois3").value))
							rempli2=false;
					}
				}
				if (document.getElementById("mois1")) {
					if (elm.id=="mois1") {
						if (parseFloat(elm.value)!=elm.value)
							rempli2=false;
					}
				}
			}
			
			if (!rempli2) {
				var btn=getElementsByClassNameie("calcul", "div");
				for (var k=0; k<btn.length; k++){
					var reg=new RegExp("(boutonbleu)", "g");
					btn[k].className=btn[k].className.replace(reg,"boutongris");
				}
			}
		}	
		if (rempli2) {
			//On verifie que le champ date n'est pas en erreur
			if(document.getElementById("date_debut_conge")){
				if(!check_date(document.getElementById("date_debut_conge"),""))err_date = true;
			}
			
			var btn=getElementsByClassNameie("boutongris", "div");
			for (var k=0; k<btn.length; k++){
				var reg=new RegExp("(boutongris)", "g");
				btn[k].className=btn[k].className.replace(reg,"boutonbleu");
			}
		}
		if (err_date) {
			var btn=getElementsByClassNameie("calcul", "div");
			for (var k=0; k<btn.length; k++){
				var reg=new RegExp("(boutonbleu)", "g");
				btn[k].className=btn[k].className.replace(reg,"boutongris");
			}
		}
	}
}

function verifcas(elm) {
	var checknames = new Array("conge_type", "chomage");
	var chaineres="";
	for (var m=0; m<checknames.length; m++){
		var checktab =eval("document.forms[0]."+checknames[m]);
		for (var j=0; j<checktab.length; j++){
			if(checktab[j].checked) {
				chaineres+=checktab[j].id;
			}
		}
	}
	switch (chaineres) {
		case "conge_maternitechomage_oui" :	document.getElementById("cas2").style.display="none"; document.getElementById("cas1").style.display="block";
				break;
		case "conge_paternitechomage_oui" :	document.getElementById("cas2").style.display="none"; document.getElementById("cas1").style.display="block";
				break;
		case "conge_maternitechomage_non" :	document.getElementById("cas2").style.display="block"; document.getElementById("cas1").style.display="none";
				break;
		case "conge_paternitechomage_non" :	document.getElementById("cas2").style.display="block"; document.getElementById("cas1").style.display="none";
				break;
	}
	
	var checknamesrempl = new Array("activiteavant", "activite");
	for (var m=0; m<checknamesrempl.length; m++){
		var checktab =eval("document.forms[0]."+checknamesrempl[m]);
		for (var j=0; j<checktab.length; j++){
			if(checktab[j].checked) {
				var etape=getElementsByClassNameie("grise", "a");
				for (var k=0; k<etape.length; k++){
					var reg=new RegExp("(grise)", "g");
					etape[k].className=etape[k].className.replace(reg,"bleue");
				}
				var btn=getElementsByClassNameie("boutongris", "div");
				for (var k=0; k<btn.length; k++){
					var reg=new RegExp("(boutongris)", "g");
					btn[k].className=btn[k].className.replace(reg,"boutonbleu");
				}
			}
		}
	}
}

function verif_salaire(){
	var rempli2=true;
	for (var p=1; p<=3; p++) {
		if(!document.getElementById("mois" + p))break;
		
		if (document.getElementById("mois" + p).value==""){
			rempli2=false;
			break;
		}
		
		if (parseFloat(document.getElementById("mois" + p).value) != document.getElementById("mois" + p).value) {
			rempli2=false;
			break;
		}
	}
	return rempli2;
}

function tempcache(tablo2) {
	for (var i=0; i<tablo2.length; i++){		
		tablo2[i].style.display="none";
	}
}

function ouvre_popup(page) {
       window.open(page,"nom_popup","menubar=no, status=no, scrollbars=no, menubar=no, width=364, height=155");
}

function getURLVar(urlVarName) {
	//divide the URL in half at the '?'
	var urlHalves = String(document.location).split('?');
	var urlVarValue = '';
	if(urlHalves[1]){
		//load all the name/value pairs into an array
		var urlVars = urlHalves[1].split('&');
		//loop over the list, and find the specified url variable
		for(i=0; i<=(urlVars.length); i++){
			if(urlVars[i]){
				//load the name/value pair into an array
				var urlVarPair = urlVars[i].split('=');
				if (urlVarPair[0] && urlVarPair[0] == urlVarName) {
					//I found a variable that matches, load it's value into the return variable
					urlVarValue = urlVarPair[1];
					break;
				}
			}
		}
	}
	return urlVarValue;   
}

function check_date(field,diplayErrMsg)
{
	var erreur=true;
	var msg = "";
	var date = field.value;
	var tmp = date.split("/");
	
	if(date == "" || tmp.length==0) return false;
	
	if( tmp[tmp.length-1].length != 4 ){
		msg ="Erreur dans le format de la date. Respectez le format suivant : JJ/MM/AAAA (ex : 28/05/2009)";
		erreur = false;
	}
	else{
		
		if( ! date.match(/^[0-9]{1,2}\/[0-9]{1,2}\/[0-9]{4}$/) ){
			msg ="Erreur dans le format de la date. Respectez le format suivant : JJ/MM/AAAA (ex : 28/05/2009)";
			erreur = false;
		}		
		else{		
			motjour=date.substring(0,2);
			motmois=date.substring(3,5);
			motan=date.substring(6,10);
			motsep=date.charAt(2)+date.charAt(5);
			
			if (isNaN(motjour+motmois+motan) || motsep!="//"){
				msg ="Erreur dans le format de la date. Respectez le format suivant : JJ/MM/AAAA (ex : 28/05/2009)";
				erreur = 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){msg = "Le mois de Janvier comporte 31 jours, veuillez choisir une date comprise entre 1 et 31.";erreur=false;};
					 break;
					 case"02":if(choix=="bi"){if(motjour<1 || motjour>29){msg = "Le mois de Février comporte 29 jours car l'année choisie est bissextile.\nVeuillez choisir une date comprise entre 1 et 29.";erreur=false;}}
					 else{if(motjour<1 || motjour>28){msg = "Le mois de Février comporte 28 jours car l'année choisie n'est pas bissextile.\nVeuillez choisir une date comprise entre 1 et 28.";erreur=false;}};
					 break;
					 case "03":if(motjour<1 || motjour>31){msg = "Le mois de Mars comporte 31 jours, veuillez choisir une date comprise entre 1 et 31.";erreur=false;};
					 break;
					 case "04":if(motjour<1 || motjour>30){msg = "Le mois de Avril comporte 30 jours, veuillez choisir une date comprise entre 1 et 30.";erreur=false;};
					 break;
					 case "05":if(motjour<1 || motjour>31){msg = "Le mois de Mai comporte 31 jours, veuillez choisir une date comprise entre 1 et 31.";erreur=false;};
					 break;
					 case "06":if(motjour<1 || motjour>30){msg = "Le mois de Juin comporte 30 jours, veuillez choisir une date comprise entre 1 et 30.";erreur=false;};
					 break;
					 case "07":if(motjour<1 || motjour>31){msg = "Le mois de Juillet comporte 31 jours, veuillez choisir une date comprise entre 1 et 31.";erreur=false;};
					 break;
					 case "08":if(motjour<1 || motjour>31){msg = "Le mois de Août comporte 31 jours, veuillez choisir une date comprise entre 1 et 31.";erreur=false;};
					 break;
					 case "09":if(motjour<1 || motjour>30){msg = "Le mois de Septembre comporte 30 jours, veuillez choisir une date comprise entre 1 et 30.";erreur=false;};
					 break;
					 case "10":if(motjour<1 || motjour>31){msg = "Le mois de Octobre comporte 31 jours, veuillez choisir une date comprise entre 1 et 31.";erreur=false;};
					 break;
					 case "11":if(motjour<1 || motjour>30){msg = "Le mois de Novembre comporte 30 jours, veuillez choisirune date comprise entre 1 et 30.";erreur=false;};
					 break;
					 case "12":if(motjour<1 || motjour>31){msg = "Le mois de Décembre comporte 31 jours, veuillez choisir une date comprise entre 1 et 31.";erreur=false;};
					 break;
					 default:msg = "Le mois que vous avez entré n'est pas valide. Choisissez un mois compris entre 1 et 12.";erreur=false;
				}
			}
		}
	}
	
	field.value = date;
	
	if(msg && diplayErrMsg == "1")alert(msg);
	
	return erreur;
}


function updateLabel(dateValue){
	var moisArr = new Array("Janvier","Février","Mars","Avril","Mai","Juin","Juillet","Aout","Septembre","Octobre","Novembre","Décembre");
	tmp = dateValue.split('/');
	flag = false;
	
	if(tmp.length == 3 && tmp[1] <= 12){
		for(i=1; i<4; i++){
			if((tmp[1] - i - 1) < 0){
				mois = moisArr[11 - Math.abs(tmp[1] - i)];
				if(!flag){
					annee = tmp[2] - 1;
					flag = true;
				}
			}
			else{
				mois = moisArr[tmp[1] - i - 1];
				annee = tmp[2];
			}
			if(document.getElementById('mois'+i+'_lbl')){
				document.getElementById('mois'+i+'_lbl').innerHTML = mois + " " + annee;
			}
		}
	}
}

function keyPressed(e) {
	var code;
	if (!e) var e = window.event;
	if (e.keyCode) code = e.keyCode;
	else if (e.which) code = e.which;
	var character = String.fromCharCode(code);
	return character;
}

function IsNumeric(sText)
{
   var ValidChars = "0123456789.";
   var IsNumber=true;
   var Char;
 
   for (i = 0; i < sText.length && IsNumber == true; i++) 
   { 
      Char = sText.charAt(i); 
      if (ValidChars.indexOf(Char) == -1){
         IsNumber = false;
      }
   }
   return IsNumber;   
}