function ajaxURL(){this.URL="";this.parameters="";this.callBack=null;this.elementHTML=null;this.method="POST";this.debug=false;this.frm=null}ajaxURL.prototype.setParameter=function(a,b){a=a.toLowerCase();switch(a){case"post":case"parameters":if(ajaxIsArray(b)){this.parameters=ajaxSerialize(b)}else{if(ajaxIsObject(b)){this.parameters=ajaxSerialize(b)}else{this.parameters=b}}break;case"method":if(ajaxIsString(b)){b=ajaxTrim(b).toLowerCase()}switch(b){case"get":b="GET";break;default:b="POST";break}this.method=b;break;case"callback":this.callBack=b;break;case"elementhtml":case"element":this.elementHTML=b;break;case"debug":if(!ajaxIsBoolean(b)){this.debug=false}else{this.debug=b}break;case"frm":case"form":this.frm=b;break}};ajaxURL.prototype.submitForm=function(c){var a=this;var b=ajaxFormSerialize(c);if(c.method){a.setParameter("method",c.method)}a.setParameter("parameters",b);if(c.action){return a.getURL(c.action)}else{return"Le formulaire pr�cis� doit poss�der une propri�t� 'action' pr�cisant l'URL a charger"}};ajaxURL.prototype.getURL=function(sURL){var ajaxPage=this;if(sURL==undefined||sURL==""){return"Besoin d'une URL"}if(sURL.substr(sURL.length-3,3)!=".js"){sURL=sURL+"?rnd="+Math.floor(Math.random()*9999999)+1}var ajax_object=null;if(window.XMLHttpRequest){ajax_object=new XMLHttpRequest()}else{if(window.ActiveXObject){ajax_object=new ActiveXObject("Microsoft.XMLHTTP")}else{alert("Votre navigateur ne supporte pas AJAX");return}}ajax_object.open(ajaxPage.method,sURL,true);ajax_object.setRequestHeader("Content-Type","application/x-www-form-urlencoded");ajax_object.send(ajaxPage.parameters);ajax_object.onreadystatechange=function(){switch(ajax_object.readyState){case 0:break;case 1:break;case 2:break;case 3:break;case 4:if(ajaxPage.debug==true){alert(ajax_object.responseText)}var formatH=ajax_object.getResponseHeader("format");if(ajaxIsString(formatH)){formatH=formatH.toLowerCase()}var aParameters=ajaxQuery2array(ajaxPage.parameters);var headers=new Array();headers=ajax_object.getAllResponseHeaders().split("\n");var tab_headers=new Array();for(var i=0;i<headers.length;i++){var temp=headers[i].split(":");tab_headers[temp[0]]=ajaxTrim(temp[1])}switch(formatH){case"json":var Reponse=new Array();if(ajax_object.responseText.indexOf("{")!=-1){Reponse=eval("("+ajax_object.responseText+")")}Reponse.podz=new Array();Reponse.podz["param"]=ajaxPage.parameters;Reponse.podz["fnc"]=ajaxPage.callBack;Reponse.podz["element"]=ajaxPage.elementHTML;Reponse.podz["reponse"]=ajax_object.responseText;if(ajaxPage.callBack!=null&&ajaxPage.callBack!=""&&!ajaxIsUndefined(ajaxPage.callBack)){eval(ajaxPage.callBack+"(Reponse,aParameters);")}break;case"js":case"javascript":break;default:var Reponse=ajax_object.responseText;if(ajaxPage.elementHTML!=null&&ajaxPage.elementHTML!=""&&!ajaxIsUndefined(ajaxPage.elementHTML)){if(ajaxIsString(ajaxPage.elementHTML)){document.getElementById(ajaxPage.elementHTML).innerHTML=ajax_object.responseText}else{ajaxPage.elementHTML.innerHTML=ajax_object.responseText}}if(ajaxPage.callBack!=null&&ajaxPage.callBack!=""&&!ajaxIsUndefined(ajaxPage.callBack)){eval(ajaxPage.callBack+"(Reponse,aParameters,tab_headers);")}break}break}}};function ajaxTrim(a){if(typeof a=="string"){return a.replace(/^\s*|\s*$/gi,"")}else{return a}}function ajaxIsArray(b){return ajaxIsObject(b)&&b.constructor==Array}function ajaxIsString(b){return typeof b=="string"}function ajaxIsBoolean(b){return typeof b=="boolean"}function ajaxIsFunction(b){return typeof b=="function"}function ajaxIsObject(b){return(b&&typeof b=="object")||ajaxIsFunction(b)}function ajaxSerialize(b){var c="";for(key in b){if(typeof b[key]!="function"){if(c!=""){c+="&"}c+=key+"="+encodeURIComponent(b[key])}}return c}function ajaxIsUndefined(b){return typeof b=="undefined"}function ajaxQuery2array(a){var b,e,d,c="";b=new Array();e=new Array();d=new Array();if(a.indexOf("?")==0){a=a.substring(1)}if(a.indexOf("&")>=0){e=a.split("&")}else{e[0]=a}for(qqq=0;qqq<e.length;qqq++){if(e[qqq].indexOf("=")>-1){d=e[qqq].split("=");c=d.slice(1).join("=");b[d[0]]=unescape(c)}else{if(e[qqq]!=""){b[e[qqq]]=true}}}return b}function ajaxFormSerialize(c){var b="";for(var a=0;a<c.length;++a){if(c.elements[a].type!="button"){if(b!=""){b+="&"}b+=c.elements[a].name+"="+encodeURIComponent(c.elements[a].value)}}return b};
