/********************************************************
	Gestion du jeu
	par damien @ oceanet
	14:46 24/09/2008
********************************************************/

//appelé par l'utilisateur
//verifie si un jeu est en cours, puis si l'utilisateur n'a pas déja joué et affiche le formulaire de jeu
function chargeJeu(){

	var xhr1 = getXHR();

	//controle d'un jeu en cours
	xhr1.onreadystatechange = function() {
		if (xhr1.readyState == 4){
			if(xhr1.responseText != 'false'){
			
				var xml = xhr1.responseXML;
				var mjt_id = xml.getElementsByTagName('question')[0].getAttribute('id');
				var question = xml.getElementsByTagName('question')[0].firstChild.nodeValue;
				var reponses = xml.getElementsByTagName('rep');
				
				//controle que l'utilisateur n'a pas déja joué (retour: true=deja joué)
				var xhr2 = getXHR();
				xhr2.onreadystatechange = function() {
					if (xhr2.readyState == 4){
						if(xhr2.responseText == 'false'){
						
							//tout est ok, on affiche le jeu
							alphaOn();
							
							var popup = document.createElement('div');
							popup.setAttribute("id", "popup");
							with(popup.style){
								position	= "absolute";
								top			= "50%";
								left		= "50%";
								marginLeft	= "-357px";
								marginTop	= "-168px";
								width 		= "715px";
								height 		= "335px";
								border		= "2px solid #840609";
								borderBottom= "0";
								background	= "url(jeux/img/fond_1.jpg)";
							}
							
							
							var intro = document.createElement('p');
							with(intro.style){
								marginTop 	= "66px";
								marginLeft	= "26px";
								width		= "440px";
								height		= "30px";
								fontSize	= "12px";
								fontWeight	= "bold";
								color		= "#85080b";
							}
							intro.appendChild(document.createTextNode('En participant à ce jeu concours, vous pourrez avoir la chance d’interviewer un joueur du MANS FC à la Pincenardière, le centre d’entraînement du MANS FC !'));
							popup.appendChild(intro);
							
							
							var question_texte = document.createElement('p');
							with(question_texte.style){
								marginTop 	= "22px";
								marginBottom= "30px";
								marginLeft	= "26px";
								width		= "450px";
								fontSize	= "12px";
								fontWeight	= "bold";
								color		= "#ffffff";
							}
							question_texte.appendChild(document.createTextNode(question));
							popup.appendChild(question_texte);
							
							
							var div_reponse = document.createElement('div');
							with(div_reponse.style){
								width 	= "100%";
								height 	= "116px";
							}
							
							var tab_mjtr_id = new Array();
							
							for(var i=0; i<reponses.length; i++){

								var mjtr_id = reponses[i].getAttribute('id');
								var mjtr_text = reponses[i].firstChild.nodeValue;
							
								tab_mjtr_id.push(mjtr_id);
							
								var p_reponse = document.createElement('div');
								with(p_reponse.style){
									marginBottom 	= "10px";
									marginLeft		= "26px";
								}
								
								var reponse_input = (document.all) ? document.createElement("<input type='radio' NAME='reponse' value='"+mjtr_id+"'/>") : document.createElement('input');
								reponse_input.setAttribute('type', 'radio');
								reponse_input.setAttribute('name', 'reponse');
								reponse_input.setAttribute('value', mjtr_id);
								reponse_input.setAttribute('id', 'reponse_'+mjtr_id);
								
								var reponse_label = document.createElement('label');
								reponse_label.setAttribute('for', 'reponse_'+mjtr_id);
								with(reponse_label.style){
									fontWeight	= "bold";
									marginLeft	= "16px";
								}
								reponse_label.appendChild(document.createTextNode(mjtr_text));
								
								
								p_reponse.appendChild(reponse_input);
								p_reponse.appendChild(reponse_label);
								div_reponse.appendChild(p_reponse);
							}
							
							popup.appendChild(div_reponse);
							
							
							var img_valider = new Image();
							img_valider.src = "jeux/img/valider.gif";
							var valider = document.createElement('img')
							valider.src = img_valider.src;
							with(valider.style){
								marginLeft 	= "102px";
								cursor		= "pointer";
							}
							
							valider.onclick = function(){ controleJeu(tab_mjtr_id); };
							popup.appendChild(valider);
							
							
							var img_annuler = new Image();
							img_annuler.src = "jeux/img/annuler.gif";
							var annuler = document.createElement('img')
							annuler.src = img_annuler.src;
							with(annuler.style){
								marginLeft 	= "67px";
								cursor		= "pointer";
							}
							
							annuler.onclick = function(){ alphaOff(); };
							popup.appendChild(annuler);

							document.body.appendChild(popup);
						
						}
						else{
							alert('Vous avez déja joué à ce jeu.');
						}
					}
				}
				
				xhr2.open("GET", "jeux/ajax/dejaJoue.xhr.php?mjt_id="+mjt_id+"&rand="+Math.random(), true); 
				xhr2.send(null);
			}
			else{
				alert('Il n\'y a pas de jeu en cours pour le moment.');
			}
		}
	}
	
	xhr1.open("GET", "jeux/ajax/jeuEnCours.xhr.php?rand="+Math.random(), true); 
	xhr1.send(null);
}




//recupere la réponse puis controle l'utilisateur (payant ou non) et redirige en fonction
function controleJeu(tab_mjtr_id){
	
	//controle d'un choix coché
	var coche = false;
	var mjtr_id_choisi = 0;
	for(var i=0; i<tab_mjtr_id.length; i++){
		if(document.getElementById('reponse_'+tab_mjtr_id[i]).checked){
			coche = true;
			mjtr_id_choisi = document.getElementById('reponse_'+tab_mjtr_id[i]).value;
			break;
		}
	}
	
	
	if(coche){
	
		//l'utilisateur est-il payant ?	
		xhr3 = getXHR();
		xhr3.onreadystatechange = function() {
			if (xhr3.readyState == 4){
			
				removeNode('popup');
			
				if(xhr3.responseText == 'true'){
					valideJeu(mjtr_id_choisi);
				}
				else{
					afficheAbonnement();
				}
			}
		}
		
		xhr3.open("GET", "jeux/ajax/utilisateurPayant.xhr.php?rand="+Math.random(), true); 
		xhr3.send(null);
	
	}
	else{
		alert('Merci de selectionner une réponse');
	}
}


//affiche un formulaire de demande d'info pour valider sa réponse
function valideJeu(mjtr_id_choisi){
	
	var popup = document.createElement('div');
	popup.setAttribute("id", "popup");
	with(popup.style){
		position	= "absolute";
		top			= "50%";
		left		= "50%";
		marginLeft	= "-357px";
		marginTop	= "-168px";
		width 		= "715px";
		height 		= "333px";
		border		= "2px solid #840609";
		background	= "url(jeux/img/fond_2.jpg)";
	}

	
	var formulaire = document.createElement('form');
	formulaire.setAttribute('id', 'form_jeu');
	formulaire.setAttribute('method', 'post');
	formulaire.setAttribute('action', 'jeux/save.php');
	with(formulaire.style){
		margin 	= "0";
		padding = "0";
	}
	
	
	var inputHiddenMjtrId = document.createElement('input');
	inputHiddenMjtrId.setAttribute('type', 'hidden');
	inputHiddenMjtrId.setAttribute('name', 'mjtr_id');
	inputHiddenMjtrId.setAttribute('value', mjtr_id_choisi);
	formulaire.appendChild(inputHiddenMjtrId);
	
	
	var table = document.createElement('table');
	with(table.style){
		marginTop 	= "70px";
		marginLeft	= "15px";
		marginBottom= "0";
		height		= "180px";
		padding		= "0";
	}
	
	var tbody = document.createElement('tbody');
	
	
	//1ere ligne
	var tr1 = document.createElement('tr');
	var td1 = document.createElement('td');
	with(td1.style){
		width 		= "100px";
		textAlign 	= "right";
		fontWeight 	= "bold";
		fontSize	= "12px";
		color		= "#86090c";
	}
	td1.appendChild(document.createTextNode('Nom:*'));
	
	var td2 = document.createElement('td');
	with(td2.style){
		width 		= "200px";
	}

	var inputNom = document.createElement('input');
	inputNom.setAttribute('type', 'text');
	inputNom.setAttribute('name', 'nom');
	inputNom.setAttribute('id', 'nom');
	with(inputNom.style){
		marginLeft	= "10px";
		width		= "163px";
		height		= "17px";
		background	= "url(jeux/img/input.jpg)";
		border		= "0";
		padding		= "3px 0";
		color		= "#86090c";
	}
	td2.appendChild(inputNom);	
	
	var td3 = document.createElement('td');
	with(td3.style){
		width 		= "190px";
		textAlign 	= "right";
		fontWeight 	= "bold";
		fontSize	= "12px";
		color		= "#86090c";
	}
	td3.appendChild(document.createTextNode('Prénom:*'));
	
	var td4 = document.createElement('td');
	with(td4.style){
		width 		= "200px";
	}

	var inputPrenom = document.createElement('input');
	inputPrenom.setAttribute('type', 'text');
	inputPrenom.setAttribute('name', 'prenom');
	inputPrenom.setAttribute('id', 'prenom');
	with(inputPrenom.style){
		marginLeft	= "10px";
		width		= "163px";
		height		= "17px";
		background	= "url(jeux/img/input.jpg)";
		border		= "0";
		padding		= "3px 0";
		color		= "#86090c";
	}
	td4.appendChild(inputPrenom);
	
	
	tr1.appendChild(td1);
	tr1.appendChild(td2);
	tr1.appendChild(td3);
	tr1.appendChild(td4);
	
	//2eme ligne
	var tr2 = document.createElement('tr');
	var td5 = document.createElement('td');
	with(td5.style){
		width 		= "100px";
		textAlign 	= "right";
		fontWeight 	= "bold";
		fontSize	= "12px";
		color		= "#86090c";
	}
	td5.appendChild(document.createTextNode('Mail:*'));
	
	var td6 = document.createElement('td');
	with(td6.style){
		width 		= "200px";
	}

	var inputMail = document.createElement('input');
	inputMail.setAttribute('type', 'text');
	inputMail.setAttribute('name', 'mail');
	inputMail.setAttribute('id', 'mail');
	with(inputMail.style){
		marginLeft	= "10px";
		width		= "163px";
		height		= "17px";
		background	= "url(jeux/img/input.jpg)";
		border		= "0";
		padding		= "3px 0";
		color		= "#86090c";
	}
	td6.appendChild(inputMail);	
	
	var td7 = document.createElement('td');
	with(td7.style){
		width 		= "190px";
		textAlign 	= "right";
		fontWeight 	= "bold";
		fontSize	= "12px";
		color		= "#86090c";
	}
	td7.appendChild(document.createTextNode('Numéro de téléphone:*'));
	
	var td8 = document.createElement('td');
	with(td8.style){
		width 		= "200px";
	}

	var inputTel = document.createElement('input');
	inputTel.setAttribute('type', 'text');
	inputTel.setAttribute('name', 'tel');
	inputTel.setAttribute('id', 'tel');
	with(inputTel.style){
		marginLeft	= "10px";
		width		= "163px";
		height		= "17px";
		background	= "url(jeux/img/input.jpg)";
		border		= "0";
		padding		= "3px 0";
		color		= "#86090c";
	}
	td8.appendChild(inputTel);
	
	
	tr2.appendChild(td5);
	tr2.appendChild(td6);
	tr2.appendChild(td7);
	tr2.appendChild(td8);
	
	//3eme ligne
	var tr3 = document.createElement('tr');
	var td9 = document.createElement('td');
	with(td9.style){
		width 		= "100px";
		textAlign 	= "right";
		fontWeight 	= "bold";
		fontSize	= "12px";
		color		= "#86090c";
	}
	td9.appendChild(document.createTextNode('Age:'));
	
	var td10 = document.createElement('td');
	with(td10.style){
		width 		= "200px";
	}

	var inputAge = document.createElement('input');
	inputAge.setAttribute('type', 'text');
	inputAge.setAttribute('name', 'age');
	inputAge.setAttribute('id', 'age');
	with(inputAge.style){
		marginLeft	= "10px";
		width		= "163px";
		height		= "17px";
		background	= "url(jeux/img/input.jpg)";
		border		= "0";
		padding		= "3px 0";
		color		= "#86090c";
	}
	td10.appendChild(inputAge);	
	
	var td11 = document.createElement('td');
	with(td11.style){
		width 		= "190px";
		textAlign 	= "right";
		fontWeight 	= "bold";
		fontSize	= "12px";
		color		= "#86090c";
	}
	td11.appendChild(document.createTextNode('Ville:'));
	
	var td12 = document.createElement('td');
	with(td12.style){
		width 		= "200px";
	}

	var inputVille = document.createElement('input');
	inputVille.setAttribute('type', 'text');
	inputVille.setAttribute('name', 'ville');
	inputVille.setAttribute('id', 'ville');
	with(inputVille.style){
		marginLeft	= "10px";
		width		= "163px";
		height		= "17px";
		background	= "url(jeux/img/input.jpg)";
		border		= "0";
		padding		= "3px 0";
		color		= "#86090c";
	}
	td12.appendChild(inputVille);
	
	
	tr3.appendChild(td9);
	tr3.appendChild(td10);
	tr3.appendChild(td11);
	tr3.appendChild(td12);
	
	
	
	
	
	tbody.appendChild(tr1);
	tbody.appendChild(tr2);
	tbody.appendChild(tr3);
	table.appendChild(tbody);
	formulaire.appendChild(table);
	popup.appendChild(formulaire);
	
	
	
	
	var img_valider = new Image();
	img_valider.src = "jeux/img/valider.gif";
	var valider = document.createElement('img')
	valider.src = img_valider.src;
	with(valider.style){
		marginTop 	= "15px";
		marginLeft 	= "325px";
		cursor		= "pointer";
		marginBottom= "0";
		padding		= "0";
	}
	
	valider.onclick = function(){ validForm(); };
	popup.appendChild(valider);
	
	
	var champsObligatoires = document.createElement('p');
	with(champsObligatoires.style){
		color 		= "#FFFFFF";
		marginLeft 	= "15px";
		marginTop	= "10px";
		padding		= "0";
	}
	champsObligatoires.appendChild(document.createTextNode('* champs obligatoires'));
	popup.appendChild(champsObligatoires);	
	
	
	document.body.appendChild(popup);

}



//valide le formulaire est le soumet
function validForm(){

	var submit = true;

	if(document.getElementById('nom').value == ''){
		alert('Merci de renseigner votre nom.');
		document.getElementById('nom').focus();
		submit = false;
		return false;
	}

	if(document.getElementById('prenom').value == ''){
		alert('Merci de renseigner votre prénom.');
		document.getElementById('prenom').focus();
		submit = false;
		return false;
	}

	if(document.getElementById('mail').value == ''){
		alert('Merci de renseigner votre e-mail.');
		document.getElementById('mail').focus();
		submit = false;
		return false;
	}

	if(document.getElementById('tel').value == ''){
		alert('Merci de renseigner votre numéro de téléphone.');
		document.getElementById('tel').focus();
		submit = false;
		return false;
	}

	if(submit) document.getElementById('form_jeu').submit();
}



//affiche un message en fonction du type de retour
function jeuFin(type){
	if(type == 'ok'){
		var message = "Merci d'avoir participé au jeu.";
	}
	else{
		var message = "Un problème est survenu lors de l'envoi de votre réponse.";
	}
	
	var popup = document.createElement('div');
	popup.setAttribute("id", "popup");
	with(popup.style){
		position	= "absolute";
		top			= "50%";
		left		= "50%";
		marginLeft	= "-350px";
		marginTop	= "-20px";
		width 		= "700px";
		height 		= "40px";
		color		= "#FFFFFF";
		fontSize	= "24px";
		fontWeight	= "bold";
		textAlign	= "center";
	}
	popup.appendChild(document.createTextNode(message));
	
	alphaOn();
	document.body.appendChild(popup);
	setTimeout("alphaOff();", 4000);
	document.getElementById('masque').onclick = function(){ alphaOff(); };
}






//affiche le popup abonnement
function afficheAbonnement(){

	var popup = document.createElement('div');
	popup.setAttribute("id", "popup");
	with(popup.style){
		position	= "absolute";
		top			= "50%";
		left		= "50%";
		marginLeft	= "-357px";
		marginTop	= "-168px";
		width 		= "715px";
		height 		= "333px";
		border		= "2px solid #840609";
		background	= "url(jeux/img/fond_3.jpg)";
	}

	var img_valider = new Image();
	img_valider.src = "jeux/img/abonner.gif";
	var valider = document.createElement('img')
	valider.src = img_valider.src;
	with(valider.style){
		marginTop 	= "252px";
		marginLeft 	= "231px";
		cursor		= "pointer";
	}
	
	
	valider.onclick = function(){ window.location = "inscription.php" };
	popup.appendChild(valider);
	
	document.body.appendChild(popup);
}




//affiche un calque
function alphaOn(){
	
	//Hauteur du contenu de la page
	var hauteurInterieure = document.documentElement.clientHeight;
	
	//Pour Opéra, on applique une autre méthode
	if(window.innerHeight > hauteurInterieure){ 
		hauteurInterieure = window.innerHeight;
	}


	var masque = document.createElement("div");
	masque.setAttribute("id", "masque");
	masque.style.position 			= "absolute";
	masque.style.top 				= "0";
	masque.style.left 				= "0";
	masque.style.height 			= hauteurInterieure+"px";
	masque.style.width 				= "100%";
	masque.style.backgroundColor 	= "#000";
	masque.style.opacity 			= "0.7";
	masque.style.filter				= "alpha(opacity=70)";
	
	document.body.appendChild(masque);
	
	//on cache les selects et elements flash
	hideSelectBoxes();
	hideFlash();	
}


//supprime le masque + son contenu (popup)
function alphaOff(){
	
	removeNode('masque');
	removeNode('popup');
	showSelectBoxes();
	showFlash();
}


//supprime le noeud definit par nodeId
function removeNode(nodeId){
	if (document.getElementById(nodeId)){
		document.getElementById(nodeId).parentNode.removeChild(document.getElementById(nodeId));
	}	
}


function showSelectBoxes(){
	var selects = document.getElementsByTagName("select");
	for (i = 0; i != selects.length; i++) {
		selects[i].style.visibility = "visible";
	}
}


function hideSelectBoxes(){
	var selects = document.getElementsByTagName("select");
	for (i = 0; i != selects.length; i++) {
		selects[i].style.visibility = "hidden";
	}
}


function showFlash(){
	var flashObjects = document.getElementsByTagName("object");
	for (i = 0; i < flashObjects.length; i++) {
		flashObjects[i].style.visibility = "visible";
	}

	var flashEmbeds = document.getElementsByTagName("embed");
	for (i = 0; i < flashEmbeds.length; i++) {
		flashEmbeds[i].style.visibility = "visible";
	}
}


function hideFlash(){
	var flashObjects = document.getElementsByTagName("object");
	for (i = 0; i < flashObjects.length; i++) {
		flashObjects[i].style.visibility = "hidden";
	}

	var flashEmbeds = document.getElementsByTagName("embed");
	for (i = 0; i < flashEmbeds.length; i++) {
		flashEmbeds[i].style.visibility = "hidden";
	}

}


//retourne un obket XHR
function getXHR(){
	var xmlhttp=false;
	if(window.XMLHttpRequest) // Firefox
	   xmlhttp = new XMLHttpRequest();   
	else if(window.ActiveXObject) // Internet Explorer   
	  try {
			xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
		} catch (e) {
			xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
		}  
	else { // XMLHttpRequest non supporté par le navigateur   
	   alert("Votre navigateur ne supporte pas les objets XMLHTTPRequest...");   
	   
	}
	return xmlhttp
}