/*-----------------------------------------------------------------------------------------------*/
//
// Copyright (c) 2009 Agence Clark (http://www.agence-clark.com)
//
/*-----------------------------------------------------------------------------------------------*/

/*-----------------------------------------------------------------------------------------------*/
// Init Page
/*-----------------------------------------------------------------------------------------------*/
function suppMatiere(num)
{
	//$('contener_matiere_'+num).hide();
	$('contener_matiere_'+num).remove();

}

function removeExp(id)
{
	$j('#contener_experience[rel="' + id + '"]').remove();
}


function addExpRow(data)
{
	
	if( null == data ) {
		data = {
			datedebutexp : '',
			datefinexp : '',
			experience : '',
			desc_experience : ''
		};
	}
	
	var nb = $$('.form_joinus #contener_experience').length;
	var num = (nb*1+1);
	var valeur_template = {num : num };
	var template = new Template('<fieldset  id="contener_experience" class="contener_experience" rel="' + num + '">'+
								''+
								'	<label for="frm_joinus_debut_#{num}" class="w20 inputselect">'+
								'		<span class="wrapper">'+
								'			<span class="title">D&eacute;but</span>'+
								'			<input type="text" class="ui-multiselect ui-widget ui-state-default ui-corner-all field" value=""  name="frm_joinus_debut_#{num}" id="frm_joinus_debut_#{num}"/>'+
								'		</span>'+
								'	</label>'+
								''+
								'	<label for="frm_joinus_fin_#{num}" class="w20 inputselect">'+
								'		<span class="wrapper">'+
								'			<span class="title">Fin</span>'+
								'			<input type="text" class="ui-multiselect ui-widget ui-state-default ui-corner-all field" value=""  name="frm_joinus_fin_#{num}" id="frm_joinus_fin_#{num}"/>'+
								'		</span>'+
								'	</label>'+
								'	'+
								'	<label for="frm_joinus_experience_#{num}" class="w60 inputselect">'+
								'		<span class="wrapper">'+
								'			<span class="title">Exp&eacute;rience</span>'+
								'		   <select id="frm_joinus_experience_#{num}" name="frm_joinus_experience_#{num}" style="width:404px">'+
											contenuExp+
								'			</select>'+
								'		</span>'+
								'	</label> '+
								'	'+
								'	<label for="frm_joinus_description_#{num}" class="w100 inputselect">'+
								'		<span class="wrapper">'+
								'			<span class="title">Description de l\'exp&eacute;rience</span>'+
								'			 <textarea name="frm_joinus_description_#{num}" rows="4" cols="60" id="frm_joinus_description_#{num}" class="ui-multiselect ui-widget ui-state-default ui-corner-all field"></textarea>'+
								'		</span>'+
								'	</label>'+
								'<div class="clear"></div><a href="javascript:removeExp('+num+')" class="deleteRow">Supprimer cette expérience</a><br />' + 
								'	'+
								'</fieldset>');
	var nouveau = template.evaluate(valeur_template);
	new Insertion.Before($("btnFin"), nouveau);
	
	$j(function() {
		$j("#frm_joinus_debut_" + num).val(data.datedebutexp).mask("99/99/9999");
		$j("#frm_joinus_fin_" + num).val(data.datefinexp).mask("99/99/9999");
		$j("#frm_joinus_experience_" + num).val(data.experience).multiselect({
			header : false,
			multiple : false,
			selectedList: 1,
			minWidth: 334,
			noneSelectedText: "Sélectionnez"
		});
		$j('#frm_joinus_description_' + num).val(data.desc_experience);
	});
	
}

function removeDiplome(id)
{
	$j('#contener_diplome[rel="' + id + '"]').remove();
}

function addDiplomaRow(data)
{
	if( null == data ) {
		data = {
			diplome : '',
			annee : '',
			specialite : '',
			institut : '',
			acquis : ''
		};
	};
	
	var nb = $$('.form_joinus #contener_diplome').length;
	var num = (nb*1+1);
	var valeur_template = {num : num };
	
	if( typeof(contenuDiplome) == undefined ) {
		return;
	}
	
	var template = new Template( '<fieldset id="contener_diplome" class="contener_diplome" rel="' + num + '">'+
			'	<label for="frm_joinus_annee_#{num}" class="w20 inputselect">'+
			'		<span class="wrapper">'+
			'			<span class="title">Ann&eacute;e <sup>*</sup></span>'+
			'			<select name="frm_joinus_annee_#{num}" id="annee_diplome_#{num}" value="{institut}">'+
							contenuAnnee+
			'			</select>'+
			'		</span>'+
			'	</label>'+
			 '  '+
			'<label for="diplome_#{num}" class="w40 inputselect">'+
								'	<span class="wrapper">'+
								'		<span class="title">Dipl&ocirc;me <sup>*</sup></span>'+
								'		<select id="diplome_#{num}" name="frm_joinus_diplome_#{num}">'+
											contenuDiplome+
								'		</select>'+
								'	</span>'+
								'</label>'+
							''+
							'	<label for="specialite_diplome_#{num}" class="w40 inputselect">'+
							'		<span class="wrapper">'+
							'			<span class="title">Spécialité - Option <sup>*</sup></span>'+
							'			<select id="specialite_diplome_#{num}" name="frm_joinus_specialite_#{num}">'+
											contenuSpe +
							'			</select>'+
							'		</span>'+
							'	</label>'+
							''+
								'<label for="frm_joinus_institut_#{num}" class="w80 inputselect">'+
							'		<span class="wrapper">'+
							'			<span class="title">Nom institut/&eacute;cole <sup>*</sup></span>'+
							'			 <input type="text" name="frm_joinus_institut_#{num}" id="frm_joinus_institut_#{num}" class="ui-multiselect ui-widget ui-state-default ui-corner-all field">'+
							'		</span>'+
							'	</label>'+
							 '  '+
							'	<label class="w20 inputselect" for="null">'+
							'		<span class="wrapper">'+
							'			<span class="title">Dipl&ocirc;me obtenu ? <sup>*</sup></span>'+
					        '             <label class="real" for="frm_joinus_acquis_1_#{num}">Oui</label> <input id="frm_joinus_acquis_1_#{num}" type="radio" name="frm_joinus_acquis_#{num}" value="oui" /> &nbsp;' + 
					        '             <label class="real" for="frm_joinus_acquis_2_#{num}">Non</label> <input id="frm_joinus_acquis_2_#{num}" type="radio" name="frm_joinus_acquis_#{num}" value="non" />' + 
							'		</span>'+
							'	</label>'+
							'	<br />'+
							'<a href="javascript:removeDiplome('+num+')" class="deleteRow">Supprimer ce diplôme</a>' + 
							'	'+
							'</fieldset>');
	var nouveau = template.evaluate(valeur_template);
	new Insertion.Before( $("btnFin") , nouveau);
	
	var defaultOptions = {
		header : false,
		multiple : false,
		selectedList: 1,
		minWidth: 260,
		noneSelectedText: "Choisissez un diplôme"
	};
	
	$j(function() {
		$j('#frm_joinus_institut_' + num).val(data.institut);
		$j('#diplome_' + num ).val(data.diplome).multiselect(defaultOptions);
		var specialite = $j('#specialite_diplome_' + num).val(data.specialite).multiselect( $j.extend(defaultOptions, {
			noneSelectedText : "Choisissez une spécialité"
		}));
		if(data.diplome!="")
			specialite.multiselect('enable');
		else
			specialite.multiselect('disable');

		$j("#diplome_" + num).bind('multiselectclick', function (e, ui) {
			if( ui.checked ) {
				var num_champ = $j(this).attr("id");
				var id_diplome = ui.value;
				/*$j("#specialite_"+num_champ).html(contenuSpe);
				$j("#specialite_"+num_champ+ " option").not(" .spe_"+id_diplome).remove();
				var content = '<option value="">S&eacute;lectionnez</option>'+$j("#specialite_"+num_champ).html();
				$j("#specialite_"+num_champ).html(content);
				$j("#specialite_"+num_champ).val('');
				specialite.multiselect('refresh').multiselect('enable');*/
				creerRequete();
		        var url = 'Front/autocomplete4.php?idr='+ id_diplome;
		        requete.open('GET', url, true);
		        requete.onreadystatechange = function()
		        {
		            if(requete.readyState == 4)
		            {
		                if(requete.status == 200) {
		                	specialite.html(requete.responseText);
		                	specialite.multiselect('refresh').multiselect('enable');
		                }
		            }
		        };
		        requete.send(null);
			}
		});
		$j('#annee_diplome_' + num).val(data.annee).multiselect( $j.extend(defaultOptions, {
			noneSelectedText : "Choisissez",
			minWidth:120
		}));
		if( data.acquis == 'oui' ) {
			$j('#frm_joinus_acquis_1_' + num).attr('checked', true);
		} else if( data.acquis == 'non' ) {
			$j('#frm_joinus_acquis_2_' + num).attr('checked', true);
		}
		
		//$j(".w40.inputselect button,.w40.inputselect .ui-multiselect-menu").css("width","260px");
		 
		if(data.diplome!="")
		{
			$j("#specialite_diplome_"+num+" option").not(" .spe_"+data.diplome).remove();
			var content = '<option value="">S&eacute;lectionnez</option>'+$j("#specialite_diplome_"+num).html();
			$j("#specialite_diplome_"+num).html(content);
			$j("#specialite_diplome_"+num+" option").show();
			$j("#specialite_diplome_"+num).val(data.specialite);
		}
	});
	
};

Event.observe(window, 'load', initPage, false);
function initPage(){
	RollOverImage();
	if(navigator.appVersion.indexOf("MSIE 6.0")!=-1){
		correctPNG();
	}
	if($('num_tel')){
		var val = $('num_tel').previous('label').innerHTML;
		$('num_tel').value = val;
		$('num_tel').observe('focus',function(){
			$('num_tel').value = '';					 
		});
		$('num_tel').observe('blur',function(){
			$('num_tel').value = val;					 
		});		
	}
	if($('ajouter_matiere')){
		var lien = $('ajouter_matiere').down('a');
		var contenuSelect = $('frm_matieres').innerHTML;
		lien.observe('click', function(bt){
			lien.blur();						   
			if($$('#matieres select').length < 6) {						
				var nb = $$('#matieres select').length;
				var valeur_template = {name: 'frm_matieres_'+nb};
				var template = new Template('<select class="matiere_plus" name="#{name}" id="#{name}">'+contenuSelect+'</select>');
				var nouveau = template.evaluate(valeur_template);
				new Insertion.Before(lien.up('p'), nouveau);
			}
			Event.stop(bt);
		});
	}
	
	if($('ajouter_diplome'))
	{
		var lien = $('ajouter_diplome').down('a');

		lien.observe('click', function(bt)
		{
			lien.blur();						   
			if($$('.form_joinus #contener_diplome').length < 20) {						
				addDiplomaRow();
			}
			Event.stop(bt);
		});
	}
	
	if($('ajouter_exp'))
	{
		var lien = $('ajouter_exp').down('a');
		//var contenuExp = $('frm_joinus_experience_1').innerHTML;
		lien.observe('click', function(bt)
		{
			lien.blur();						   
			if($$('.form_joinus #contener_experience').length < 20) {						
				addExpRow();
			}
			Event.stop(bt);
		});
	}
	
	if($('ajouter_matieres'))
	{
		var lien = $('ajouter_matieres').down('a');
		var contenuDomaine = $('matiere_1').innerHTML;
		var contenuMatiere = $('enseigne_matiere_1').innerHTML;
		lien.observe('click', function(bt)
		{
			lien.blur();						   
			if($$('.form_joinus #contener_matiere').length < 20) {						
				var nb = $$('.form_joinus #contener_matiere').length;
				var valeur_template = {num : (nb*1+1), num1 : (nb*1)};
				var num = (nb*1+1);
				
				if($('enseigne_matiere_'+nb).value >0 )
				{	
					try
					{  requete = new XMLHttpRequest(); }
					catch (microsoft)
					{
						/* Microsoft utilisant une autre technique, on essays de créer un objet ActiveX */
						try
						{ requete = new ActiveXObject('Msxml2.XMLHTTP'); }
				
						catch(autremicrosoft)
						{
							try
							{ requete = new ActiveXObject('Microsoft.XMLHTTP'); }
							catch(echec)
							{ requete = null; }
						}
					}
				
					if(requete == null)
					{ alert('Impossible de créer l\'objet requête,\nVotre navigateur ne semble pas supporter les object XMLHttpRequest.'); }
					
					var get = "";
					for(var i=1; i<=nb; i++)
					{
						get = get + $('enseigne_matiere_'+i).value + "_";	
					}
					
					/* Définition du fichier de traitement */
					var url = 'autocomplete3.php?use='+get;
					/* Envoi de la requête à la page de traitement */
					requete.open('GET', url, true);
					requete.onreadystatechange = function()
					{
						if(requete.readyState == 4)
						{
							 if(requete.status == 200)
							 {
								 var template = new Template('<div id="contener_matiere"><div id="contener_matiere_#{num}">'+
									'<center><hr style="width:94%; background:none;"/></center><br/>'+
									'<p class="supprimer_matieres"><a href="javascript:suppMatiere(#{num});" onClick="">Supprimer</a></p>'+
									'<div class="ligne">'+
									'	<div class="champs" style="width:300px;">'+
									'		<label for="matiere_#{num}">Domaine d\'enseignement principal <sup>*</sup></label>'+
									'		<select name="matiere_#{num}" class="matiere_app" id="matiere_#{num}">'+
											contenuDomaine+
									'		</select>'+
									'	</div>'+
									'	<div class="champs" style="width:300px;">'+
											'<label for="enseigne_matiere_#{num}">Mati&egrave;re <sup>*</sup></label>'+
											'<select name="enseigne_matiere_#{num}" id="enseigne_matiere_#{num}">'+
											'<option value="-1">S&eacute;lectionnez</option>'+
											requete.responseText+
											'</select>'+
										'</div>'+
									'</div>'+
									
									
									'<div class="ligne">'+
									'	<div class="champs" style="width:300px;">'+
											'<label for="frm_joinus_niveaux">Niveaux souhait&eacute;s <sup>*</sup></label>'+
											'Primaire<input type="checkbox" class="" name="frm_joinus_niveaux[#{num1}][]" value="Primaire"/>'+
											'Collège<input type="checkbox" class="" name="frm_joinus_niveaux[#{num1}][]" value="Collège" />'+
											'Lycée<input type="checkbox" class="" name="frm_joinus_niveaux[#{num1}][]" value="Lycée" />'+
											'Supérieur<input type="checkbox" class="" name="frm_joinus_niveaux[#{num1}][]" value="Supérieur" />'+
										'</div>'+
									
										'<div class="champs langue_matiere_#{num}"'+
											'<label for="langue_matiere_#{num}">Cochez s\'il s\'agit de votre langue maternelle</label>'+
											'<input type="checkbox" class="langue" id="langue_matiere_#{num}" name="langue_matiere_#{num}" />'+
										'</div>'+
									'</div>'+
									
									'<div class="ligne">'+
										'<label for="commentaire_matiere_#{num}">Commentaires <sup>*</sup></label>'+
										'<textarea id="commentaire_matiere_#{num}" name="commentaire_matiere_#{num}" style="width:620px"></textarea>'+
									'</div>'+
								'</div></div>');
					
									
									var nouveau = template.evaluate(valeur_template);
									new Insertion.Before(lien.up('p'), nouveau);
							 }
						}
					};
					requete.send(null);
					
				}
				else
				{
					alert("Pour pouvoir ajouter un nouvelle matière, vous devez au préablable renseigner celle(s) déjà existante(s)");	
				}
			}
			Event.stop(bt);
			
		});
	}

	
	// **************     Formulaire Demande de doc
	if($('ajouter_cat_matieres'))
	{
		var lien = $('ajouter_cat_matieres').down('a');
		var contenuDomaine = $('matiere_1').innerHTML;
		var contenuMatiere = $('enseigne_matiere_1').innerHTML;
		lien.observe('click', function(bt)
		{
			lien.blur();						   
			if($$('.form .contener_matiere').length < 6) {						
				var nb = $$('.form .contener_matiere').length;
				var valeur_template = {num : (nb+1)};
				
				if($('enseigne_matiere_'+nb).value >0 )
				{
					try
					{  requete = new XMLHttpRequest(); }
					catch (microsoft)
					{
						/* Microsoft utilisant une autre technique, on essays de créer un objet ActiveX */
						try
						{ requete = new ActiveXObject('Msxml2.XMLHTTP'); }
				
						catch(autremicrosoft)
						{
							try
							{ requete = new ActiveXObject('Microsoft.XMLHTTP'); }
							catch(echec)
							{ requete = null; }
						}
					}
					
					if(requete == null)
					{ alert('Impossible de créer l\'objet requête,\nVotre navigateur ne semble pas supporter les object XMLHttpRequest.'); }
					
					var get = "";
					for(var i=1; i<=nb; i++)
					{
						get = get + $('enseigne_matiere_'+i).value + "_";	
					}
					
					/* Définition du fichier de traitement */
					var url = 'autocomplete3.php?use='+get;
					/* Envoi de la requête à la page de traitement */
					requete.open('GET', url, true);
					requete.onreadystatechange = function()
					{
						if(requete.readyState == 4)
						{
							 if(requete.status == 200)
							 {
								 var template = new Template('<div class="contener_matiere" id="contener_matiere_#{num}">'+
									'<div class="ligne">'+
										'<p class="supprimer_matieres"><a href="javascript:suppMatiere(#{num});" onClick="">Supprimer</a></p>'+
										'<div class="champs" style="width:300px;">'+
										'<label for="matiere_#{num}">Domaine #{num} <sup>*</sup></label>'+
										'<select name="matiere_#{num}" class="matiere_app" id="matiere_#{num}">'+
											contenuDomaine+
										'</select>'+
										'</div>'+
										'<div class="champs" style="width:300px;">'+
											'<label for="enseigne_matiere_#{num}">Mati&egrave;re #{num}<sup>*</sup> </label>'+
											'<select name="enseigne_matiere_#{num}" id="enseigne_matiere_#{num}">'+
											requete.responseText+
											'</select>'+
										'</div>'+
									'</div>'+
								'</div>');
								 var nouveau = template.evaluate(valeur_template);
								new Insertion.Before(lien.up('#matieres'), nouveau);
							 }
						}
					};
					requete.send(null);
				}
				else
				{
					alert("Pour pouvoir ajouter un nouvelle matière, vous devez au préablable renseigner celle(s) déjà existante(s)");	
				}
			}
			if($$('.form .contener_matiere').length == 6){
				$('ajouter_cat_matieres').hide();
			}
			Event.stop(bt);
		});
	}
}

/*-----------------------------------------------------------------------------------------------*/
// Fonctions
/*-----------------------------------------------------------------------------------------------*/


/**
 * Afficher masquer le sous-menu de navigation
 ******************************************/
var InitSousMenu = function()
{	
	$$('ul#niveau_1 li.niveau_1').each(function(rub)
	{
		var lien = rub.down('a'); 
		var sous_menu  = rub.down('.niveau_2');
		var fermer = rub.down('a.fermer');
		
		var autres_sous_menus = $$('.niveau_2').without(sous_menu);

		var actif;

		if(sous_menu)
		{
			Event.observe(rub, 'mouseenter', function()
			{
				actif = window.setTimeout ( function() { AfficheSousMenu(autres_sous_menus, sous_menu, lien); },400);
			});
			
			Event.observe(rub, 'mouseleave', function()
			{
				window.clearTimeout(actif);
				MasqueSousMenu(lien, sous_menu);
			});
			if(fermer){
				fermer.onclick = function()
				{
					MasqueSousMenu(lien, sous_menu);
					return false;
				}
			}
		}else{
			Event.observe(rub, 'mouseenter', function()
			{
				rub.addClassName('in');
			});
			
			Event.observe(rub, 'mouseleave', function()
			{
				rub.removeClassName('in');
			});
		}
	});
}

/**
 * Affiche le sous-menus courant
 ******************************************/
var AfficheSousMenu = function(autres_sous_menus, sous_menu, lien)
{
	autres_sous_menus.each(function(autre)
	{
		MasqueSousMenu(autre.previousSiblings()[0], autre)
	});
	
	new Effect.BlindDown(sous_menu, {duration : 0.3 });
	lien.addClassName('on');
}

/**
 * Masque le sous-menu courant
 ******************************************/
var MasqueSousMenu = function(lien, sous_menu)
{
	new Effect.BlindUp(sous_menu,
	{
		duration : 0.3,
		afterFinish: function() { sous_menu.setStyle({height: 'auto'}); lien.removeClassName('on'); }
	});
}

/**
 * Ajoute une class "on" sur les blocs ncessitants un rollover
 ******************************************/
var RollOverBlocs = function(blocs)
{
	blocs.each(function(bloc)
	{
		Event.observe(bloc, 'mouseover', function()
		{
			if(bloc.hasClassName("first")) bloc.addClassName('first_on');
			else if(bloc.hasClassName("last")) bloc.addClassName('last_on');
			bloc.addClassName('on');
		});
		Event.observe(bloc, 'mouseout', function()
		{
			if(bloc.hasClassName("first_on")) bloc.removeClassName('first_on');
			else if(bloc.hasClassName("last_on")) bloc.removeClassName('last_on');
			bloc.removeClassName('on');
		});
	});
}

/**
 *  onglets ectus et events
 ******************************************/
var ActusEventsOnglets = function()
{
	$$('#remontees_actu_events .onglets a').each(function(onglet)
	{
		Event.observe(onglet, 'click', function()
		{
			$$('#remontees_actu_events .onglets a').each(function(a) { a.removeClassName('on'); });
			$$('#remontees_actu_events ul.contenu, #remontees_actu_events .liens li').each(function(contenu) { contenu.removeClassName('afficher'); });
			
			var id_contenu  = "contenu"+onglet.id.substring(6); // enlève "nav" et ajoute "niveau_2"
			var id_lien  = "lien"+onglet.id.substring(6); // enlève "nav" et ajoute "niveau_2"
			
			onglet.toggleClassName('on');
			$(id_contenu).toggleClassName('afficher');
			$(id_lien).toggleClassName('afficher');
		});
		
		onglet.onclick = function(){return false;}
	});
}

/**
 * Effet accordon sur la navigation contextuelle
 ******************************************/
function InitAccordeon()
{
	var accordeon = new menuMaker('col_gauche',{MenuEffect:'blind', MenuDuree:0.5});
}

/**
 * Cration et apparition des infobulles
 ******************************************/
function InitInfobulles()
{
	$$('#nav_contextuelle a > span').each(function(span)
	{
		txt_infobulle = span.innerHTML;
		
		var infobulle = Builder.node('div', {className:'infobulle', style:'display: none'},
		[
			Builder.node('span', {className:'g_infobulle'}),
			Builder.node('p', txt_infobulle),
			Builder.node('span', {className:'d_infobulle'})
		]);
		
		var lien = span.up('a');
		span.remove();
		
		lien.insert({after:infobulle});
		lien.onmouseover = function() { new Effect.toggle(infobulle,'appear', {duration : 0.5}); };
		lien.onmouseout = function() { new Effect.toggle(infobulle,'appear', {duration : 0.5}); };
	});
}

/**
 * Initialise les InfoBox
 ******************************************/
var InitInfoBox = function()
{
	$$('a.infobox').each(function(lien)
	{
		Event.observe(lien, 'click', function()
		{ 
			var ib = new infoBox(lien.href, {BoxSiteContent : "global", BoxCallback : "CallBackInfobox();"});
			ib.ouvrir();
		});
		lien.onclick = function() {return false;}
	});
}

/**
 * Supprime l'InfoBox courante et en ouvre
 * une autre
 ******************************************/
var SwitchInfobox = function(url)
{
	if($('infobox_box')) $('infobox_box').remove();
	var ib = new infoBox(url, {BoxSiteContent : "global", BoxCallback : "CallBackInfobox();"});
	ib.ouvrir();
}

/**
 * Callback des fonctions pour l'InfoBox 
 * courante
 ******************************************/
var CallBackInfobox = function()
{
	focusInput();
	RollOverImage({RollRech:'#infobox_include '});
	
	if($('form_inscription')) $('form_inscription').onsubmit = function() { return FormInscription(); }
	if($('recevoir_nl_ib')) $('recevoir_nl_ib').onsubmit = function() { return FormNewsletter(this); }

	if($('btn_inscription'))
	{
		var btn_inscription = $('btn_inscription');
		btn_inscription.onclick = function() { return false; }
		Event.observe(btn_inscription, 'click', function() { SwitchInfobox(this.href); });
	}
	
	if($('btn_champ_interets')) $('btn_champ_interets').onclick = function() { AfficherInterets(); return false; }
}

/**
 * Rechargement AJAX liste de rsultats
 ******************************************/
var ClassementListeResultats = function()
{
	var selects = $$('#classement_liste select');
	
	selects.each(function(el)
	{
		Event.observe(el, 'change', function() { RechargerListeResultats(); } );	
	});
	
	var RechargerListeResultats = function()
	{
		var parametres = "action=liste_resultats&page="+$$("body")[0].id;
		var cible = $('liste_resultats');
		var loading = '<li class="chargement last"><img src="./images/commun/chargement.gif" alt="Chargement" /></li>';
		
		/* Rcupration des id => value pour former la requte */
		selects.each(function(el)
		{
			if(el.value != "") parametres = parametres+"&"+el.id+"="+el.value;
		});
		
		new Ajax.Request('./_ajax.php?'+parametres,
		{
			onCreate : function() { cible.update(loading); },
			onSuccess: function(requester)
			{
				cible.update(requester.responseText);
				RollOverImage();
				RollOverBlocs($$('ul#liste_resultats li'));
				InitInfoBox();
			}
		});
	};
};

/**
 * Vrifie les champs obligatoire du 
 * formulaire pour devenir partenaire
 ******************************************/
var FormPartenaire = function()
{
	param_form = { mep: 'msg_champ', autoScroll: false, action: 'submit'};
	champs_form = {
		champ_type_pgm: {alerte:'Le type est obligatoire.'},
		champ_email: {type:'mel', alerte:'L\'email est obligatoire.'},
		champ_nom: {alerte:'Le nom est obligatoire.'},
		champ_prenom: {alerte:'Le prnom est obligatoire.'},
		champ_nom_soc: {alerte:'Le nom de la socit est obligatoire.'},
		champ_ville_soc: {alerte:'La ville est obligatoire.'},
		champ_pays_soc: {alerte:'Le pays est obligatoire.'}
	};
	var res = formVerif('devenez_partenaire', champs_form, param_form);
	
	if(res) EnvoiFormAJAX("form_partenaire");
	return false;
};


function correctPNG(){
	$$('img.fixpng').each( function(e){
		var imgID = (e.id) ? "id='" + e.id + "' " : "";
		var imgClass = (e.className) ? "class='" + e.className + "' " : "";
		var imgTitle = (e.title) ? 'title="'+e.title+'"'  : 'title="'+e.alt+'"';
		var imgStyle = "display:inline-block;" + e.style.cssText;
		if (e.align == "left") imgStyle = "float:left;" + imgStyle;
		if (e.align == "right") imgStyle = "float:right;" + imgStyle;
		var strNewHTML = "<span " + imgID + imgClass + imgTitle	+ " style=\"" + "width:" + e.width + "px; height:" + e.height + "px; "+"line-height:" + e.height + "px;" + imgStyle + ";" + "filter:progid:DXImageTransform.Microsoft.AlphaImageLoader"	+ "(src=\'" + e.src + "\', sizingMethod='scale');\"></span>";
		e.outerHTML = strNewHTML;
	});
}

function addRappelError(alertMesg)
{
	$j('#droite').find('.small-error, .small-success').remove();
	$j('form.encart_tel').before('<span class="small-error">' + alertMesg + '</span>');
}

var isCalling = false;
function frmRappel(url) {
  $j = jQuery.noConflict();
  param_form = {mep: 'msg_champ', autoScroll: false, action: 'submit'};
  champs_form = {};
  var temp = formVerif('frm_rappel', champs_form, param_form);
  if( $j('#droite #tel').val() != '' )
    {
    var re = new RegExp("^[0-9]{2}.[0-9]{2}.[0-9]{2}.[0-9]{2}.[0-9]{2}$");
    if ($j('#droite #tel').val().match(re) == null) {
      temp = false;
      addRappelError("Veuillez indiquer un num&eacute;ro de t&eacute;l&eacute;phone valide.");
} else {
if( isCalling ) {
return false;
}
isCalling = true;

$j.getJSON(url, {tel:$j('#tel').val(), format:'json'}, function(data) {
$j('#droite').find('.small-error, .small-success').remove();
if( undefined != data.erreur ) {
$j('form.encart_tel').before( data.erreur );
}
if( undefined != data.confirm ) {
  $j('form.encart_tel').before( data.confirm );
  $j('#droite #tel').val('');
}
isCalling = false;
});
}
} else {
addRappelError("Veuillez indiquer votre num&eacute;ro de t&eacute;l&eacute;phone");
}
return false;
//return temp;
}

/* ====================================
		Auto completetion

		
// Instanciation de la classe Autocompleter, pour le champ de saisie "villes"
new Ajax.Autocompleter(
    "frm_doc_ville",   // id du champ de formulaire
    "frm_doc_ville",  // id de l'élément utilisé pour les propositions
    "autocomplete.php",  // URL du script côté serveur
    {
        paramName: 'ville',  // Nom du paramètre reçu par le script serveur
        minChars: 2,   // Nombre de caractères minimum avant que des appels serveur ne soient effectués
        indicator: 'indicateur-chargement-ville',
        afterUpdateElement : function (input, li) {
                // Fonction appelée après choix de l'utilisateur
                $('code_insee').innerHTML = 'Code INSEE choisi : ' + li.id;
                $('code_insee').show();
            }
    });
*/
function $RF(el, radioGroup) {
	if($(el).type && $(el).type.toLowerCase() == 'radio') {
		var radioGroup = $(el).name;
		var el = $(el).form;
	} else if ($(el).tagName.toLowerCase() != 'form') {
		return false;
	}
	
	var checked = $(el).getInputs('radio', radioGroup).find(
		function(re) {return re.checked;}
	);
	return (checked) ? $F(checked) : null;
}

function $CF(el, radioGroup) {
    var form = $(el);
	var buttons = form.getInputs('checkbox', radioGroup);
	var checked = buttons.find(function(e){ 
		if(e.checked == true)
			return "oui";
	});
	return (checked) ? $F(checked) : null;
};

function checkdate(input){
	var val = $j(input).val();
	var validformat=/^\d{2}\/\d{2}\/\d{4}$/ //Basic check for format validity
	if (!validformat.test(val ))
		return false;
	else { //Detailed check for valid date ranges
		var monthfield=val.split("/")[1]
		var dayfield=val.split("/")[0]
		var yearfield=val.split("/")[2]
		var dayobj = new Date(yearfield, monthfield-1, dayfield)
		
		if( yearfield < 1900 || yearfield > 2100 ) {
			return false;
		}
		
		if ((dayobj.getMonth()+1!=monthfield)||(dayobj.getDate()!=dayfield)||(dayobj.getFullYear()!=yearfield))
			return false
		else
			return true
	}
	return true;
}

function buildDateField(selector)
{
	var $s = $j(selector);
	if( '' == $s.val() ) {
		$s.val('JJ/MM/AAAA');
	} else {
		$s.mask("99/99/9999");
	}
	$s.focus(function() {
		
		if( $s.val() == 'JJ/MM/AAAA' ) {
			$s.val('').mask("99/99/9999").focus();
		}		
	});
	$s.blur(function() { 
		//$s.unmask();
		/*setTimeout(function() {
			if( $j.trim($s.val()) == '' ) {
				$s.val('JJ/MM/AAAA');
			}
		}, 200);*/
	});
}

var jValidate = {
	
	isEmpty : function(selector) {
		return ( $j(selector).val() == null || $j(selector).val() == '' || $j(selector).val() == 0 );
	},
	
	selectIsEmpty : function(selector) {
		return ( $j(selector).multiselect('getChecked').length == 0 );
	}
	
};


var FormDoc = function(){
	param_form = { mep: 'msg_champ', autoScroll: false, action: 'submit'};
	champs_form = {
		'form-doc-tel': {alerte:'Le téléphone est obligatoire.'},
		'form-doc-email': {type:'mel', alerte:'L\'email est obligatoire.'},
		'form-doc-matieres': {alerte:'La matière est obligatoire.'},
		'form-doc-niveau': {alerte:'Le niveau est obligatoire.'}
	};
	return formVerif('form-doc', champs_form, param_form);
};
