﻿/* Trouver un élément Html grâce à son ID */
function GetId(myId){
	return(document.getElementById(myId));
}

/* Trouver un navigateur et sa version */
function GetBrowser(){
	return(navigator.appName + " " + navigator.appVersion);
}

/* Trouver un objet Flash grâce à son ID */
function GetMovieName(movieName){
	if(navigator.appName.indexOf("Microsoft") != -1)
		return(window[movieName]);
	else
		return(document[movieName]);
}

/* Trouver la version d'Internet Explorer */
function VersionMSIE(){
	var ua = window.navigator.userAgent;
	var msie = ua.indexOf("MSIE ");

	if(msie > 0) // Pour Internet Explorer, retourner la version
		return(parseInt(ua.substring(msie + 5,ua.indexOf(".",msie))));
	else // Pour les autres navigateurs, retourner 0
		return(0);
}

/* Supprimer un noeud Xml vide */
function XmlSupprimer(arbre){
	if(!arbre.data.replace(/\s/g,"")) // Supprimer ARBRE s'il est vide
		arbre.parentNode.removeChild(arbre);
}

/* Nettoyer l'arborescence Xml de ses noeuds superflus */
function XmlNettoyer(noeud){
	var balise = noeud.getElementsByTagName("*"); // Récupérer la balise Html de NOEUD

	for(i = 0; i < balise.length; i++){
		noeudPrec = balise[i].previousSibling; // Se positionner sur la balise juste avant NOEUD
		if((noeudPrec) && (noeudPrec.nodeType == 3)) // Supprimer le noeud vide s'il existe et repositionner le curseur
			XmlSupprimer(noeudPrec);
		noeudSuiv = balise[i].nextSibling; // Se positionner sur la balise juste après NOEUD
		if((noeudSuiv) && (noeudSuiv.nodeType == 3))
			XmlSupprimer(noeudSuiv);
	}
	return(noeud);
}

/* Changer la classe CSS d'une balise */
function CssChanger(action, object, className){
	if(action == 'add'){ // Ajouter une classe CSS
		if(!CssChanger('check',object,className))
			object.className += object.className ? ' ' + className : className;
	}else if(action == 'remove'){ // Supprimer une classe CSS
		var rep = object.className.match(' ' + className) ? ' ' + className : className;

		object.className = object.className.replace(rep,'');
	}else if(action == 'check') // Vérifier l'existence de la classe CSS
		return(new RegExp('\\b' + className + '\\b').test(object.className));
	return(true);
}

/* Exécuter les scripts d'un fichier chargé en Ajax */
function ScriptExecuter(position){
	divContent = GetId(position);
	var All = divContent.getElementsByTagName("*");

	for(i = 0; i < All.length; i++){
		All[i].id = All[i].getAttribute("id");
		All[i].name = All[i].getAttribute("name");
		if(VersionMSIE() == 0)
			All[i].className = All[i].getAttribute("class");
	}
	var AllScripts = divContent.getElementsByTagName("script");

	for(i = 0; i < AllScripts.length; i++){
		var s = AllScripts[i];

		if((s.src) && (s.src != "")) // Basculement en mode synchrone pour éviter des problèmes de dépendances de scripts
			eval(getFileContent(s.src));
		else
			eval(s.innerHTML);
	}
}

/* Ouvrir une page en popup */
function PopOuvrir(nomPage){
	w = open(nomPage,"","width=600,height=450,toolbar=no,scrollbars=yes,resizable=no");
	w.document.close();
}

/* Agrandir la taille du texte de la zone de contenu */
function TextZoomer(objParent){
	var BtnZoom = null;

	BtnZoom = XmlNettoyer(objParent).childNodes[0]; // Nettoyer l'arborescence de l'item
	if(cssTaille < 3){ // Augmenter le texte de 3 tailles puis revenir à la taille initiale
		cssTaille++;
		GetId("CssTaille").href = "content/styles/csstaille" + cssTaille + ".css";
		if(cssTaille == 3){
			BtnZoom.alt = "Réduire le texte de la zone centrale";
		}
	}else{
		cssTaille = 1;
		GetId("CssTaille").href = "content/styles/csstaille" + cssTaille + ".css";
		BtnZoom.alt = "Agrandir le texte de la zone centrale";
	}
}

/* Ouvrir la popup d'envoi de mail */
function MailOuvrir(popupami, urlenvoi){
	if(mailBoxActuel != "") // Cacher le bouton d'ouverture de la popup (sauf pour l'iconbar)
		MailFermer(mailBoxActuel);
	mailBoxActuel = popupami;
	if(GetId("Btn" + popupami))
		GetId("Btn" + popupami).style.display = "none";
	jQuery.post("content/modules/chargeMail.php", // Montrer le formulaire d'envoi de mail
		{popup: popupami,
			urlenvoi: urlenvoi
		},
		function(leRetour){
			GetId(popupami).innerHTML = leRetour;
			CssChanger("remove",GetId(popupami),"navAccessiWeb");
			CssChanger("add",GetId(popupami),"mailBox");
			GetId("Nom").focus();
		}
	);
}

/* Fermer la popup d'envoi de mail */
function MailFermer(popupami){
	GetId(popupami).innerHTML = "";
	CssChanger("remove",GetId(popupami),"mailBox");
	CssChanger("add",GetId(popupami),"navAccessiWeb");
	if(GetId("Btn" + popupami)) // Montrer le bouton d'ouverture de la popup (sauf pour l'iconbar)
		GetId("Btn" + popupami).style.display = "";
	mailBoxActuel = "";
}

var mailBoxActuel = "";

/* Vérifier la saisie du formulaire d'envoi de mail */
function MailValider(popupami){
	var okEnvoi = true;

	if((GetId("Nom").value == "") && (okEnvoi)){
		alert("Veillez saisir votre nom.");
		GetId("Nom").focus();
		okEnvoi = false;
		return(false);
	}
	if((GetId("NomAmi").value == "") && (okEnvoi)){
		alert("Veuillez saisir le nom de votre ami.");
		GetId("NomAmi").focus();
		okEnvoi = false;
		return(false);
	}
	if((GetId("EmailAmi").value == "") && (okEnvoi)){
		alert("Veuillez saisir l'e-mail de votre ami.");
		GetId("EmailAmi").focus();
		okEnvoi = false;
		return(false);
	}
	if((GetId("EmailAmi").value != "") && (okEnvoi)){
		var Arobase = GetId("EmailAmi").value.lastIndexOf("@");
		var Point = GetId("EmailAmi").value.lastIndexOf(".");

		if((Arobase < 1) || (Point <= (Arobase + 1)) || (Point == (GetId("EmailAmi").value.length - 1))){
			alert("Veuillez saisir une adresse mail valide.");
			GetId("EmailAmi").focus();
			okEnvoi = false;
		}
	}
	if((GetId("PtitCaptchaEntry").value == "") && (okEnvoi)){
		alert("Veuillez saisir le code de sécurité qui est affiché.");
		GetId("PtitCaptchaEntry").focus();
		okEnvoi = false;
		return(false);
	}
	if(okEnvoi){ // Envoyer le mail et confirmer l'envoi dans la popup
		jQuery.post("content/modules/chargeMailConfirm.php",
			{popup: popupami,
				nom: GetId("Nom").value,
				nomAmi: GetId("NomAmi").value,
				emailAmi: GetId("EmailAmi").value,
				urlenvoi: GetId("LienDirect").value,
				PtitCaptchaKey: GetId("PtitCaptchaKey").value,
				PtitCaptchaEntry: GetId("PtitCaptchaEntry").value
			},
			function(leRetour){
				if(leRetour.substring(0,6) == "ERREUR")
					alert(leRetour.substring(7));
				else{
					GetId(popupami).innerHTML = leRetour;
					new Effect.SlideDown(popupami,
						{duration: 0.5}
					);
				}
			}
		);
	}
}

/* Ouvrir l'aperçu avant impression */
function PrintOuvrir(){
	window.print();
}

/* Stopper ou relancer les animations */
function AnimStopper(objParent){
	var BtnPause = null;

	for(i = 0; i < tabImgPause.length; i++){ // Pour les images animées de la page
		if(animPause == 0){ // On met en pause
			GetId(tabImgPause[i][0]).src = tabImgPause[i][1];
			GetId(tabImgPause[i][0]).width = tabImgPause[i][2];
			GetId(tabImgPause[i][0]).height = tabImgPause[i][3];
		}else{ // On relance
			GetId(tabImgPause[i][0]).src = tabImgPause[i][4];
			GetId(tabImgPause[i][0]).width = tabImgPause[i][5];
			GetId(tabImgPause[i][0]).height = tabImgPause[i][6];
		}
	}
	for(i = 0; i < document.getElementsByTagName("object").length; i++){ // Pour les flash de la page
		if(animPause == 0){ // On met en pause
			try{ // Exécuter la fonction existante dans le flash ou capter l'erreur de retour
				GetMovieName(document.getElementsByTagName("object")[i].id).animStop();
			}catch(e){}
		}else{ // On relance
			try{ // Exécuter la fonction existante dans le flash ou capter l'erreur de retour
				GetMovieName(document.getElementsByTagName("object")[i].id).animPlay();
			}catch(e){}
		}
	}
	BtnPause = XmlNettoyer(objParent).childNodes[0]; // Nettoyer l'arborescence de l'item
	if(animPause == 1){ // Changer l'état de l'animation
		animPause = 0;
		jQuery.post("content/include/maj_session.php",
			{animpause: animPause},
			function(leRetour){}
		);
		BtnPause.alt = "Stopper les animations";
	}else{
		animPause = 1;
		jQuery.post("content/include/maj_session.php",
			{animpause: animPause},
			function(leRetour){}
		);
		BtnPause.alt = "Relancer les animations";
	}
}

var tabImgPause = new Array(); // Tableau des images animées

/* Mettre à jour les infos en fonction du rollover */
function RollCharger(imgCible, actuTitre, actuDesc, idActu){
	GetId("RollOverImg").src = imgCible;
	if((GetId("RollBoxTitre")) && (actuTitre.length > 0)) // Champs à mettre à jour pour le rollover des actus
		GetId("RollBoxTitre").innerHTML = actuTitre;
	if((GetId("RollBoxDesc")) && (actuDesc.length > 0))
		GetId("RollBoxDesc").innerHTML = actuDesc;
	if((GetId("RollBoxLien")) && (idActu > 0))
		GetId("RollBoxLien").href = "moment_actualites.php?actu=" + idActu;
}

/* Replier les items */
function ItemReplier(nomItem){
	var htmlContent = "";

	for(i = 1; i <= lastItem; i++){
		if(GetId(nomItem + i)){
			if((nomItem == "Temoin") || (nomItem == "Pagin")){ // Supprimer le mode ACTIF
				if(VersionMSIE() > 0){
					CssChanger("remove",GetId(nomItem + i),"actif");
					CssChanger("remove",GetId(nomItem + i),"bgColSite");
				}else
					GetId(nomItem + i).removeAttribute("class");
				htmlContent = GetId(nomItem + i).innerHTML;
				if(htmlContent.search(/strong>/i) != -1){ // Supprimer la balise STRONG éventuelle
					htmlContent = htmlContent.replace(/<strong>/i,"");
					htmlContent = htmlContent.replace(/<\/strong>/i,"");
					GetId(nomItem + i).innerHTML = htmlContent;
				}
			}else if(nomItem == "Metier"){ // Fermer le sous-élément
				CssChanger("remove",GetId("ItemDesc" + i),"sousItemOuvert");
				CssChanger("add",GetId("ItemDesc" + i),"itemBody");
				document.location.href = "#ListTiroir";
			}else{ // Passer en mode Replié
				CssChanger("remove",GetId(nomItem + i),"itemDeplie");
				CssChanger("add",GetId(nomItem + i),"itemReplie");
			}
		}
	}
}

/* Déplier un item */
function ItemDeplier(nomItem, idItem){
	var ItemOuvert = null;

	ItemReplier(nomItem);
	if(nomItem == "Temoin"){ // Charger le témoignage sélectionné
		if(GetId(nomItem + idItem)){
			CssChanger("add",GetId(nomItem + idItem),"actif");
			GetId(nomItem + idItem).innerHTML = "<strong>" + GetId(nomItem + idItem).innerHTML + "</strong>";
			jQuery.post("content/modules/chargeTemoignage.php?tem=" + idItem,
				{},
				function(leRetour){
					GetId("TemBox").innerHTML = leRetour;
					ScriptExecuter("TemBox");
					document.location.href = "#TemBox";
				}
			);
		}
	}else{
		ItemOuvert = XmlNettoyer(GetId(nomItem + idItem)).childNodes[1]; // Nettoyer l'arborescence de l'item
		if(GetId(nomItem + idItem)){ // Ouvrir l'item sélectionné
			CssChanger("remove",GetId(nomItem + idItem),"itemReplie");
			CssChanger("add",GetId(nomItem + idItem),"itemDeplie");
			if((nomItem == "Actu") || (nomItem == "Form") || (nomItem == "SousElt")){ // Effet à l'ouverture de l'item
				new Effect.SlideDown(ItemOuvert,
					{duration: 0.5}
				);
			}
		}
	}
}

/* Déplier un sous-item */
function ItemSousDeplier(nomItem, idEltParent, idSousElt, objLien){
	var itemDescActuel = GetId("ItemDescInit").value;
	var htmlContent = "";

	if(sousItemActuel == "") // Changer l'état du lien cible
		sousItemActuel = GetId("SousItemInit");
	if(sousItemActuel) // Supprimer le mode ACTIF
		CssChanger("remove",sousItemActuel,"actif");
	htmlContent = sousItemActuel.innerHTML;
	if(htmlContent.search(/strong>/i) != -1){ // Supprimer la balise STRONG éventuelle
		htmlContent = htmlContent.replace(/<strong>/i,"");
		htmlContent = htmlContent.replace(/<\/strong>/i,"");
		sousItemActuel.innerHTML = htmlContent;
	}
	if(GetId(itemDescActuel)){ // Changer l'état de la zone de contenu
		CssChanger("remove",GetId(itemDescActuel),"sousItemOuvert");
		CssChanger("add",GetId(itemDescActuel),"itemBody");
		GetId(itemDescActuel).style.overflow = "hidden";
		GetId("ItemDescInit").value = "ItemDesc" + idEltParent;
	}
	if(GetId("ItemDesc" + idEltParent)){ // Ouvrir l'item sélectionné
		CssChanger("remove",GetId("ItemDesc" + idEltParent),"itemBody");
		CssChanger("add",GetId("ItemDesc" + idEltParent),"sousItemOuvert");
		new Effect.SlideDown(GetId("ItemDesc" + idEltParent), // Effet à l'ouverture de l'item
			{duration: 0.5}
		);
	}
	if(objLien){ // Charger les infos dans la zone de contenu
		CssChanger("add",objLien,"actif");
		objLien.innerHTML = "<strong>" + objLien.innerHTML + "</strong>";
		jQuery.post("content/modules/chargeMetier.php?metier=" + idSousElt,
			{},
			function(leRetour){
				GetId("ItemDesc" + idEltParent).innerHTML = leRetour;
				document.location.href = "#ItemDesc" + idEltParent;
			}
		);
	}
	sousItemActuel = objLien;
}

var sousItemActuel = "";

/* Charger la page sélectionnée dans la zone de contenu */
function PageCharger(nomItem, fichierCible, pageFocus){
	ItemReplier(nomItem);
	pageActuelle = pageFocus;
	if(fichierCible.indexOf("?") != -1)
		fichierCible = fichierCible + "&page=" + pageActuelle + "_" + nbPages;
	else
		fichierCible = fichierCible + "?page=" + pageActuelle + "_" + nbPages;
	if(GetId(nomItem + pageActuelle)){ // Afficher la page désirée
		CssChanger("add",GetId(nomItem + pageActuelle),"actif bgColSite");
		GetId(nomItem + pageActuelle).innerHTML = "<strong>" + pageActuelle + "</strong>";
		jQuery.post("content/modules/" + fichierCible,
			{},
			function(leRetour){
				GetId(conteneurCible).innerHTML = leRetour;
				ScriptExecuter(conteneurCible);
				document.location.href = "#" + conteneurCible;
			}
		);
	}
	if(sousItemActuel != "") // Réinitialiser les liens actifs pour les sous-items
		sousItemActuel = "";
	if(pageActuelle == 1){ // Montrer ou non les flèches selon la page active
		CssChanger("remove",GetId(nomItem + "Prec"),"pagFlechMontre");
		CssChanger("add",GetId(nomItem + "Prec"),"pagFlechCache");
		GetId(nomItem + "Prec").href = "#";
	}else{
		CssChanger("remove",GetId(nomItem + "Prec"),"pagFlechCache");
		CssChanger("add",GetId(nomItem + "Prec"),"pagFlechMontre");
		GetId(nomItem + "Prec").href = "?page=" + (pageActuelle - 1) + "_" + nbPages;
	}
	if(pageActuelle == nbPages){
		CssChanger("remove",GetId(nomItem + "Suiv"),"pagFlechMontre");
		CssChanger("add",GetId(nomItem + "Suiv"),"pagFlechCache");
		GetId(nomItem + "Suiv").href = "#";
	}else{
		CssChanger("remove",GetId(nomItem + "Suiv"),"pagFlechCache");
		CssChanger("add",GetId(nomItem + "Suiv"),"pagFlechMontre");
		GetId(nomItem + "Suiv").href = "?page=" + (pageActuelle + 1) + "_" + nbPages;
	}
	for(i = 1; i <= nbPages; i++){ // Montrer ou non les items selon la page active
		if(GetId(nomItem + i)){
			if(pageActuelle < 4){
				if(i <= 5)
					GetId(nomItem + i).style.display = "";
				else
					GetId(nomItem + i).style.display = "none";
			}else{
				if(pageActuelle > (nbPages - 3)){
					if(i > (nbPages - 5))
						GetId(nomItem + i).style.display = "";
					else
						GetId(nomItem + i).style.display = "none";
				}else{
					if(i < (pageActuelle - 2))
						GetId(nomItem + i).style.display = "none";
					else{
						if(i > (pageActuelle + 2))
							GetId(nomItem + i).style.display = "none";
						else
							GetId(nomItem + i).style.display = "";
					}
				}
			}
		}
	}
}

/* Charger la page précédente */
function PagePrecCharger(nomItem, fichierCible){
	if(pageActuelle > 1){
		if(GetId(nomItem + (pageActuelle - 1)))
			PageCharger(nomItem,fichierCible,(pageActuelle - 1));
	}
}

/* Charger la page suivante */
function PageSuivCharger(nomItem, fichierCible){
	if(pageActuelle < nbPages){
		if(GetId(nomItem + (pageActuelle + 1)))
			PageCharger(nomItem,fichierCible,(pageActuelle + 1));
	}
}

/* Valider l'inscription à l'interview */
function ItwInscrire(){
	var okEnvoi = true;

	if((GetId("Nom").value == "") && (okEnvoi)){
		alert("Veuillez saisir votre nom.");
		GetId("Nom").focus();
		okEnvoi = false;
	}
	if((GetId("Prenom").value == "") && (okEnvoi)){
		alert("Veuillez saisir votre prénom.");
		GetId("Prenom").focus();
		okEnvoi = false;
	}
	if((GetId("Email").value == "") && (okEnvoi)){
		alert("Veuillez saisir votre adresse e-mail.");
		GetId("Email").focus();
		okEnvoi = false;
	}
	if((GetId("Email").value != "") && (okEnvoi)){
		var Arobase = GetId("Email").value.lastIndexOf("@");
		var Point = GetId("Email").value.lastIndexOf(".");

		if((Arobase < 1) || (Point <= (Arobase + 1)) || (Point == (GetId("Email").value.length - 1))){
			alert("Veuillez saisir une adresse e-mail valide.");
			GetId("Email").focus();
			okEnvoi = false;
		}
	}
	if((GetId("CodePostal").value == "") && (okEnvoi)){
		alert("Veuillez saisir le numéro de département.");
		GetId("CodePostal").focus();
		okEnvoi = false;
	}
	if((GetId("CodePostal").value != "") && (okEnvoi)){
		if(isNaN(GetId("CodePostal").value)){
			alert("Veuillez saisir un numéro de département valide.");
			GetId("CodePostal").focus();
			okEnvoi = false;
		}
	}
	if((GetId("PtitCaptchaEntry").value == "") && (okEnvoi)){
		alert("Veuillez saisir le code de sécurité inscrit dans l'image.");
		GetId("PtitCaptchaEntry").focus();
		okEnvoi = false;
	}
	if((GetId("Question").value == "") && (okEnvoi)){
		alert("Veuillez saisir votre question.");
		GetId("Question").focus();
		okEnvoi = false;
	}
	if(okEnvoi)
		GetId("FormInscritItw").submit();
}

/* Charger le calendrier */
function CalCharger(anneeCal, moisCal, jourCal, entiteCal, stageCal){
	jQuery.post("content/modules/chargeCalendar.php?annee=" + anneeCal + "&mois=" + moisCal + "&entite=" + entiteCal + "&stage=" + stageCal,
		{},
		function(leRetour){
			GetId("CalendarBox").innerHTML = leRetour;
		}
	);
	CalEventCharger(anneeCal,moisCal,jourCal,entiteCal,stageCal);
}

/* Charger la liste d'événements */
function CalEventCharger(anneeEvent, moisEvent, jourEvent, entiteEvent, stageEvent){
	GetId("MajDate").value = anneeEvent + "_" + moisEvent + "_" + jourEvent + "_" + stageEvent;
	new Effect.BlindDown(GetId("ZoneScroll"), // Effet à l'affichage du calendrier
		{duration: 1.0}
	);
	jQuery.post("content/modules/chargeEvents.php?annee=" + anneeEvent + "&mois=" + moisEvent + "&jour=" + jourEvent + "&entite=" + entiteEvent + "&stage=" + stageEvent,
		{},
		function(leRetour){
			GetId("ZoneScroll").innerHTML = leRetour;
			document.location.href = "#ZoneScroll";
		}
	);
}

/* Filtrer par entité */
function CalEntiteFiltrer(){
	var tabElt = new Array(); // Tableau des paramètres d'affichage du calendrier
	var entite = GetId("ListEntite").options[GetId("ListEntite").selectedIndex].value;

	tabElt = GetId("MajDate").value.split("_");
	CalCharger(tabElt[0],tabElt[1],tabElt[2],entite,tabElt[3]);
}

/* Fermer les listes de choix */
function ListFermer(){
	var tabListScroll = new Array("MetierScroll","ContratScroll","RegionScroll","EntiteScroll");

	for(i = 0; i < tabListScroll.length; i++){
		if(GetId(tabListScroll[i])){
			CssChanger("remove",GetId(tabListScroll[i]).parentNode.parentNode,"listActif");
			CssChanger("add",GetId(tabListScroll[i]).parentNode.parentNode,"listRepos");
		}
	}
}

/* Ouvrir la liste de choix */
function ListOuvrir(listCible){
	ListFermer();
	if((listActuelle == "") || (listActuelle != listCible)){ // Aucune liste n'est encore ouverte
		if(listCible.parentNode){
			CssChanger("remove",listCible.parentNode,"listRepos");
			CssChanger("add",listCible.parentNode,"listActif");
			listActuelle = listCible;
		}
	}else if(listActuelle == listCible){ // Une liste est déjà ouverte
		if(listCible.parentNode){
			if(CssChanger("check",listCible.parentNode,"listRepos")){ // Ouvrir la liste sélectionnée
				CssChanger("remove",listCible.parentNode,"listRepos");
				CssChanger("add",listCible.parentNode,"listActif");
				listActuelle = listCible;
			}
			if(CssChanger("check",listCible.parentNode,"listActif")){ // Fermer la liste actuellement ouverte
				CssChanger("remove",listCible.parentNode,"listActif");
				CssChanger("add",listCible.parentNode,"listRepos");
				listActuelle = "";
			}
		}
	}
}

/* Charger les listes de choix des formations */
function FormListCharger(){
	var entite = GetId("ListCaisse").value;
	var diplome = GetId("ListDiplome").value;
	var specialite = GetId("ListDiplomeSpec").value;

	jQuery.post("content/modules/chargeSelectFormation.php",
		{ListCaisse: entite,
			ListDiplome: diplome,
			ListDiplomeSpec: specialite
		},
		function(leRetour){
			GetId("FormCarteFormation").innerHTML = leRetour;
			jQuery.post("content/modules/chargeListFormation.php",
				{ListCaisse: entite,
					ListDiplome: diplome,
					ListDiplomeSpec: specialite
				},
				function(leRetour2){
					GetId("ZoneScroll").innerHTML = leRetour2;
					ScriptExecuter("ZoneScroll");
					document.location.href = "#ZoneScroll";
				}
			);
			try{ // Exécuter la fonction existante dans le flash ou capter l'erreur de retour
				GetMovieName(GetId("MapEntites").id).OuvreFormationEntite(GetId("listEntiteAffiche").value);
			}catch(e){}
		}
	);
}

/* Ouvrir la liste des caisses régionales par le flash */
function ouvreFormationEntiteFlash(entite){
	for(i = 0; i < GetId("ListCaisse").options.length; i++){
		if(GetId("ListCaisse").options[i].value == entite)
			GetId("ListCaisse").selectedIndex = i;
	}
	FormListCharger();
}

/* Charger la liste de completion */
function CompletCharger(e){
// CompParam = [Conteneur parent, Zone de saisie, Largeur de la liste, Nombre d'items maxi à afficher]
	var tabRetour = new Array();
	var compSelect = null;
	var monChoix = "";
	var idRequete = 0;
	var nbResult = 0;
	var keyPress = 0;

	if(VersionMSIE() > 0) // Récupérer la touche pressée 
		keyPress = window.event.keyCode;
	else 
		keyPress = e.which;
	if(GetId(CompParam[1]).value == "") // Désactiver la completion
		GetId(CompParam[0]).innerHTML = "";
	else{ // Filtrer la completion sur le critère de recherche
		idRequete = Math.ceil(Math.random() * 1000000); // Générer un identifiant aléatoire
		jQuery.post("content/modules/chargeCompletion.php?cherche=" + GetId(CompParam[1]).value + "&idreq=" + idRequete,
			{
				ListLarg: CompParam[2],
				ListMaxi: CompParam[3]
			},
			function(leRetour){
				tabRetour = leRetour.split("|");
				if(tabRetour[0] == idRequete){
					if(tabRetour[1] != nbResult){ // Charger la dernière requête en cas de résultat
						GetId(CompParam[0]).innerHTML = tabRetour[1];
						compSelect = XmlNettoyer(GetId(CompParam[0])).childNodes[0]; // Nettoyer l'arborescence de l'item
						if(compSelect){ // Gestionnaire des touches sur la liste de completion
							monChoix = compSelect.selectedIndex;
							nbResult = compSelect.options.length;
							if(keyPress == 40){ // Touche Bas
								if(monChoix < (nbResult - 1))
									monChoix++;
							}else if(keyPress == 38){ // Touche Haut
								if(monChoix > 0)
									monChoix--;
							}else if(keyPress == 13){ // Touche Entrée (sélection d'un élément)
								GetId(CompParam[1]).value = compSelect.options[monChoix].value;
								GetId(CompParam[0]).innerHTML = "";
							}
						}
					}else // Désactiver la completion
						GetId(CompParam[0]).innerHTML = "";
				}
			}
		);
	}
}

/* Choisir un élément dans la liste de completion */
function CompletChoisir(objSelectBox){
	GetId(CompParam[1]).value = objSelectBox.options[objSelectBox.selectedIndex].value;
	GetId(CompParam[0]).innerHTML = "";
}

/* Valider le quiz */
function QuizValider(){
	var okEnvoi = true;

	for(i = 1; i <= 10; i++){
		if((GetId("QuizQuest" + i).value == 0) && (okEnvoi)){
			alert("Veuillez répondre à la question " + i + ".");
			GetId("QuizQuest" + i).focus();
			okEnvoi = false;
			break;
		}
	}
	if(okEnvoi)
		GetId("FormQuiz").submit();
}