
var http = createRequestObject();
var lastrequest = "";
var lastrequest_sans_tags = "";
var taglist = ",";
var searchtag = "";
var loadingid = "loading";


function createRequestObject() {
  var ro;
  var browser = navigator.appName;
  if(browser == "Microsoft Internet Explorer"){
      ro = new ActiveXObject("Microsoft.XMLHTTP");
  }else{
      ro = new XMLHttpRequest();
  }
  return ro;
}
  
function loading(onOff){
  if (onOff == 1){
    document.getElementById(loadingid).style.display = "block";    
  } else {
    document.getElementById(loadingid).style.display = "none";   
  }
} 
  
function showError(msg){
  obj = document.getElementById('error');
  if (obj == null){
    alert("id object does not exist! (showerror)");
  } else {
    obj.style.disply = "block"; obj.innerHTML = msg;
  }
}
  
function sendRequest(msg) {
  if (debug) alert(msg);
  if (http){
    if (msg.indexOf("tag=") == -1){
      lastrequest_sans_tags = msg;
    }
    lastrequest = msg;
    //alert("LastRequest: "+lastrequest);
    //alert("LastRequestSansTags: "+lastrequest_sans_tags);
    //alert("TagList: "+taglist);
    loading(1);
    http.open('get', msg);
    http.onreadystatechange = handleResponse;
    http.send(null);
  } else {
    showError('HTTP Object not created. [function:sendRequest("'+ msg +'")]');
  }
}

function handleResponse() {
  if (http){
    if(http.readyState == 4){
      var response = http.responseText;
      var update = new Array();
      if (response != ''){
        if(response.indexOf('|' != -1)) {
          update = response.split('|');
          document.getElementById(update[0]).innerHTML = update[1];
          if (update.length > 3){
            if (debug) alert("Update Lenght contains multiple IDs: "+update.length);
            document.getElementById(update[2]).innerHTML = update[3];
          }
          loading(0);
        } else {
          showError(response);
        }
      } else showError('Nothing returned!'); 
    }      
  } else showError('HTTP Object not created.');
}