setupXMLHttpRequest();

function setupXMLHttpRequest() { 
	var request = false;
	try {
	  request = new XMLHttpRequest();
	} catch (trymicrosoft) {
	  try {
	    request = new ActiveXObject("Msxml2.XMLHTTP");
	  } catch (othermicrosoft) {
	    try {
	      request = new ActiveXObject("Microsoft.XMLHTTP");
	    } catch (failed) {
	      request = false;
	    }
	  }
	}
	
	if (!request) {
	document.getElementById("flagdata").innerHTML="<p>Could not get the flag data.</p>";
	  return null;
	}
	
	request.onreadystatechange = function() { changeContents(request,"flagdata"); }; 
	request.open('GET',"/flag.php",true); 
	request.send('');
}

function changeContents(content,id) { 
  try  { 
    if (content.readyState == 4) { 
      if(content.status == 200) {
        document.getElementById(id).innerHTML=content.responseText;
      } else {
    	  document.getElementById(id).innerHTML="<p>Could not get the flag data.</p>";
      }
    }
  } catch(error) {
	  document.getElementById(id).innerHTML="<p>Could not get the flag data.</p>";
  }
}