function XHRConnection(pdebug){var conn=false;var debug=(pdebug==true||pdebug==false)?pdebug:false;var datas=new String();var areaId=new String();var xmlObj;var xmlLoad;this.texte_renvoye="";try{conn=new XMLHttpRequest();}
catch(error){if(debug){alert('Erreur lors de la tentative de cr‚ation de l\'objet \nnew XMLHttpRequest()\n\n'+error);}
try{conn=new ActiveXObject("Microsoft.XMLHTTP");}
catch(error){if(debug){alert('Erreur lors de la tentative de cr‚ation de l\'objet \nnew ActiveXObject("Microsoft.XMLHTTP")\n\n'+error);}
try{conn=new ActiveXObject("Msxml2.XMLHTTP");}
catch(error){if(debug){alert('Erreur lors de la tentative de cr‚ation de l\'objet \nnew ActiveXObject("Msxml2.XMLHTTP")\n\n'+error);}
conn=false;}}}
this.setDebugOff=function(){debug=false;};this.setDebugOn=function(){debug=true;};this.resetData=function(){datas=new String();datas='';};this.appendData=function(pfield,pvalue){datas+=(datas.length==0)?pfield+"="+escape(pvalue):"&"+pfield+"="+escape(pvalue);};this.setRefreshArea=function(id){areaId=id;};this.createXMLObject=function(){try{xmlDoc=document.implementation.createDocument("","",null);xmlLoad='onload';}
catch(error){try{xmlDoc=new ActiveXObject("Microsoft.XMLDOM");xmlLoad='onreadystatechange ';}
catch(error){if(debug){alert('Erreur lors de la tentative de cr‚ation de l\'objet XML\n\n');}
return false;}}
return xmlDoc;}
this.setXMLObject=function(obj){if(obj==undefined){if(debug){alert('Paramètre manquant lors de l\'appel de la méthode setXMLObject');}
return false;}
try{xmlObj=obj;}
catch(error){if(debug){alert('Erreur lors de l\'affectation de l\'objet XML dans la méthode setXMLObject');}}}
this.loadXML=function(xml,callBack){if(!conn) return false;if(xmlObj&&xml){if(typeof callBack=="function"){if(xmlLoad=='onload'){xmlObj.onload=callBack;}
else{xmlObj.onreadystatechange=function(){if(xmlObj.readyState==4) callBack()}}}
xmlObj.load(xml);return;}}
this.sendAndLoad=function(Url,httpMode,callBack,callNext,asynch){if(asynch==1){asynchrone=false;}else{asynchrone=true;}
httpMode=httpMode.toUpperCase();conn.onreadystatechange=function(){if(conn.readyState==4&&conn.status==200){if(typeof callBack=="function"){callBack(conn);}
if(areaId.length>0){try{document.getElementById(areaId).innerHTML=conn.responseText;}
catch(error){if(debug){alert('Echec,'+areaId+' n\'est pas un objet valide');}}}
else{texte_renvoye=conn.responseText;}
if(typeof callNext=="function"){callNext(conn);}
return;}};switch(httpMode){case "GET":
try{Url=(datas.length>0)?Url+"?"+datas:Url;conn.open("GET",Url,asynchrone);conn.send(null);}
catch(error){if(debug){alert('Echec lors de la transaction avec '+Url+' via la méthode GET');}
return false;}
break;case "POST":
try{conn.open("POST",Url,asynchrone);conn.setRequestHeader("Content-Type","application/x-www-form-urlencoded");conn.send(datas);}
catch(error){if(debug){alert('Echec lors de la transaction avec '+Url+' via la méthode POST');}
return false;}
break;default:
return false;break;}
return true;};return this;}
function getElementsByTagNames(list,obj){if(!obj) var obj=document;var tagNames=list.split(',');var resultArray=new Array();for(var i=0;i<tagNames.length;i++){var tags=obj.getElementsByTagName(tagNames[i]);for(var j=0;j<tags.length;j++){resultArray.push(tags[j]);}}
var testNode=resultArray[0];if(!testNode) return [];if(testNode.sourceIndex){resultArray.sort(function(a,b){return a.sourceIndex-b.sourceIndex;});}
else if(testNode.compareDocumentPosition){resultArray.sort(function(a,b){return 3-(a.compareDocumentPosition(b)&6);});}
return resultArray;}
function LoadAndSave(nom_div,url,id_form,est_div){i=0;var XHR=new XHRConnection();XHR.appendData('demande_ajax',1);if(id_form!=""){XHR.appendData('send_ajax',1);if(est_div==1){ladiv=document.getElementById(id_form);tab_elem=getElementsByTagNames('input,select,textarea',ladiv);for(i=0;i<tab_elem.length;i++){name=tab_elem[i].name;if(tab_elem[i].type=='radio'&&tab_elem[i].checked==true){XHR.appendData(name,tab_elem[i].value);}
if(tab_elem[i].type=='checkbox'&&tab_elem[i].checked==true){XHR.appendData(name,tab_elem[i].value);}
if(tab_elem[i].type!='radio'&&tab_elem[i].type!='checkbox'){XHR.appendData(name,tab_elem[i].value);}}}
else{nb=document.getElementById(id_form).length;for(i=0;i<nb;i++){name=document.getElementById(id_form).elements[i].name;if(document.getElementById(id_form).elements[i].type=='radio'&&document.getElementById(id_form).elements[i].checked==true){XHR.appendData(name,document.getElementById(id_form).elements[i].value);}
if(document.getElementById(id_form).elements[i].type=='checkbox'&&document.getElementById(id_form).elements[i].checked==true){XHR.appendData(name,document.getElementById(id_form).elements[i].value);}
if(document.getElementById(id_form).elements[i].type!='radio'&&document.getElementById(id_form).elements[i].type!='checkbox'){XHR.appendData(name,document.getElementById(id_form).elements[i].value);}}}}
if(nom_div!="")XHR.setRefreshArea(nom_div);XHR.sendAndLoad(url,"POST");}
