// this sets up the gamesList, and hides all but current game in Games/Help pages

function showCurrentGame(which) {

	// HIDE ALL GAMES
	var allGamesDiv = document.getElementById("allGames");
	var gameInfos = allGamesDiv.getElementsByTagName("div");
	for (var i=0; i < gameInfos.length; i++) {
		gameInfos[i].style.display = 'none';
	}
	// SHOW SELECTED GAME
	gameInfos[which].style.display = 'block';

	// SELECT CURRENT GAME IN GAMES NAV
	var gamesList = document.getElementById("gamesList");
	var links = gamesList.getElementsByTagName("a");
	for ( var i=0; i < links.length; i++) {
		links[i].className = "";
	}
	links[which].className = "selected";	
	
	var simulator = document.getElementById("simulator");
	if (simulator) {
		



		// ---------------------------------------------- //
		// ADD CODE HERE TO LOAD NEW GAME INTO SIMULATOR...
		// ---------------------------------------------- //
		
		
		
		
		// set focus on text area
		simulator.getElementsByTagName("textarea")[0].focus();
	}
	
	// ADD CURRENT GAME'S NUMBER TO MAIN NAV LINKS, TO KEEP STATE OVER PAGE CHANGES
	var mainNav = document.getElementById("mainNav");
	var links = mainNav.getElementsByTagName("a");
	links[0].setAttribute("href","../games/?show=" + which);
	links[1].setAttribute("href","../help/?show=" + which);;
}


function prepareGameInfos() {
	
	var gamesList = document.getElementById("gamesList");
	var links = gamesList.getElementsByTagName("a");

	for ( var i=0; i < links.length; i++) {
		links[i].id=i;
		links[i].onclick=function() {
			showCurrentGame(this.id);
			return false;
		}
	}
	
	// show current game and hide all others
	var urlVars = getUrlVars();
	if (urlVars["show"]) {
		showCurrentGame(urlVars["show"]);
	} else {
		showCurrentGame(0);
	}
	
}

function getUrlVars()
{
    var vars = [], hash;
    var hashes = window.location.href.slice(window.location.href.indexOf('?') + 1).split('&');
 
    for(var i = 0; i < hashes.length; i++)
    {
        hash = hashes[i].split('=');
        vars.push(hash[0]);
        vars[hash[0]] = hash[1];
    }
 
    return vars;
}

addLoadEvent(prepareGameInfos);