
  function getHTTPObject() {
    if( typeof XMLHttpRequest != 'undefined' ) {
      return new XMLHttpRequest();
    }
    try {
      return new ActiveXObject("Msxml2.XMLHTTP");
    } catch (e) {
      try {
        return new ActiveXObject("Microsoft.XMLHTTP");
      } catch (e) { }
    }
    return false;
  }

  ajaxArray = new Array();
  
  function getAjaxIndex() {
    var index = 0; 
    // Find an empty slot in the AJAX array 
    while( index < 3 ) {
      if( !ajaxArray[index] || ( ajaxArray[index].readyState == 4 && ajaxArray[index].status == 200 ) ) {
        ajaxArray[index] = getHTTPObject();
        break;
      } else index++;
    }
    
    if( index < 3 ) return index;
    else return false;
  }
  
  function AjaxCall( url, value, elem_id ) {
    var index = getAjaxIndex();
    
    if( index === false ) return false;
    
    url = url + "?value=" + value;
    
    if( value.length > 0 ) {
      ajaxArray[index].open("GET", url, true);
      ajaxArray[index].onreadystatechange = function() {
        if( ajaxArray[index].readyState == 4 ) {
          if( ajaxArray[index].status == 200 ) {
            var temp = ajaxArray[index].responseText;
            
            document.getElementById( elem_id ).innerHTML = temp;
            ajaxArray[index] = null;
          }
        }
      }
      ajaxArray[index].send(null);
    }
    
    return true;
  }
