			//variables globales
			var suisCache=true;
			var dico1_date= new Array();
	 		var d_date_reverse = false;
			var tabTyp= new Array(); //permet de dire si typ_result est vrai ou faux pour i
			var tabNbr= new Array(); //permet de dire si nbr_result est vrai ou faux pour i
			var nbrvar;		//nombre de variable du dico1
			var nbrvar2;	//nombre de variable du dico2
			
	 	 	function cacher_id(baliseId){
	 		document.getElementById(baliseId).style.visibility='hidden';
			document.getElementById(baliseId).style.display='none';
	 		}
	 		
	 		function montrer_id(baliseId){
	 		document.getElementById(baliseId).style.visibility='visible';
	 		document.getElementById(baliseId).style.display='block';
	 		}
	 		
	 		
	 		function affiAide(fenetre){

	 			//gere l'affichage ou non de fenetre_index
	 		if (suisCache==true)
	 			{
	 			montrer_id(fenetre);
	 			suisCache=false;
	 			document.images["bAide"].src="image/boutonaide3.png";
	 			}
	 		else
	 			{
	 			cacher_id(fenetre);
	 			suisCache=true;
	 			//permet de modifier le bouton de clic
	 			document.images["bAide"].src="image/bouton aide1.png";
	 			}
	 		}
	 		

				
			function init_page_reorg(){
			nbrvar= document.form_relation.nbrvar.value;
			nbrvar2= document.form_relation.nbrvar2.value;
		 	for (i=0; i<nbrvar*2 ; i=i+2)
					{
					inc=i/2;
					dico1_date[inc]= new String;
					dico1_date[inc]=document.form_relation.elements[i].value;
					}
			for (i=0; i<nbrvar; i++)
				{
				tabTyp[i]= new Boolean(true);
				tabNbr[i]= new Boolean(true);
				}
		}
		
		function reorg_donnees(){	//ce script me permet de récupéré les entrés du formulaire "classement" et de les ressortir dans une fenetre
			var classement = document.form_classement.classement.value;
			var ordre = document.form_classement.ordre.value;
			var dico1 = document.form_classement.dictionnaire1.value;
			var dico1_donnees= new Array();
			var lieur= new Array(); //cette variable doit permettre de lier les deux dico afin que lorsque dico1 soit trié, dico2 suive le changement.
		 	var nbrvar= document.form_relation.nbrvar.value;
			var nbrvar2= document.form_relation.nbrvar2.value;
			
			for (i=0; i<nbrvar*2 ; i=i+2)
					{
					inc=i/2;
					dico1_donnees[inc]= new String;
					dico1_donnees[inc]=document.form_relation.elements[i].value;
					lieur[document.form_relation.elements[i].value]=document.form_relation.elements[i+1].value;
					}
			if (classement==2)	//si le classement vaut 'par ordre alphabétique
				{
					if (ordre=="croissant")
					{
					dico1_donnees.sort();
					for (i=0; i<nbrvar*2 ; i=i+2)
						{
						inc=i/2;
						document.form_relation.elements[i].options[0]= new Option(dico1_donnees[inc]);
						}
					}
					else 		//si l'ordre est décroissant
					{
					dico1_donnees.sort();
					dico1_donnees.reverse();
					for (i=0; i<nbrvar*2 ; i=i+2)
						{
						inc=i/2;

						document.form_relation.elements[i].options[0]= new Option(dico1_donnees[inc]);
						}
					}
			}	
			if (classement==1)		//si le classement est par date
			{
				if (ordre=="croissant")
				{
					if (d_date_reverse==true)		//si le dico est en ordre inverse, alors le remettre à l'endroit
					{
						dico1_date.reverse();
						d_date_reverse=false;
					}   
				for (i=0; i<nbrvar*2 ; i=i+2)
					{
					inc=i/2;
					document.form_relation.elements[i].options[0]= new Option(dico1_date[inc]);
					}
				}
				else
				{
					if (d_date_reverse==false)
					{
					dico1_date.reverse();
					d_date_reverse=true;
					}
				for (i=0; i<nbrvar*2 ; i=i+2)
					{
					inc=i/2;
					document.form_relation.elements[i].options[0]= new Option(dico1_date[inc]);
					}
				}
			}
			
			//ce tour ci va servir à réactualisé les valeurs du dico2
			for (i=0; i<nbrvar*2 ; i=i+2)	//pour chaque association
				{
				inc=i/2;
				for (inc2=0; inc2<=nbrvar2; inc2=inc2+1)	//pour chaque valeur du dico2 dans une association
					{

					if (document.form_relation.elements[i+1].options[inc2].value==lieur[document.form_relation.elements[i].value])
						{
						document.form_relation.elements[i+1].options[inc2].selected=true;
						}
					else
						{
						document.form_relation.elements[i+1].options[inc2].selected=false;
						}
					}
				}
}

  				function nbr_result(){
			 //on récupere la valeur de début et la valeur de fin
			var valDebut = document.limit_result.valrech1.value;
			var valFin = document.limit_result.valrech2.value;
			var interval = valFin-valDebut+1;			//correspond à l'interval du menu classement utilisateur
			var nbrvar= document.form_relation.nbrvar.value;	//vaut le nombre de div visible ou non
			

				
			//on cache tout puis on montre juste ce qu'on veut voir.

			
			//pour cacher des données
			for (i=0; i<nbrvar; i++)
				{
				cacher_id("div"+i);
				}

			

			for (i=valDebut-1; i<valFin; i++)
			{
				montrer_id("div"+i);

			}

}

				
			function init_page_reorg(){
			nbrvar= document.form_relation.nbrvar.value;
		 	for (i=0; i<nbrvar*2 ; i=i+2)
					{
					inc=i/2;
					dico1_date[inc]= new String;
					dico1_date[inc]=document.form_relation.elements[i].value;
					}

		}



			function typ_result(){
			//Cette fonction permet de n'afficher les résultats qui sont associé à une entré précise dans la page update_dico.php				
			var valeur= document.form_asso.asso.value;
			
			for (i=1; i<nbrvar*2 ; i=i+2){
			inc= (i-1)/2;
			if (document.form_relation.elements[i].value==valeur){
			tabTyp[inc]=true;
			}
			else if (document.form_asso.asso.value=="tout"){
			tabTyp[inc]=true;
			}
			else{
			tabTyp[inc]=false;
			}
			}

}

			function update_dico_result(){
				
				typ_result();

			 //on récupere la valeur de début et la valeur de fin
			var valDebut = document.limit_result.valrech1.value;
			var valFin = document.limit_result.valrech2.value;
			var interval = valFin-valDebut+1;			//correspond à l'interval du menu classement utilisateur
			var nbrvar= document.form_relation.nbrvar.value;	//vaut le nombre de div visible ou non
			var nbrTrue= 0; //nombre de valeur vrai renvoyé par typ_result
			var inc2=0; //s' incrémente a chaqye tabTyp == true 
			//on va d'abord cherché le nombre de valeur vrai renvoyé par typ_result, a savoir que seul ces valeurs nous interressent
			for (i=0; i<nbrvar; i++){
				if (tabTyp[i]==true){
					nbrTrue++;
					}
				}
			
			for (i=0; i<nbrvar*2;i=i+2){
				inc=i/2;
				cacher_id("div"+inc);
				}
			
			for (i=0; i<nbrvar*2 ; i=i+2){
				inc=i/2;

				var nbrTry=nbrTrue;
//				while (nbrTry>0){
					if (tabTyp[inc]==true){
						inc2++;
						if (inc2>=valDebut && inc2<=valFin){
							montrer_id("div"+inc);
							}
						}
						nbrTry--;
						
//					}
				}
				

}


			function rep_dico_javascript(){			//en réalité, ce code n'est pas utilisé pour l'instant

var xhr_object = null; 
	 
	if(window.XMLHttpRequest){ // Firefox 
	   xhr_object = new XMLHttpRequest();
	   } 
	else if(window.ActiveXObject){ // Internet Explorer 
	   xhr_object = new ActiveXObject("Microsoft.XMLHTTP");
		alert ("Attention, votre navigateur web est Internet explorer, ce logiciel n'est pas aux normes et je ne peux garantir un fonctionnement correct. Je vous invite à utiliser Firefox, plus sécurisé et respectueux des normes");
	   } 
	else { // XMLHttpRequest non supporté par le navigateur 
	   alert("Votre navigateur ne supporte pas les objets XMLHTTPRequest...Je vous invite à installer Firefox"); 
	   return; 
	}
	xhr_object.open("GET", "test.php", true); 


	   		alert(xhr_object.responseText);
		   
}


		function actu_question_reponse(){		
		var dico1=document.liaison.dictionnaire1.value;
		var dico2=document.liaison.dictionnaire2.value;
		var question= "Quel est le "+dico2+" de $"+dico1+".";
		var reponse= "Le "+dico2+" de $"+dico1+" est %réponse."
		document.liaison.question.value=question;
		document.liaison.phrase_reponse.value=reponse;
}

