var url = "inc-getCityState.php?param="; // The server-side script

function handleHttpResponse() {
//alert("handleHttpResonpse");
  if (http.readyState == 4) {
  //alert("http.readyState==4");
    if (http.responseText.indexOf('invalid') == -1) {
      // Use the XML DOM to unpack the city and state data 
      var xmlDocument = http.responseXML; 
	  //alert("xmlDocument="+xmlDocument);
      var city_name = xmlDocument.getElementsByTagName('city_name').item(0).firstChild.data;
      var cityId = xmlDocument.getElementsByTagName('cityId').item(0).firstChild.data;
      var state = xmlDocument.getElementsByTagName('state').item(0).firstChild.data;
      document.getElementById('city_name').value = city_name;
      document.getElementById('cityId').value = cityId;
      document.getElementById('state').value = state;
      isWorking = false;
    }
  }
}
var isWorking = false;

function updateCityState() {
  //alert("updateCityState");
  if (!isWorking && http) {
  //alert("isWorking");
    var zipValue = document.getElementById("zip").value;
	//alert("zipValue="+zipValue);
	//alert("url="+url);
    http.open("GET", url + escape(zipValue), true);
    http.onreadystatechange = handleHttpResponse;
    isWorking = true;
    http.send(null);
  }
}

function getHTTPObject() {
  var xmlhttp;
  /*@cc_on
  @if (@_jscript_version >= 5)
    try {
      xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
    } catch (e) {
      try {
        xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
      } catch (E) {
        xmlhttp = false;
      }
    }
  @else
  xmlhttp = false;
  @end @*/
  if (!xmlhttp && typeof XMLHttpRequest != 'undefined') {
    try {
      xmlhttp = new XMLHttpRequest();
	  xmlhttp.overrideMimeType("text/xml"); 
    } catch (e) {
      xmlhttp = false;
    }
  }
  return xmlhttp;
}
var http = getHTTPObject(); // We create the HTTP Object
