function fAJAXRequest(sTargetID,sURL,sPost,sWait,sError)
{var e=document.getElementById(sTargetID);if(e)
{if(sWait!="")
e.innerHTML=sWait;new oAJAXRequest(e,sURL,sPost,sError);}}
function fAJAXStateChange(hAJAXRequest)
{if(hAJAXRequest&&hAJAXRequest.mRequest&&hAJAXRequest.mRequest.readyState==4)
{var s=hAJAXRequest.mRequest.responseText;if(hAJAXRequest.mRequest.status=="200"&&s.substr(0,3)=="200")
{hAJAXRequest.mhTarget.innerHTML=s.substring(4);}
else
if(hAJAXRequest.msError!="")
{hAJAXRequest.mhTarget.innerHTML=hAJAXRequest.msError;}}}
function oAJAXRequest(hTarget,sURL,sPost,sError)
{var me=this;this.mRequest=null;this.mhTarget=hTarget;this.msError=sError;if(window.XMLHttpRequest)
{this.mRequest=new XMLHttpRequest();}
else
if(window.ActiveXObject)
{this.mRequest=new ActiveXObject("Microsoft.XMLHTTP");}
if(this.mRequest)
{if(sPost!="")
{this.mRequest.open('POST',sURL,true);this.mRequest.setRequestHeader('Content-type','application/x-www-form-urlencoded');this.mRequest.onreadystatechange=function(){fAJAXStateChange(me);};this.mRequest.send(sPost);}
else
{this.mRequest.open('GET',sURL,true);this.mRequest.onreadystatechange=function(){fAJAXStateChange(me);};this.mRequest.send(null);}}}