// (c) Michel Dubois - 2001 - 2011
// -----------------------------------------------
// Liste des fonctions communes pour les QCM
// -----------------------------------------------

var rep="";
var reponsecorrecte=0;
var choice=new Array;
//var maxquest =14;

function trim (myString)
//
// Fonction Trim (éliminer les espaces placées au début et/ou à la fin
// -------------------------------------------------------------------
{
	return myString.replace(/^\s+/g,'').replace(/\s+$/g,'');
} 

function maximizewin() {
	// Forcer en plein écran l'affichage de la page index.htm (ajoutée le 21/11/2007)
var aw;
var ah;
  if (window.screen) {
    aw = screen.availWidth;
    ah = screen.availHeight;
    window.moveTo(0, 0);
    window.resizeTo(aw, ah);
  }
}


function desactiver(){
// -----------------------------
// Désactiver les cases d'option
// -----------------------------

// Parcourir la collection Forms (donc, les formulaires de la page)
for (ind=0;ind<document.forms.length;ind++){
   		
   		// Parcourir la collection Elements pour décocher les cases d'option
		// de chaque formulaire
		 for (i=0;i<document.forms[ind].elements.length;i++){
				document.forms[ind].elements[i].checked=false;
	     }
}	
} // End desactiver

function print_page(){
//
// Imprimer la page courante
// -------------------------
	window.print();
} // End print_page

function init(){
//
// Initialiser le tableau choice
// qui indique les réponses déjà fournies
// --------------------------------------
rep="";
reponsecorrecte=0;

for (i=1;i<=maxquest;i++){
	choice[i]=0;
}
//window.location.href="#debut";
} // End init	

function home(){
// Remonter au début d'un QCM
window.location.href="#debut";
}

function votrereponse(reputil){
//
// Récupère la réponse de l'utilisateur
// et initialise la variable rep utilisée par la fonction CTRL
// -----------------------------------------------------------
rep = reputil;
//alert(rep);
}

function rand ( n )
//
// Générer un nombre aléatoire entre 1 et n
// 
// -----------------------------------------------------------

{
  return ( Math.floor ( Math.random ( ) * n + 1 ) );
}



function ctrl_verif(question){
//
// vérification effective de chaque réponse
// ----------------------------------------
var renforcement = new Array;

renforcement[1]="Le Top !";
renforcement[2]="Cela me semble correct !";
renforcement[3]="Vous avez choisi la bonne réponse !";
renforcement[4]="Vous avez mis dans le mille !";
renforcement[5]="Oui, bien vu !";

if (rep==""&& choice[question]==0) {
	alert("Faites un choix avant de cliquer sur le bouton Vérifier - Merci");
	}
	else {
		if (choice[question]==1){
			msg = "Vous avez déjà répondu à cette question";
			alert (msg);
			rep="";
		}
		else //choice
		{
			choice[question]=1;
			//alert("Question n° "+question + " " + choice[question]);
			if (rep==reponse[question]){
				msg= "Votre réponse : " + rep +"  "+"Réponse attendue : " + reponse[question]+ "\n\n" +renforcement[rand(5)];
				reponsecorrecte++;
				rep="";
			}
			else
			{
				msg= "Votre réponse :" + rep +"  "+"Réponse attendue : " + reponse[question];
				rep="";
			}

	alert (msg);

	// Afficher le résultat final

	if (question==maxquest){
		if (reponsecorrecte>1){
			rs=" réponses correctes"
		}
		else
		{
			rs=" réponse correcte"
		}
		alert ("Votre score est de " + reponsecorrecte + rs + " sur " + maxquest+" questions");
	}
} // choice
} // vérifier si rep est vide
} // End function

function update(nbq){
// -------------------------------------------------
// Pour réinitialiser une page avec un texte à trous
// -------------------------------------------------

var tableau = document.getElementById("resultat"); // Désigner le tableau des résultats
var lignes = tableau.getElementsByTagName("tr"); // Désigner l'ensemble des lignes du tableau resultat

// lignes[1] : deuxième ligne du tableau

   // Réinitialiser les réponses

	for(ind=1;ind<=nbq;ind++){
				rep_util[ind]='';      // Effacer les réponses de l'utilisateur dans le tableau rep_util
				//eval("rep"+ind+"=''"); // Effacer le contenu des zones de saisie
	}

	// Effacer le tableau + raz tableau verifier + les zones de saisie
	for(ind=1;ind<=nbq;ind++){
		
		var cells = lignes[ind].getElementsByTagName("td"); // Colonne réponses attendues
		cell=cells[0];
		cell.firstChild.nodeValue =String.fromCharCode(160); // Espace insécable
		
		var cells = lignes[ind].getElementsByTagName("td"); // Colonne vos réponses
		cell=cells[1];
		cell.firstChild.nodeValue =String.fromCharCode(160); // Espace insécable

		
		// RAZ zones de saisie
		var zone=document.getElementById("rep"+ind);
		zone.value="";
		
		verifier[ind]=0;

   }
	//window.location.href="tts01.htm"; // Recharger la page
}
function masquer1(num){
// -----------------------------------------------
// Masquer un TextArea
// -----------------------------------------------

	eval("document.getElementById('q"+num+"').style.display='none'"); // Pour IE et FF

}
function masquer(){
// -----------------------------------------------
// Masquer les TextArea (nommés q1, q2, ..., qn
// -----------------------------------------------

for (nn=1;nn<=maxquest;nn++){
		eval("document.getElementById('q"+nn+"').style.display='none'"); // Pour IE et FF
}	
	
}

function montrer(num){
// -----------------------------------------------
// Montrer les TextArea
// -----------------------------------------------

	eval("document.getElementById('q"+num+"').style.display='block'"); // Pour IE et FF

}



