// ------------------------------------------------------------------------------------------ // Déclaration des variables // ------------------------------------------------------------------------------------------ var liveSearchReq = false; var t = null; var mess = null; var liveSearchLast = ""; var isIE = false; var formulaire; var champ; var typeDeRecherche; var divDeDestination; var recherche; var messageAttente; var messageEchec; var messageReussite; var t_rafraichissement; var debug = false; //active le debuggage des fonctions // ------------------------------ // Juste pour IE // ------------------------------ if (window.XMLHttpRequest) { liveSearchReq = new XMLHttpRequest(); } //------------------------------------------------------------------------- //Cette fonction ne fonctionne pour l'instant qu'avec des champs de formulaire de type checkbox,text et hidden function postMisEnChaineClefValeur(formulaire) { chaine = ""; for(i=0; i < document.forms[formulaire].elements.length; i++) { if(document.forms[formulaire].elements[i].type == "checkbox") { chaine += document.forms[formulaire].elements[i].name + '='; if(document.forms[formulaire].elements[i].checked == true) { chaine += '1&'; } else chaine += '0&'; } else if((document.forms[formulaire].elements[i].type == "hidden") || (document.forms[formulaire].elements[i].type == "text")) { chaine += document.forms[formulaire].elements[i].name + '=' + document.forms[formulaire].elements[i].value + '&'; } } if(chaine.length != 0) { chaine += "PHPSESSID=1e80e17d5ae8d8e154f12838bceddea2"; //chaine = chaine.substring(0,chaine.length-1); } return chaine; }//postMisEnChaineClefValeur //--------------------------------------------------------------------------- // ------------------------------------------------------------------------------------------ // Temps de réponse entre l'évènement et l'action (en milliseconde) // ------------------------------------------------------------------------------------------ function liveSearchStart(formDemandeur,champDemandeur,zone,typeRecherche,varRecherche,divDestination,messageAtt,messageEch,messageReu) { formulaire = formDemandeur; champ = champDemandeur; recherche = varRecherche; typeDeRecherche = typeRecherche; divDeDestination = divDestination; messageAttente = messageAtt; messageEchec = messageEch; messageReussite = messageReu; if(debug == true) { alert('formulaire : ' + formDemandeur + '\nchamp : ' + champ + '\nrecherche : ' + recherche + '\ntypeDeRecherche : ' + typeDeRecherche + '\ndivDeDestination : ' + divDeDestination + '\nmessageAttente : ' + messageAttente + '\nmessageEchec : ' + messageEchec + '\nmessageReussite : ' + messageReussite); } //Affichage dans le div des message d'attente du message d'attente a l'utilisateur if(messageAttente != "") { document.getElementById('messageNotation').innerHTML = messageAttente; afficherMessageInformation(); } document.forms[formulaire].elements[champ].value=zone; if (t) { window.clearTimeout(t); } t = window.setTimeout("liveSearchDoSearch()",200); } // ------------------------------------------------------------------------------------------ // Recherche avec Ajax // ------------------------------------------------------------------------------------------ function liveSearchDoSearch() { if (typeof liveSearchRoot == "undefined") { liveSearchRoot = ""; } if (typeof liveSearchRootSubDir == "undefined") { liveSearchRootSubDir = ""; } if (typeof liveSearchParams == "undefined") { liveSearchParams = ""; } if (liveSearchLast != document.forms[formulaire].elements[champ].value) { if (liveSearchReq && liveSearchReq.readyState < 4) { liveSearchReq.abort(); } if (window.XMLHttpRequest) { // branch for IE/Windows ActiveX version } else if (window.ActiveXObject) { liveSearchReq = new ActiveXObject("Microsoft.XMLHTTP"); } liveSearchReq.onreadystatechange= liveSearchProcessReqChange; liveSearchReq.open("POST", document.forms[formulaire].elements[champ].value); liveSearchReq.setRequestHeader('Content-Type','application/x-www-form-urlencoded'); //alert('recherche : ' + recherche ); liveSearchReq.send(recherche); liveSearchLast = document.forms[formulaire].elements[champ].value; } } // ------------------------------------------------------------------------------------------ // Affichage des résultats dans la zone idouane // ------------------------------------------------------------------------------------------ function liveSearchProcessReqChange() { if (liveSearchReq.readyState == 4) { if(liveSearchReq.responseText == "true") { document.getElementById('messageNotation').innerHTML = messageReussite; } else { document.getElementById('messageNotation').innerHTML = messageEchec; } cacherMessageInformation(); } }