function ajaxfunction()
{
  var ajaxrequest;

  try
  {
    ajaxrequest = new XMLHttpRequest();
  }
  catch (e)
  {
    try
    {
      ajaxrequest = new ActiveXObject('Msxml2.XMLHTTP');
    }
    catch (e)
    {
      try
      {
        ajaxrequest = new ActiveXObject('Microsoft.XMLHTTP');
      }
      catch (e)
      {
        alert('Browser does not support HTTP requests');
        
        return false;
      }
    }

  }
  
  return ajaxrequest;
}

function showshout1()
{
  htmlrequest1 = ajaxfunction();

  if (htmlrequest1 == null)
  {
    alert ('Browser does not support HTTP requests');
    return;
  }
  
  htmlrequest1.open('GET', 'shoutcache.php', true);
  htmlrequest1.setRequestHeader('If-Modified-Since', 'Thu, 01 Jan 1970 00:00:00 GMT');
  htmlrequest1.onreadystatechange = statechanged1;
  htmlrequest1.send(null);
}

function statechanged1()
{
  if (htmlrequest1.readyState == 4)
  {
    var cacheimp = htmlrequest1.responseText;
    var cacheexp = cacheimp.split(',');
    var lastidseen = cacheexp[0];
    var newestshoutid = cacheexp[1];
    
    if (newestshoutid > lastidseen)
      showshout2();
  }
}

function showshout2()
{
  htmlrequest2 = ajaxfunction();

  if (htmlrequest2 == null)
  {
    alert ('Browser does not support HTTP requests');
    return;
  }
  
  htmlrequest2.open('GET', 'shoutshow.php', true);
  htmlrequest2.setRequestHeader('If-Modified-Since', 'Thu, 01 Jan 1970 00:00:00 GMT');
  htmlrequest2.onreadystatechange = statechanged2;
  htmlrequest2.send(null);
}

function statechanged2()
{
  if (htmlrequest2.readyState == 4)
    document.getElementById('shoutdiv').innerHTML = htmlrequest2.responseText;
}

setInterval('showshout1()', 2000);