var xmlhttp = false;

try
{ xmlhttp = new ActiveXObject("Msxml2.XMLHTTP"); } //end try
catch (e)
{
  try
  { xmlhttp = new ActiveXObject("Microsoft.XMLHTTP"); } //end try
  catch (E)
  { xmlhttp = new XMLHttpRequest(); } //end catch(E)
} //end catch(e)

function makerequest(serverPage, objID)
{
  var obj = document.getElementById(objID);
  xmlhttp.open("GET", serverPage);
  xmlhttp.onreadystatechange = function()
  {
    if (xmlhttp.readyState == 4 && xmlhttp.status == 200)
    { obj.innerHTML = xmlhttp.responseText; }
  }
  xmlhttp.send(null);
} //end makerequest()

function portfolio(serverPage, image, objID)
{
  var obj = document.getElementById(objID);
  xmlhttp.open("GET", serverPage);
  xmlhttp.onreadystatechange = function()
  {
    if (xmlhttp.readyState == 4 && xmlhttp.status == 200)
    { 
      obj.innerHTML = xmlhttp.responseText;
      image(image, "portfolio");
    }
  }
  xmlhttp.send(null);
} //end makerequest()

function image(serverPage, objID)
{
  var obj = document.getElementById(objID);
  obj.src = serverPage;
  xmlhttp.open("GET", serverPage);
  xmlhttp.onreadystatechange = function()
  {
    if (xmlhttp.readyState == 4 && xmlhttp.status == 200)
    { obj.innerHTML = "<img src=\"" + obj.src + "\" alt=\"\" />"; }
  }
  xmlhttp.send(null);
} //end makerequest()

function removeThumb(s, t)
{
  /*
  **  Remove all occurrences of a token in a string
  **    s  string to be processed
  **    t  token to be removed
  **  returns new string
  */
  i = s.indexOf(t);
  r = "";
  if (i == -1) return s;
  r += s.substring(0,i) + remove(s.substring(i + t.length), t);
  return r;
}
