/* l_games.js
 * Version 2.8 - 25/03/2005
 * Role : scripts pour la page Jeux de la Learning Zone
 * Projet : The Web Language Lab 
 * Auteur : Etienne CHEVILLARD
 */


// nom de la division cible
divC = "gDiv";


// genere la cellule pour le nom du jeu
function createCellName(intIdx) {
	var domTD;
	var domA;
  domTD = document.createElement("TD");
  domTD.width="270px";
  // cas du dernier jeu ajoute : NOUVEAU !
	if (intIdx == tjeux.length-1) {
	  domSPA = document.createElement("SPAN");
	  domSPA.appendChild(document.createTextNode(strNew));
	  domTD.appendChild(domSPA);
  }		
  domA = document.createElement("A");
  domA.appendChild(document.createTextNode(" " + tjeux[intIdx][0]));
  domA.href="javascript:execJeu(" + intIdx + ")";
  domTD.appendChild(domA);
  return (domTD);
} // fin createCellName(intIdx)


// genere la cellule pour le theme du jeu
function createCellTheme(intIdx) {
	var domTD;
  domTD = document.createElement("TD");
  domTD.width="180px";
  domTD.appendChild(document.createTextNode(tjeux[intIdx][2]));
  return (domTD);
} // fin createCellTheme(intIdx)


// genere la cellule pour le niveau du jeu
function createCellLevel(intIdx) {
	var domTD;
	var domIMG;
  domTD = document.createElement("TD");
  domTD.width="60px";      
  domIMG = document.createElement("IMG");
  domIMG.src="../images/etoile" + tjeux[intIdx][6] + ".gif";
  domIMG.border="0";
  domIMG.alt="";
  domTD.appendChild(domIMG);
  return (domTD);
} // fin createCellLevel(intIdx)


// genere la liste des jeux dans la langue specifiee
function dispGamesByLang(theLang) {
  var domH4;
	var domTA;
	var domTB;
	var domTR;
	var domTH
	var domTD;
	var domIMG;
	var i;
	var booGame;
	booGame = false;
	// en-tete du tableau
	domTA = document.createElement("TABLE");
	domTB = document.createElement("TBODY");
	domTR = document.createElement("TR");	
	for (i=0; i<tabTHLang.length; i++)	{
		domTH = document.createElement("TH");
		domTH.appendChild(document.createTextNode(tabTHGames[i]));
		domTR.appendChild(domTH);
	}
	domTB.appendChild(domTR);
  // pour chaque jeu
  for(i=tjeux.length-1; i>=0; i--) {
    // seulement les jeux actifs
    if ((tjeux[i][5] == 1)
      && ((tjeux[i][1].toLowerCase()).indexOf(theLang.substring(0, 2).toLowerCase()) == 0)) {
      // au moins un jeu
      booGame = true;
      // creation de la ligne du tableau
      domTR = document.createElement("TR");
      // nom
      domTR.appendChild(createCellName(i));
      // date
      domTD = document.createElement("TD");
      domTD.width="100px";
      domTD.appendChild(document.createTextNode(tjeux[i][4]));
      domTR.appendChild(domTD);
      // theme
      domTR.appendChild(createCellTheme(i));
      // niveau
      domTR.appendChild(createCellLevel(i));
      domTB.appendChild(domTR);
		}
	}
	domTA.appendChild(domTB);
	// si au moins un jeu
	if (booGame) {
  	// langue
  	domH4 = document.createElement("H4");
   	domIMG = document.createElement("IMG");
    domIMG.src="../images/mflag_" + theLang.substring(0, 2).toLowerCase() + ".gif";
    domIMG.width="26";
    domIMG.height="15";
    domIMG.border="0";
    domIMG.align="middle";
    domIMG.alt="";
  	domH4.appendChild(domIMG);
  	domH4.appendChild(document.createTextNode(" " + theLang));
  	document.getElementById(divC).appendChild(domH4);
	  // listes des jeux
    document.getElementById(divC).appendChild(domTA);
  }
} // fin dispGamesByLang(theLang)


// affiche la liste des jeux par langue
function listeJeuxParLangue() {
	var i;
	document.getElementById(divC).innerHTML = "";
  for(i=0; i<tabLang.length; i++) {
    dispGamesByLang(tabLang[i]);
  }
	return;
} // fin listeJeuxParLangue()


// execute le jeu de numero specifie
function execJeu(noJeu) {
	// demarre le jeu dans une nouvelle fenetre
	var fnt;
	var adr = "../games/game" + noJeu + "/index.html";
	var fid = "game"+ noJeu;
  var prp = "top=20,left=4,width=783,height=440";
  prp += ",toolbar=1,location=0,directories=0,menubar=0,scrollbars=1,resizable=0,status=1";
  fnt=window.open(adr, fid, prp);
  fnt.focus();
  return;
} // fin execJeu(noJeu)

