function extractGameNode(node){  var gameNode = new Array();  var attributes = node.attributes;    gameNode[0] = attributes["name"].value;  gameNode[1] = attributes["image"].value;  gameNode[2] = attributes["link"].value;    return gameNode;}function getBannerList(){  var banners = new Array();    var xhttp = new XMLHttpRequest();  xhttp.open( "GET", "/gameBanners.xml", false);  xhttp.send("");    var xmlDoc = xhttp.responseXML;    var rootNode = xmlDoc.getElementsByTagName("gameBanners")[0];    for( i = 0; i < rootNode.childNodes.length; i++ )  {    var node = rootNode.childNodes[i];    if( node.nodeType == Node.ELEMENT_NODE && node.nodeName == "gameBanner")    {      banners.push(extractGameNode(node));    }  }    return banners;}function hasGameBanners(){  var div = document.getElementById("gameBanners");    return div != undefined;}function loadGameBanners(){  if( !hasGameBanners() )  {    return;  }    var banners = getBannerList();  for( i = 1; i <= 3; i++ )  {    var divId = "gameBanner" + i;        var index = Math.floor( Math.random() * banners.length );        var innerHTML = new String();        var banner = banners[index];    innerHTML += "<a href=\"" + banner[2] + "\">";    innerHTML += "<img width='264' height='114' src=\"" + banner[1] + "\" border=\"0\">";    innerHTML += "</a>";    banners.splice(index, 1); // This removes the element at index        var bannerDiv = document.getElementById(divId);    bannerDiv.innerHTML = innerHTML;  }}function GameObject(name, link, largeIcon){  this.name = name;  this.link = link;  this.largeIcon = largeIcon;}function hasGameList(){  var div = document.getElementById("largeGameList");    return div != undefined;}function getGameInfoFromNode(node){  var name;  var link;  var largeIcon;  for(  var i = 0; i < node.childNodes.length; i++ )  {    var childNode = node.childNodes[i];        if( childNode.nodeType == Node.ELEMENT_NODE )    {      switch( childNode.nodeName )      {        case "name":          name = childNode.textContent;          break;        case "largeIcon":          largeIcon = childNode.textContent;          break;        case "location":          link = childNode.textContent;          break;      }    }  }    return new GameObject(name, link, largeIcon);}function getGameInformation(){  var xhttp = new XMLHttpRequest();  xhttp.open( "GET", "/games.xml", false);  xhttp.send("");    var xmlDoc = xhttp.responseXML;    var rootNode = xmlDoc.getElementsByTagName("games")[0];  var gameList = new Array();    for( var i = 0; i < rootNode.childNodes.length; i++ )  {    var node = rootNode.childNodes[i];        if( node.nodeType == Node.ELEMENT_NODE )    {      if( node.nodeName == "group" || node.nodeName == "game" )      {        gameList.push( getGameInfoFromNode(node) );      }    }  }    return gameList;}function loadGameList(){  if( !hasGameList() )  {    return;  }    var gameList = getGameInformation();    var div = document.getElementById("largeGameList");  var innerHTML = new String();  innerHTML += "<table border='0' width='800' cellpadding='5'>"    for( var i = 0; i < gameList.length; i++ )  {    var game = gameList[i];        if( i % 4 == 0)    {      innerHTML += "<tr valign='top'>";    }        //innerHTML += "<div style=\"position: relative; width:140px; background-color: #AAA; text-align: center; display=inline;\">";    innerHTML += "<td width='25%'>";    innerHTML += "<a href=\"" + game.link + "\" class='iconLink' title='" + game.name + "'>";    innerHTML += "<img src='" + game.largeIcon + "' width='128' height='128' border='0'><br>";    innerHTML += game.name;    innerHTML += "</a>";    innerHTML += "</td>";    //innerHTML += "</div>";    if( i == gameList.length - 1 )      innerHTML += "<td colspan=\"" + (3 - (i % 4)) + "\"></td";    if( i % 4 == 3 || i == gameList.length - 1 )    {      innerHTML += "</tr>";    }  }  innerHTML += "</table>";    //alert( innerHTML );    div.innerHTML = innerHTML;}function handlePageLoad(){  loadGameList();  loadGameBanners();}
