
function popup(url,w,h,scroll)
{
	lapopup=window.open(url,'popup','menubar=no,toolbar=no,location=no,directories=no,status=no,scrollbars='+scroll+',resizable=no,width='+w+',height='+h);
	win_x=(screen.width/2)-(w/2);
        win_y=(screen.height/2)-(h/2);
        lapopup.moveTo(win_x,win_y);
}
function popup_cgu()
{
	lapopup=window.open('cgu.php','popup','menubar=no,toolbar=no,location=no,directories=no,status=no,scrollbars=yes,resizable=no,width=500,height=300');
	win_x=(screen.width/2)-(w/2);
        win_y=(screen.height/2)-(h/2);
        lapopup.moveTo(win_x,win_y);
}
function changePage(debut)
{
	aform=window.document.form1;
	aform._debut.value=debut;
	aform.submit();		
}
function trier(champ)
{
	aform=window.document.form1;
	
	if (aform._tri.value==champ)
	{
		if (aform._sens.value=="ASC") aform._sens.value="DESC";
		else aform._sens.value="ASC";
	}
	else
		aform._sens.value="ASC";
	
	aform._tri.value=champ;

	aform._debut.value=0;
	aform.submit();
}

function isInteger (s)
{
    var i;
    if (isEmpty(s))
    {
       if (isInteger.arguments.length == 1) 
       {
       	return false;
       }
       else
       {
       	return (isInteger.arguments[1] == true);
       }
    }	
    for (i = 0; i < s.length; i++)
    {
        var c = s.charAt(i);
        if (!isDigit(c)) {return false;}
    }
    // All characters are numbers.
    return true;
}
function isEmpty(s)
{
	return ((s == null) || (s.length == 0));
}

function isDigit (c)
{
	return ((c >= "0") && (c <= "9"));
}

function isDate2(chaine)
{
	DateJour = new Date();
	Annee = DateJour.getYear();
	Mois = DateJour.getMonth()+1;
	// if (eval(Mois) < 10)
	//alert("datejour="+Mois+" jour="+Jour);
	lg = chaine.length;
	sep1 = chaine.substring(4,5);
	sep2 = chaine.substring(7,8);
	jour = chaine.substring(8,10);
	mois = chaine.substring(5,7);
	an   = chaine.substring(0,5);
	if (lg != 10) return false;
	if (sep1 != '-' || sep2 != '-') return false;
	if (jour < '01' || jour > '31') return false;	
	if (mois < '01' || mois > '12') return false;	
	if (an.match(/(20[0-9]{2})/) == null ) return false;
  return true;
} 
 // validite d'un e-mail	

function valider_email(email)
{
	var exp1=new RegExp("^([a-zA-Z0-9_])([a-zA-Z0-9_\.\-])*\@(([a-zA-Z0-9_\-])+\.)+([a-zA-Z0-9]{2,4})$");

	if ( !exp1.test(email) )
   	{
   		alert("E-mail non valide");
   	
   		return 0;
   	}
	return 1;
}


 
function isAlpha(chaine) { 
	RE = /^([A-Za-z]+[ ]*[-]*[A-Za-z]*)+$/; 
	// Si on ne trouve pas dans le champ l'expression reguliere recherchee 
	if (!RE.test(chaine)) { 
		return(false); 
	} else { 
		return(true); 
	} 

} 

function isAlphaNum(chaine) { 
	RE = /^[A-Za-z?????????????\s,0-9\-]+$/; 
	// Si on ne trouve pas dans le champ l'expression reguliere recherchee 
	if (!RE.test(chaine)) { 
		return(false); 
	} else { 
		return(true); 
	} 

} 

function isNum(chaine) { 
	RE = /^\d+$/; 
	// Si on ne trouve pas dans le champ l'expression reguliere recherchee 
	if (!RE.test(chaine)) { 
		return(false); 
	} else { 
		return(true); 
	} 

} 

function isFloat(chaine) { 
	RE = /^\d+[\.]\d+$/; 
	// Si on ne trouve pas dans le champ l'expression reguliere recherchee 
	if (!RE.test(chaine)) { 
		return(false); 
	} else { 
		return(true); 
	} 

} 

function isCodePostal(chaine) { 
	RE = /^\d{5}$/; 
	// Si on ne trouve pas dans le champ l'expression reguliere recherchee 
	if (!RE.test(chaine)) { 
		return(false); 
	} else { 
		return(true); 
	} 

} 

function isFormatDate(chaine) { 
	RE = /^\d{2}([\/]|[\-])+\d{2}([\/]|[\-])+\d{2}(\d{2})*$/; 
	// Si on ne trouve pas dans le champ l'expression reguliere recherchee 
	if (!RE.test(chaine)) { 
		return(false); 
	} else { 
		return(true); 
	} 
} 

function isEmail(chaine) { 
	RE = /^[A-Za-z0-9\.\-_]+[@][A-Za-z0-9\-\.]+[\.][A-Za-z][A-Za-z][A-Za-z]?[A-Za-z]?$/; 
	// Si on ne trouve pas dans le champ l'expression reguliere recherchee 
	if (!RE.test(chaine)) { 
		return(false); 
	} else { 
		return(true); 
	} 
} 

function isPhoneNumber(chaine) { 
	RE = /^[0-9\.\-\ ]+$/; 
	// Si on ne trouve pas dans le champ l'expression reguliere recherchee 
	if (!RE.test(chaine)) { 
		return(false); 
	} else { 
		return(true); 
	} 
} 

function isDate10(date)
{
// format : JJ/MM/AAAA
// alert( "date.length=" + date.length );

if (date.length!=10) return false;

var bissex=false;

var testjj=false;

var testmm=false;

var testaaaa=false;

var nbjours = new Array(12);

nbjours[0]=31;

nbjours[1]=28;

nbjours[2]=31;

nbjours[3]=30;

nbjours[4]=31;

nbjours[5]=30;

nbjours[6]=31;

nbjours[7]=31;

nbjours[8]=30;

nbjours[9]=31;

nbjours[10]=30;

nbjours[11]=31;

var Sjj = date.substr(0,2);

var Smm = date.substr(3,2);

var Saaaa = date.substr(6,4);

//var jj=parseInt(Sjj,10);

//var mm=parseInt(Smm,10); 

//var aaaa=parseInt(Saaaa,10);

jj = Sjj;

mm = Smm;

aaaa= Saaaa;

if ((aaaa % 4) == 0 && (aaaa % 100) != 0 || (aaaa % 400) == 0) bissex = true;

if (bissex) nbjours[1]=29;

if (jj >= 1 && jj <= nbjours[mm-1]) testjj = true;

if (mm >= 1 && mm <= 12) testmm = true;

if (aaaa >= 2000 && aaaa <= 2100) testaaaa = true;

// alert( "testjj=" + testjj + " testmm=" + testmm + " testaaaa=" + testaaaa );

return (testjj && testmm && testaaaa); 

} 

function fenetreCent(url,nom,largeur,hauteur,options)
{
 var haut=(screen.height-hauteur)/2;
 var Gauche=(screen.width-largeur)/2;
 fencent=window.open(url,nom,"top="+haut+",left="+Gauche+",width="+largeur+",height="+hauteur+","+options);
}
 
 
function Popu_PDF(idGuide, idFormat, NomChamp)
{
  var page = "popup_telecharge.php?_idGuide="+idGuide+"&_idFormat="+idFormat+"&_NomChamp="+NomChamp;
  fenetreCent(page,"fencent",800,500,"menubar=no,toolbar=no,location=no,directories=no,status=no,scrollbars=yes,resizable=yes");
}
  
 function isIPAdresse(chaine) { 
	RE = /^[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}$/; 
	// Si on ne trouve pas dans le champ l'expression reguliere recherchee 
	if (!RE.test(chaine)) { 
		return(false); 
	} else { 
		return(true); 
	} 
} 
function affiche_alert(texte){
 var chaine=urldecode(texte);
  alert(chaine);
}
function urldecode(ch) {
   ch = ch.replace(/[+]/g," ")
   return unescape(ch)
}

    /* Activation ou dÃ©sactivation de champs*/
  function ControleAct(Controleur, Controle1, Controle2, Masquer) 
  {
	var objControleur = document.getElementById(Controleur);
	if( !objControleur ) return false;
	var objControle1 = document.getElementById(Controle1);
	if( !objControle1 ) return false;
	var objControle2 = document.getElementById(Controle2);
	if( !objControle2 ) return false;
		if (Masquer=='1')
		{
			objControle1.style.visibility=(objControleur.checked==true)?'visible':'hidden';
			objControle2.style.visibility=(objControleur.checked==true)?'visible':'hidden';
		}
		else
		{
			objControle1.disabled=(objControleur.checked==true)?false:true;
			objControle2.disabled=(objControleur.checked==true)?false:true;
			objControle1.checked=(objControleur.checked==true)?true:false;
			objControle2.checked=false;
		}
		return true;
  }
  /* Visualisation de champs */
  function ControleVisu(Controleur, Controle, Masquer) 
  {
	var objControleur = document.getElementById(Controleur);
	if( !objControleur ) return false;
	var objControle = document.getElementById(Controle);
	if( !objControle ) return false;
		if (Masquer=='1')
		{
			objControle.style.visibility=(objControleur.checked==true)?'visible':'hidden';
		}
		else
		{
			objControle.disabled=(objControleur.checked==true)?false:true;
		}
		return true;
  }
  /*champs oui desabled*/
  function desabled_oui(Controleur) 
  {
	 var objControleur = document.getElementById(Controleur);
	
	  objControleur.disabled=true;

  }

function textCounter( field, countfield, maxlimit ) {
  if ( field.value.length > maxlimit )
  {
    field.value = field.value.substring( 0, maxlimit );
    alert( 'Le nombre maximum de caractères autorisé est 255.' );
    return false;
  }
 /* else
  {
    countfield = maxlimit - field.value.length;
  }*/
}

/* Controle de formulaires */

/* Vérifie qu'une sélection est faite dans la liste de choix 
*
* n_select > Noeud HTML Select
*/
function ControleSelect(n_select)
{
	if(n_select.selectedIndex == 0)
		return false;
	
	return true;
}

function Alerter(t_erreurs)
{
	var message = '';

	if(t_erreurs.length)
	{
		for(var i = 0; i < t_erreurs.length; i++)
			message += t_erreurs[i];

		alert(message);

		return false;
	}
	
	return true;
}

/* / Controle de formulaires */


function VerifierSelectionDI(liste_di)
{
	var di_id = liste_di.options[liste_di.selectedIndex].value;

	// Pas de choix > ok
	if(di_id == -1)
		return true;

	var occ = 0;

	for(var i = 1; i <= nb_di; i++)
	{
		// Passer la liste courante
		if('domaines'+i == liste_di.id)
			continue;

		var liste = document.getElementById('domaines'+i);
		if(liste.options[liste.selectedIndex].value == di_id)			
			occ++;
	}

	if(liste_di.options[liste_di.selectedIndex].style.color != '') {
		alert('Ce domaine ne correspond pas à la rubrique sélectionnée.');
		liste_di.selectedIndex = VALEUR_PRECEDENTE;
		return false;
	}

	if(occ)
	{
		alert("Un domaine ne doit être sélectionné qu'une fois.");
		
		// Sélectionner la position précédente
		liste_di.selectedIndex = VALEUR_PRECEDENTE;
		
		return false;
	}
	
	return true;		

}

function GriserSelection()
{
	DeGriser();

	var t_valeurs = new Array();

	// Récupérer les valeurs des listes DI
	for(var i = 1; i <= nb_di; i++)
	{
		var liste = document.getElementById('domaines'+i);
		t_valeurs[i] = liste.selectedIndex;
	}

	// Griser les éléments utilisés
	for(var i = 1; i <= nb_di; i++)
	{
		var liste = document.getElementById('domaines'+i);

		for(var j = 1; j < t_valeurs.length; j++)
		{
			if(j == i || !t_valeurs[j])
				continue;
				
			liste.options[t_valeurs[j]].style.color = '#888888';
		}
	}
}

function DeGriser()
{
	// Récupérer les valeurs des listes DI
	for(var i = 1; i <= nb_di; i++)
	{
		var liste = document.getElementById('domaines'+i);
		
		for(var j = 0; j < liste.options.length; j++)
		{
			liste.options[j].style.color = '';
		}		
	}
}

function PermuterActivationDI(b) {
	// Récupérer les valeurs des listes DI
	for(var i = 1; i <= nb_di; i++)
	{
		var liste = document.getElementById('domaines'+i);
		liste.disabled = !b;
	}
}

function GriserOptions(position) {

	// Récupérer les valeurs des listes DI
	for(var i = 1; i <= nb_di; i++)
	{
		var liste = document.getElementById('domaines'+i);
		var t_optgroups = liste.getElementsByTagName('optgroup');

		for(var j = 0; j < t_optgroups.length; j++) {

				var t_options = t_optgroups[j].getElementsByTagName('option');
				for(var h = 0; h < t_options.length; h++) {
					if(j+1 != position) {
						color = '#888888';
					}
					else {
						color = '';
					}
					t_options[h].style.color = color;
				}

				
		}
	}

}

