var req;
var fld;

function loadXMLDoc(url) 
{
    // branch for native XMLHttpRequest object
    if (window.XMLHttpRequest) {
        req = new XMLHttpRequest();
        req.onreadystatechange = processReqChange;
        req.open("GET", url, true);
        req.send(null);
    // branch for IE/Windows ActiveX version
    } else if (window.ActiveXObject) {
        req = new ActiveXObject("Microsoft.XMLHTTP");
        if (req) {
            req.onreadystatechange = processReqChange;
            req.open("GET", url, true);
            req.send();
        }
    }
}

function processReqChange() 
{
    // only if req shows "complete"
    if (req.readyState == 4) {
        // only if "OK"
        if (req.status == 200) {
         response  = req.responseXML.documentElement;
         method    = response.getElementsByTagName('method')[0].firstChild.data;
         result    = response.getElementsByTagName('result')[0].firstChild.data;
         eval(method + '(\'\', result)');
        } else {
            alert("There was a problem retrieving the XML data:\n" + req.statusText);
        }
    }
}

function show_city(input, response, outfield)
{
  var city = document.getElementById(fld);
  var city_input = document.getElementById('city_input');
  if (response != ''){ 
    // Response mode
    if(city) {
      city.innerHTML = response;
      city_input.value = response;
      if (response == 'Ugyldig'){
        //alert("Postnummeret du tastet inn er ugyldig, vennligst oppgi et gyldig postnummer"); 
        city.innerHTML = '';
        city_input.value = '';
      }
    }
  }
  else {
    // Input mode
   fld = outfield; 
   url  =  'http://[:setup.url:]/wsp/[:setup.inst:]/frontend.cgi?func=frontend.show&query=show_city&template=city_xml&content_type=text/xml&func_id=' + input;
   //alert(url);
   loadXMLDoc(url);
  }

}


