// JavaScript Document
// Generic HTTP request set up
function getXMLHTTPRequest()
    {
    try
        {
        XMLHttp = new XMLHttpRequest();
        }
    catch(err1)
        {
        try
            {
            XMLHttp=new ActiveXObject("Msxml2.XMLHTTP");
            }
        catch(err2)
            {
            try
                {
                XMLHttp=new ActiveXObject("Microsoft.XMLHTTP");
                }
            catch(err3)
                {
                XMLHttp = false;
                }
            }
        }
    return XMLHttp;
    }
var http = getXMLHTTPRequest();
// Ajax routine to pass data from file
// how == some server-side script
// args == arguments to pass e.g. &file=text.txt&date=today
// where == JS routine to handle text returned
// desc == data, if any, to display in ajaxstate window
function getdata(how,args,where,desc)
  {
  try
    {
    var rand = Math.random();
    myrand = Math.floor(rand*99999999);
    var myurl = how + "?rand=" + myrand + args;
    http.open("POST", myurl, true);
    http.onreadystatechange = eval(where);
    http.send(null);
    if (desc)
      {
      var ajaxdata = document.getElementById('ajaxstate');
      ajaxdata.value = desc;
      } 
    }
  catch(err){}
  }
  

// Ajax routine to update activity in ajax window
function staterep()
  {
  try
    {  
    var ajaxdata = document.getElementById('ajaxstate');
    if (http.readyState == 1)
      {
      ajaxdata.value ='Loading' + '\n' +  ajaxdata.value;
      }
    if (http.readyState == 2)
      {
      ajaxdata.value = 'Loaded' + '\n' +  ajaxdata.value;
      }
    if (http.readyState == 3)
      {
    ajaxdata.value = 'Interactive' + '\n' +  ajaxdata.value;
      }
    if (http.readyState == 4)
      {
    ajaxdata.value = 'Complete' + '\n' +  ajaxdata.value;
      }
    }
  catch(err){}
  }
