// asynchronous call for rss feeds
var xmlreq;
var isIE = ((window.ActiveXObject) ? true : false);
var region_name = '';
var region_id   = '';

function getXML(url) {
  if(window.XMLHttpRequest){
    xmlreq = new XMLHttpRequest();

    window.setTimeout(function() {
      if (xmlreq.readyState < 4) {
        xmlreq.abort();
      }
    },10000); // abort after 10 sec

    try{
      xmlreq.onreadystatechange = xmlResponseHandler;
      xmlreq.open("GET", url, true);
      xmlreq.send(null);
    } catch(e){
      xmlreq.abort();
      return;
    }
  } else if(window.ActiveXObject){
    isIE = true;
    try{
      xmlreq = new ActiveXObject("Microsoft.XMLHTTP");
    } catch(e){
      xmlreq.abort();
      return;
    }
    if(xmlreq){
      window.setTimeout(function() {
        if (xmlreq.readyState < 4) {
          xmlreq.abort();
        }
      },10000); // abort after 10 sec

      try{
        xmlreq.onreadystatechange = xmlResponseHandler;
        xmlreq.open("GET", url, true);
        xmlreq.send();
      } catch(e){
        xmlreq.abort();
        return;
      }
    }
  }
}

function xmlResponseHandler() {
  if (xmlreq && xmlreq.readyState == 4) {
    if (xmlreq.responseXML) {
      if (xmlreq.responseXML.getElementsByTagName("region").length>0) {
        buildRegionsSelection(xmlreq.responseXML.getElementsByTagName("region"));
      }
    }

  }

}


function buildRegionsSelection(regions) {
  document.getElementById('regionsselect').options.length = 0;
  document.getElementById('regionsselect').options[0] = new Option(region_name,region_id);
  document.getElementById('regionsselect').options[1] = new Option('Any','');
  for(var i=0; i<regions.length; i++){
    var id = regions[i].getAttribute('rc')+'.'+regions[i].getAttribute('aim1');
    var name = regions[i].getAttribute('fullname');
    document.getElementById('regionsselect').options[i+2] = new Option(name,id);
  }
  document.getElementById('regionfield').style.visibility = 'visible';
}

