
var xmlHTTP;

function GetXmlHttpObject(handler)
{
    var objXmlHttp=null
 
    if (navigator.userAgent.indexOf("Opera")>=0)
    {
        //alert("Opera not supported...")
        return;
    }
    if (navigator.userAgent.indexOf("MSIE")>=0)
    {
        var strName="Msxml2.XMLHTTP"
        if (navigator.appVersion.indexOf("MSIE 5.5")>=0)
        {
            strName="Microsoft.XMLHTTP"
        }
        try
        {
            objXmlHttp=new ActiveXObject(strName)
            objXmlHttp.onreadystatechange=handler
            return objXmlHttp
        }
        catch(e)
        {
            alert("Error. Scripting for ActiveX might be disabled")
            return
        }
    }
    if (navigator.userAgent.indexOf("Mozilla")>=0)
    {
        objXmlHttp=new XMLHttpRequest()
        objXmlHttp.onload=handler
        objXmlHttp.onerror=handler
        return objXmlHttp
    }
}


function StateChanged()
{
	if (xmlHTTP != undefined) 
	{
	    if (xmlHTTP.readyState==4 || xmlHTTP.readyState=="complete") 
	    {
			TigerReg.PostcodeField.UpdateAddress(xmlHTTP.responseText);
	    }
	}
}
 
function StateChanged_Old()
{
	if (xmlHTTP != undefined) {
	    if (xmlHTTP.readyState==4 || xmlHTTP.readyState=="complete")
	    {
	    	if (TigerReg.AddressDataTouched) return false;
	        var aResponse=xmlHTTP.responseText.split("|");
	 		if (aResponse[1]==undefined) aResponse[1]="";
	 		if (aResponse[2]==undefined) aResponse[2]="";
	 		if (aResponse[3]==undefined) aResponse[3]="";
	 		if (aResponse[4]==undefined) aResponse[4]="";
	 		if (aResponse[5]==undefined) aResponse[5]="";
	        TigerReg.Address1Field.SetValue(aResponse[1]);
	        TigerReg.Address1Field.LastVal=aResponse[1];
	        TigerReg.Address2Field.SetValue(aResponse[2]);
	        TigerReg.Address2Field.LastVal=aResponse[2];
	        TigerReg.TownField.SetValue(aResponse[3]);
	        TigerReg.TownField.LastVal=aResponse[3];
	        TigerReg.CountyField.SetValue(aResponse[4]);
	        TigerReg.CountyField.LastVal=aResponse[4];
	        if (aResponse[5].length>0) {
	        	TigerReg.PostcodeField.SetValue(aResponse[5]);
	        	TigerReg.PostcodeField.LastVal=aResponse[5];
	        	TigerReg.PostcodeField.ShowHouseNumber();
	        	if (aResponse[5] != TigerReg.PostcodeField.LastFetchedPostcode) TigerReg.Form[TigerReg.PostcodeField.HouseNumberFieldName].value="";
	        } else {
	        	TigerReg.PostcodeField.HideHouseNumber();
	        }
		    TigerReg.PostcodeField.LastFetchedPostcode=aResponse[5];
	    }
	}
}
 

