var WMCendrisAX={majorversion:function(){return 1},minorversion:function(){return 6},buildversion:function(){return 5},version:function(){return this.majorversion()+"."+this.minorversion()+"."+this.buildversion()},_jQuery:1.2,_jQueryVersion:function(){return parseFloat(this._jQuery)},initialize:function(C,G,B,E){this._initialized=true;this.setSuccess(true);this._axAddress.ax_zip=document.getElementById("ax_zip");this._axAddress.ax_zip_n=document.getElementById("ax_zip_n");this._axAddress.ax_zip_s=document.getElementById("ax_zip_s");this._axAddress.ax_hnr=document.getElementById("ax_hnr");this._axAddress.ax_str=document.getElementById("ax_str");this._axAddress.ax_cty=document.getElementById("ax_cty");this._axAddress.ax_net=document.getElementById("ax_net");try{if((typeof jQuery=="undefined")||(parseFloat(jQuery.fn.jquery.split(".")[0]+"."+jQuery.fn.jquery.split(".")[1])<this._jQueryVersion())){throw ("jQueryException")}Function.prototype.bind=function(I){var H=this;return function(){H.apply(I,arguments)}};if(!window.XMLHttpRequest){window.XMLHttpRequest=function(){return new ActiveXObject("Microsoft.XMLHTTP")}}this._request=new XMLHttpRequest();if(this._request===null){throw ("XMLHttpRequestException")}if(C&&C.toString().length>0){var A=window.document.location.href;if(A.toString().indexOf("https")!==0){C=C.replace("https","http")}this._url=C}if(G&&G.toString().length>0){this._method=G}if(B&&B.toString().length>0){this._username=B}if(E&&E.toString().length>0){this._password=E}}catch(F){var D="";if(F=="jQueryException"){D="WMCendrisAX requires the jQuery JavaScript library >= "+this._jQuery}else{if(F=="XMLHttpRequestException"){D="Could not create XMLHttpRequest object"}else{D=F.message}}this.setSuccess(false,D);this._alerter("WMCAX.initialize:: Initialization problem ['"+D+"']")}},_initialized:false,_success:false,_busy:false,setSuccess:function(B,A){this._alerter("WMCAX.setSuccess:: state ['"+B+"'], origin ['"+A+"']");this._success=B;if(!B){this.disableElements(false,["ax_zip","ax_zip_n","ax_zip_s","ax_hnr","ax_net"]);this.displayElements(true,"INPUT",["ax_button_getaddress"])}else{this.disableElements(true,["ax_str","ax_cty"]);this.displayElements(false,"INPUT",["ax_button_getaddress"])}},setBusy:function(B,A){this._alerter("WMCAX.setBusy:: state ['"+B+"'], origin ['"+A+"']");this._busy=B},getSuccess:function(){return this._success},getBusy:function(){return this._busy},debug:false,_username:"",_password:"",_url:"http://www.dataonline.nl/adresxpress/server/adresxpress_server.php",_ax_httprequeststatus:false,_method:"POST",_request:null,_requestURL:"",_requestXML:"",_responseText:null,_responseXML:null,_axAddress:{ax_zip:null,ax_zip_n:null,ax_zip_s:null,ax_hnr:null,ax_str:null,ax_cty:null,ax_net:null,blnSingleZip:true},_caxAddress:{ax_zip:"",ax_hnr:"",ax_str:"",ax_cty:"",ax_net:"",ax_status:0},_alerter:function(A){if(this.debug){alert(A)}},novalidHnrZipTitle:"Attentie",novalidHnrZipMessage:"De ingevoerde combinatie van 'Huisnummer' en 'Postcode' is onbekend. Controleer uw gegevens of vul deze zelf verder aan.",bind:function(B,A){return function(){B.apply(A,arguments)}},_DOMParser:function(){var A=0;_DOMParser.prototype.parseFromString=function(D,E){if(typeof ActiveXObject!="undefined"){var C=new ActiveXObject("MSXML.DomDocument");C.loadXML(D);A=parseInt(C.parseError.errorCode,10);if(A!==0){this._alerter("WMCAX._DOMParser:: No valid XML ['"+C.parseError.errorCode+": "+C.parseError.reason+" "+C.parseError.srcText+"']")}return(A===0)?C:null}else{if(typeof XMLHttpRequest!="undefined"){var B=new XMLHttpRequest();B.open("GET","data:"+(E||"application/xml")+";charset=utf-8,"+encodeURIComponent(D),false);if(B.overrideMimeType){B.overrideMimeType(E)}B.send(null);A=parseInt(B.responseXML.parseError.errorCode,10);if(A!==0){this._alerter("WMCAX._DOMParser:: No valid XML ['"+B.responseXML.parseError.errorCode+": "+B.responseXML.parseError.reason+" "+B.responseXML.parseError.srcText+"']")}return(A===0)?B.responseXML:null}else{this._alerter("WMCAX._DOMParser:: Can't find a valid xml parser");return null}}}},_getXMLDocument:function(){try{var A=this._responseText;var C=this._responseXML;if(typeof DOMParser=="undefined"){DOMParser=this._DOMParser}if(!C||C.childNodes.length===0){C=(new DOMParser()).parseFromString(A,"application/xml")}this._responseXML=C}catch(B){this._responseXML=null;this.setSuccess(false);this._alerter("WMCAX.getXMLDocument:: ['"+B.message+"']")}},getXMLDocument:function(){var A=0;if(typeof DOMParser=="undefined"){DOMParser=function(){};DOMParser.prototype.parseFromString=function(G,H){if(typeof ActiveXObject!="undefined"){var F=new ActiveXObject("MSXML.DomDocument");F.loadXML(G);A=parseInt(F.parseError.errorCode,10);if(A!==0){throw ("WMCAX.getXMLDocument:: No valid XML [' + doc.parseError.errorCode + ': ' + doc.parseError.reason + ' '  + doc.parseError.srcText + ']")}return(A===0)?F:null}else{if(typeof XMLHttpRequest!="undefined"){var E=new XMLHttpRequest();E.open("GET","data:"+(H||"application/xml")+";charset=utf-8,"+encodeURIComponent(G),false);if(E.overrideMimeType){E.overrideMimeType(H)}E.send(null);A=parseInt(E.responseXML.parseError.errorCode,10);if(A!==0){throw ("WMCAX.getXMLDocument:: No valid XML [' + req.responseXML.parseError.errorCode + ': ' + req.responseXML.parseError.reason + ' '  + req.responseXML.parseError.srcText + ']")}return(A===0)?E.responseXML:null}else{throw ("WMCAX.getXMLDocument:: Can't find a valid xml parser")}}}}var B=this._responseText;var D=this._responseXML;try{if(!D||D.childNodes.length===0){D=(new DOMParser()).parseFromString(B,"application/xml")}this._responseXML=D}catch(C){this._responseXML=null;this.setSuccess(false);this._alerter("WMCAX.getXMLDocument:: ['"+C.message+"']")}},createRequestInput:function(E,D){try{if(this._method.toString().toLowerCase()==="post"){var B='<?xml version="1.0"?><methodCall><methodName>adresxpress.postcode</methodName><params><param><value><struct><member><name>username</name><value><string>';B+=this._username;B+="</string></value></member><member><name>password</name><value><string>";B+=this._password;B+="</string></value></member><member><name>postcode</name><value><string>";B+=E;B+="</string></value></member><member><name>huisnummer</name><value><string>";B+=D;B+="</string></value></member></struct></value></param></params></methodCall>";this._requestXML=B;this._requestURL=this._url}else{var A=this._url+"?ax_zip="+E+"&ax_hnr="+D;this._requestURL=A}}catch(C){this.setSuccess(false)}},processRequest:function(){this._alerter("WMCAX.processRequest:: readyState: "+this._request.readyState+" , status: "+this._request.status);this._ax_httprequeststatus=((this._request.readyState==4)&&(this._request.status==200))},doXmlHttpRequest:function(){try{this._request.open(this._method,this._requestURL,false);this._request.setRequestHeader("Content-Type","text/xml");this._request.onreadystatechange=this.processRequest.bind(this);this._request.send(this._requestXML);this._responseText=this._request.responseText;this._alerter("WMCAX.doXmlHttpRequest:: _responseText: "+this._responseText);this._responseXML=this._request.responseXML;this._alerter("WMCAX.doXmlHttpRequest:: _responseXML: "+this._responseXML);this.processRequest()}catch(A){this.setSuccess(false);this._alerter("WMCAX.doXmlHttpRequest:: XMLHttpRequest object not available or illegal call ['"+A.message+"']")}},bindGetAddress:function(B,A){$(A).bind(B,function(){WMCAX.getAddress()})},disableElements:function(C,B){var A=0;var D=null;for(A=0;A<B.length;A++){this._alerter("WMCAX.disableElements:: arrElmIds[i] ['"+B[A]+"'], this._axAddress[arrElmIds[i]] ['"+this._axAddress[B[A]]+"']");D=this._axAddress[B[A]];if(D){D.readOnly=C;D.className=C?D.className+=" ax_disabled":D.className=D.className.replace(/ax_disabled/g,"")}}},displayElements:function(E,D,G){var C=0;var B=0;var F=null;var A=document.getElementsByTagName(D);for(C=0;C<A.length;C++){F=A[C];if(F){for(B=0;B<G.length;B++){if(F.className==G[B]){F.style.display=E?"":"none"}}}}},doHousenumberAddition:function(){if($("#ax_add").length>0){var A=$("#ax_add").attr("name");var C=$("#ax_add").clone(true);var B=null;$('input[type="hidden"][name="formpartcode"]').each(function(D){if($(this).attr("value")==A){B=$(this).clone(true);return false}});$("#ax_add").parent("td").parent("tr").remove();B.insertAfter($("#ax_hnr"));C.insertAfter($("#ax_hnr"));$("<span>&nbsp</span>").insertAfter($("#ax_hnr"))}},setElementsValue:function(F,E,D){var C=0;var B=0;var G=null;var A=document.getElementsByTagName(E);for(C=0;C<A.length;C++){G=A[C];if(G){for(B=0;B<D.length;B++){if((G.id.toString().toLowerCase().substring(0,3)=="ax_")&&(G.id==D[B])){G.value=F?1:0}}}}},hideCAXError:function(){$("#caxMsg").remove()},showCAXError:function(){if($("#caxMsg").length===0){var A="";A="<div id='caxMsg' class='error'>"+this.novalidHnrZipMessage+"</div>";$("#ax_hnr").parent("p").before(A);var B=$("#ax_hnr").parent("td").parent("tr").children("td").size();if($("#caxMsg").length===0){A="<tr id='caxMsg'><td colspan='"+B+"'><div class='error'>"+this.novalidHnrZipMessage+"</div></td></tr>";$("#ax_hnr").parent("td").parent("tr").before(A)}}},setAddress:function(){try{if(!this._responseXML||this._responseXML.childNodes.length===0){this.getXMLDocument()}this._alerter("WMCAX.setAddress:: responseXML "+this._responseXML);var E=[];E=this._responseXML.getElementsByTagName("methodResponse");this._alerter("WMCAX.setAddress:: methodResponses "+E);if(E.length>0){var A=0;var C=E[0].getElementsByTagName("member");for(A=0;A<C.length;A++){var H=C[A].getElementsByTagName("name")[0];var G=C[A].getElementsByTagName("value")[0];var B=H.childNodes[0].nodeValue;var D="";if(G.childNodes.length>0){if(G.childNodes[0].childNodes.length>0){D=G.childNodes[0].childNodes[0].nodeValue}}switch(B.toString().toLowerCase()){case"straatnaam":this._caxAddress.ax_str=D;break;case"huisnummer":this._caxAddress.ax_hnr=D;break;case"postcode":this._caxAddress.ax_zip=D;break;case"woonplaats":this._caxAddress.ax_cty=D;break;case"netnummer":this._caxAddress.ax_net=D;break;case"status":this._caxAddress.ax_status=D;break;default:break}}this.hideCAXError();this._alerter("WMCAX.setAddress:: ax_status"+parseInt(this._caxAddress.ax_status,10));if(parseInt(this._caxAddress.ax_status,10)===1){if(this._axAddress.blnSingleZip){this._axAddress.ax_zip.value=this._caxAddress.ax_zip}else{this._axAddress.ax_zip_n.value=this._caxAddress.ax_zip.substring(0,4);this._axAddress.ax_zip_s.value=this._caxAddress.ax_zip.substring(4,6)}this._axAddress.ax_hnr.value=this._caxAddress.ax_hnr;this._axAddress.ax_str.value=this._caxAddress.ax_str;this._axAddress.ax_cty.value=this._caxAddress.ax_cty;this.setSuccess(true)}else{this.disableElements(false,["ax_str","ax_cty"]);if((this._caxAddress.ax_hnr.toString().length>0)&&(this._caxAddress.ax_zip.toString().length>0)){this.showCAXError()}}}}catch(F){this.setSuccess(false,F.message);this._alerter("WMCAX.setAddress:: Problem to set address ['"+F.message+"']")}},getAddress:function(A){this.setBusy(true);if(this._success){try{var E=true;if(A!==null){E=!A}if(this._axAddress.ax_zip===null){this._axAddress.blnSingleZip=false}if((this._axAddress.ax_zip||(this._axAddress.ax_zip_n&&this._axAddress.ax_zip_s))&&this._axAddress.ax_hnr&&this._axAddress.ax_str&&this._axAddress.ax_cty&&this._axAddress.ax_net){var I=this._axAddress.blnSingleZip?this._axAddress.ax_zip.value.replace(" ",""):this._axAddress.ax_zip_n.value.replace(" ","")+this._axAddress.ax_zip_s.value.replace(" ","");var G=this._axAddress.ax_hnr.value.replace(" ","");var D=(I.length!==0&&G.length!==0);if(D){var J=(I.length==6);if(J){var B=/\s*\d{4}\s*[a-zA-Z]{2}\s*/;var C=B.test(I);var H=true;if(C&&H){this.createRequestInput(I,G);this.doXmlHttpRequest();this._alerter("WMCAX.getAddress:: ax_httprequeststatus: "+this._ax_httprequeststatus);if(this._ax_httprequeststatus){if(E){this.setAddress()}}}}}}}catch(F){this.setSuccess(false,F.message);this._alerter("WMCAX.getAddress:: Problem to get address ['"+F.message+"']")}}else{this._alerter("WMCAX.getAddress:: already initialized? "+this._initialized);if(!this._initialized){initialize("/SitewidePages/CendrisAX/preload.htm","GET");getAddress(A)}}this.setBusy(false)}};var WMCAX=WMCendrisAX;