function slideFolioLynx(col){
	// A chaque changement de page, le focus est le haut du formulaire
	window.location = "#misterassur_ancre";

	$("form_etapes").setStyle("background", "url(../img/apporteurs/lelynx/form_rail_"+col+".png)");

	$("form_etapes").getElements("li").removeClass("current");
	$("trigger"+col).addClass("current");

	// Formulaire : Effet slide
	var pos = ((col-1) * -600);
	var myFx = new Fx.Morph($("folio"), {duration: 1000, transition: Fx.Transitions.Sine.easeOut});
	myFx.start({"left": pos});
}

function slideFolio(col){
	// Marque blanche Lelynx.fr
	//	on appelle une fonction propre à l'apporteur
	if($$("input[name=code]").get("value") == "C020PH"){
		slideFolioLynx(col);

		return false;
	}

	// A chaque changement de page, le focus est le haut du formulaire
	window.location = "#misterassur_ancre";

	// Header du formulaire : Changement onglet
	$("form_etapes").getElements('li').each(
		function(obj, index){
			if(index < col)	obj.style.background = "url(../img/form_etape_feu_auto_on.png)";
			else			obj.style.background = "url(../img/form_etape_feu_auto_off.png)";
		}
	);

	$("form_etapes").getElements("li").removeClass("current");
	$("trigger"+col).addClass("current");

	// Header du formulaire - curseur : Effet slide
	var pos = 35 + ((col - 1) * 120);
	var myFx = new Fx.Morph($("form_etapes_cursor"), {duration: 1000, transition: Fx.Transitions.Sine.easeOut});
	myFx.start({"left": pos+"px"});

	// Formulaire : Effet slide
	var pos = ((col-1) * -600);
	var myFx = new Fx.Morph($("folio"), {duration: 1000, transition: Fx.Transitions.Sine.easeOut});
	myFx.start({"left": pos});
}

window.addEvent('domready', function(){
	Element.implement({   
		//implement show   
		show: function() {   
			this.setStyle('display','');   
		},   
		//implement hide   
		hide: function() {   
			this.setStyle('display','none');   
		}   
	});

	aide_src = "../img/form_aide.png";

	if($$("input[name=code]").get("value") == "C020PH"){
		aide_src = "../img/apporteurs/lelynx/form_btn_aide.png";

		$("form_etapes").getElements('li').each(
			function(obj, index){
				obj.innerHTML = "";
			}
		);
	}

	// Afficher/masquer des éléments du formulaire
	show_type_vehicule();
	show_vehicule();
	show_liste_vehicules("");
	show_permis();
	show_bonus_50("moto");
	show_bonus_50("auto");
	show_antecedents();
	show_retrait();
	show_resiliation();
	show_sinistres("moto");
	show_sinistres("auto");
	show_vehicule_assure();
	show_bridage();
	if($("insee_stationnement").value == "")	$("insee_stationnement").hide();
	if($("insee_travail").value == "")			$("insee_travail").hide();
	if($("insee").value == "")					$("insee").hide();

	// Nettoyage des valeurs par défaut - MonySpot
	nettoyage_monyspot();

	tab_aide_tag.each(
		function(obj, index){
			title = $(obj).getParent("tr").getElement("label");
			aide = $(obj).getParent("tr").getElements("td").getLast();
			aide.set("html", "");
			texte = tab_aide_texte[index];

			// Création de l'image d'aide
			var img = new Element('img', {
				'src': aide_src, 
				'title': title.innerHTML, 
				'rel': texte
			});
			img.inject(aide , 'top');

			// Déclaration de l'image en tant que TIP
			var toolTips = new Tips(img, {
				className: 'custom_tip'
			});
		}
	);

	// Affichage dynamique des marques
	$('marque').addEvent('change', function(){
		var req = new Request({
			method: 'post',
			url: '../inc/_liste_vehicule_moto.php',
			data: {
				'show':'cylindree',
				'marque':$('marque').value
			},
			onComplete: function(){	
				var xml = this.response.xml;
				var tab_cylindree = xml.getElementsByTagName("cylindree");

				$('cylindree').length = 1;
				$('modele').length = 1;

				for (i=0;i<tab_cylindree.length;i++)
				{
					thiscylindree = tab_cylindree.item(i).firstChild.data;

					// Ajout du modèle dans le select
					$('cylindree').options.add(new Option(thiscylindree, thiscylindree));
				}

				show_vehicule();
			}
		}).send();
	});

	// Affichage dynamique des modèles
	$('cylindree').addEvent('change', function(){
		var req = new Request({
			method: 'post',
			url: '../inc/_liste_vehicule_moto.php',
			data: {
				'show':'modele',
				'marque':$('marque').value,
				'cylindree':$('cylindree').value
			},
			onComplete: function(){		
				var xml = this.response.xml;
				var tab_modele = xml.getElementsByTagName("modele");

				$('modele').length = 1;

				for (i=0;i<tab_modele.length;i++)
				{
					thismodele = tab_modele.item(i).firstChild.data;

					// Ajout du modèle dans le select
					$('modele').options.add(new Option(thismodele, thismodele));
				}

				show_vehicule();
			}
		}).send();
	});

	// Affichage dynamique des versions
	$("modele").addEvent('change', function(){	show_liste_vehicules("");});

	$('form_etapes').getElements('li').addEvent('click', formulaire_valider);

	$('cp_stationnement').addEvent('blur', function(){	recup_ville('cp_stationnement');});
	$('cp_travail').addEvent('blur', function(){	recup_ville('cp_travail');});
	$('cp').addEvent('blur', function(){	recup_ville('cp');});

	$('type_vehicule').addEvent('change', show_type_vehicule);
	$('deja_assure').addEvent('change', show_permis);
	$('permis_radio_moto').addEvent('click', show_permis);
	$('permis_radio_auto').addEvent('click', show_permis);
	$('permis_radio_bsr').addEvent('click', show_permis);
	$('moto_date_permis_a').addEvent('change', function(){	calcul_annees_assurance('moto');});
	$('auto_date_permis_a').addEvent('change', function(){	calcul_annees_assurance('auto');});
	$('bsr_date_permis_a').addEvent('change', function(){	calcul_annees_assurance('bsr');});
	$('moto_annees_assurance').addEvent('change', function(){	calcul_bonus('moto');});
	$('auto_annees_assurance').addEvent('change', function(){	calcul_bonus('auto');});
	$('moto_bonus_malus').addEvent('change', function(){	show_bonus_50('moto');});
	$('auto_bonus_malus').addEvent('change', function(){	show_bonus_50('auto');});

	$('retrait_1').addEvent('click', show_retrait);
	$('retrait_0').addEvent('click', show_retrait);
	$('suspension_1').addEvent('click', show_retrait);
	$('suspension_0').addEvent('click', show_retrait);
	$('suspension_motif').addEvent('click', show_retrait);
	$('annulation_1').addEvent('click', show_retrait);
	$('annulation_0').addEvent('click', show_retrait);
	$('annulation_motif').addEvent('click', show_retrait);
	$('resiliation_motif').addEvent('change', show_resiliation);
	$('nb_sinistres_moto').addEvent('change', function(){	show_sinistres('moto');});
	$('nb_sinistres_auto').addEvent('change', function(){	show_sinistres('auto');});
	$('vehicule_assure').addEvent('change', show_vehicule_assure);

	$('moto_date_permis_a').addEvent('change', show_bridage);
	$('date_naissance_a').addEvent('change', show_bridage);

	// Fonction de validation des étapes du formulaire
	$$('input.bouton_precedent').addEvent('click', formulaire_valider);
	$$('input.bouton_suivant').addEvent('click', formulaire_valider);
	$$('input.bouton_valider').addEvent('click', formulaire_valider);
});

// Nettoyage des valeurs par défaut - MonySpot
function nettoyage_monyspot(){
	if ($("nom").get('value') == "MON NOM"){
		$("nom").set("value", "");
	}

	if ($("prenom").get('value') == "Mon Prenom"){
		$("prenom").set("value", "");
	}

	if ($("adresse").get('value') == "mon adresse"){
		$("adresse").set("value", "") ;
	}

	if ($("email").get('value').slice(-13) == "@monyspot.com"){
		$("email").set("value", ""); 
	}

	if ($("tel_mobile").get('value') == "0606060606"){
		$("tel_mobile").set("value", "") ; 
	}
}

// Affichage dynamique de la liste des véhicules
function show_liste_vehicules(code_sra){
	var req = new Request({
		method: 'post',
		url: '../inc/_liste_vehicule_moto.php',
		data: {
			'show':'code_sra',
			'marque':$('marque').value,
			'cylindree':$('cylindree').value,
			'modele':$('modele').value
		},
		onComplete: function(txt){
			var xml = this.response.xml;

			$("liste_vehicule_sra").getElement("tbody").getElements("tr").destroy();
			$$("input[name=code_sra]").removeEvent('click');

			var tab = xml.getElementsByTagName("vehicule");

			for(i=0;i<tab.length;i++){
				categorie = xml.getElementsByTagName("categorie").item(i).firstChild.data;

				if(tab.length == 1 || xml.getElementsByTagName("code_sra").item(i).firstChild.data == code_sra){
					code_sra_checked = " checked=\"checked\"";
					setCategorieVehicule(categorie);
				}else
					code_sra_checked = "";

				// Génère le row avec les infos du dossier
				var newTrVehicule = new Element("tr");
				var newTd = new Element("td", {"html": "<input type=\"radio\" id=\"code_sra_"+xml.getElementsByTagName("code_sra").item(i).firstChild.data+"\" name=\"code_sra\" value=\""+xml.getElementsByTagName("code_sra").item(i).firstChild.data+"\"  "+code_sra_checked+" />"});
				newTd.inject(newTrVehicule);
				var newTd = new Element("td", {"text": categorie});
				newTd.inject(newTrVehicule);
				var newTd = new Element("td", {"text": xml.getElementsByTagName("puissance_adm").item(i).firstChild.data});
				newTd.inject(newTrVehicule);
				var newTd = new Element("td", {"text": xml.getElementsByTagName("cnit").item(i).firstChild.data});
				newTd.inject(newTrVehicule);
				var newTd = new Element("td", {"text": xml.getElementsByTagName("type_mines").item(i).firstChild.data});
				newTd.inject(newTrVehicule);
				var newTd = new Element("td", {"text": xml.getElementsByTagName("date_fabrication").item(i).firstChild.data});
				newTd.inject(newTrVehicule);

				newTrVehicule.inject($("liste_vehicule_sra").getElement("tbody"));
			}

			$$("input[name=code_sra]").addEvent('click', function(){	setCategorieVehicule(categorie);});

			show_vehicule();
		}
	}).send();
}

// Modification de la catégorie du véhicule
function setCategorieVehicule(categorie){
	$("categorie").value = categorie;
}

// Modification du type de véhicule
function show_type_vehicule(){
	type_vehicule = $('type_vehicule').value;

	if(type_vehicule == 2){
		$('date_achat_a').getParent('tr').hide();
		$('date_livraison_a').getParent('tr').show();
	} else{
		$('date_achat_a').getParent('tr').show();
		$('date_livraison_a').getParent('tr').hide();
	}

	if(type_vehicule != 4){
		$('nb_vehicules').value = 1;
		$('kilometre').getParent('tr').show();
		$('annees_ancien_vehicule').getParent('tr').show();
		$('vehicule_assure').getParent('tr').show();
		show_vehicule_assure();
	} else{
		$('nb_vehicules').value = 0;
		$('kilometre').getParent('tr').hide();
		$('annees_ancien_vehicule').getParent('tr').hide();
		$('vehicule_assure').getParent('tr').hide();
		$('compagnie').getParent('tr').hide();
		$('mois_echeance').getParent('tr').hide();
	}
}

// Sélection du véhicule
function show_vehicule(){
	if($('marque').value != 0 && $('marque').value != "-1")		$('cylindree').getParent('tr').show(); else $('cylindree').getParent('tr').hide();
	if($('cylindree').value != 0)	$('modele').getParent('tr').show(); else $('modele').getParent('tr').hide();
	if($("modele").value != 0){
		$("bloc_liste_vehicule_sra").show();
	} else{
		$("bloc_liste_vehicule_sra").hide();
		$("liste_vehicule_sra").getElement("tbody").getElements("tr").destroy();
	}
}

function show_permis(){
	deja_assure = $('deja_assure').value;

	// Intitulés d'assurance
	if(deja_assure > 0)	$$("span.table_permis_assurance").show();
	else				$$("span.table_permis_assurance").hide();

	// Permis BSR
	if($('permis_radio_bsr').checked){
		$("bsr_date_permis_a").getParent("tr").show();
		if(deja_assure > 0){
			$("bsr_annees_assurance").getParent("span").show();
		} else{
			$("bsr_annees_assurance").getParent("span").hide();
		}
	} else{
		$("bsr_date_permis_a").getParent("tr").hide();
	}

	// Permis MOTO
	if($('permis_radio_moto').checked){
		$("moto_date_permis_a").getParent("tr").show();
		if(deja_assure > 0){
			$("moto_annees_assurance").getParent("span").show();
			$("moto_bonus_malus").getParent("span").show();
			$("moto_mois_assurance_36").getParent("tr").show();
			show_bonus_50("moto");
			$("table_antecedents").getParent("div").getParent("div").show();
		} else{
			$("moto_annees_assurance").getParent("span").hide();
			$("moto_bonus_malus").getParent("span").hide();
			$("moto_mois_assurance_36").getParent("tr").hide();
			$("moto_bonus_50").getParent("tr").hide();
			$("table_antecedents").getParent("div").getParent("div").hide();
		}
	} else{
		$("moto_date_permis_a").getParent("tr").hide();
		$("moto_mois_assurance_36").getParent("tr").hide();
		$("moto_bonus_50").getParent("tr").hide();
		$("table_antecedents").getParent("div").getParent("div").hide();
	}

	// Permis AUTO
	if($('permis_radio_auto').checked){
		$("auto_date_permis_a").getParent("tr").show();
		$("auto_conduite_accompagnee_0").getParent("tr").show();
		$("nb_sinistres_auto").getParent("div").getParent("div").show();
		if(deja_assure > 0){
			$("auto_annees_assurance").getParent("span").show();
			$("auto_bonus_malus").getParent("span").show();
			$("auto_mois_assurance_36").getParent("tr").show();
			show_bonus_50("auto");
		} else{
			$("auto_annees_assurance").getParent("span").hide();
			$("auto_bonus_malus").getParent("span").hide();
			$("auto_mois_assurance_36").getParent("tr").hide();
			$("auto_bonus_50").getParent("tr").hide();
		}
	} else{
		$("auto_date_permis_a").getParent("tr").hide();
		$("auto_conduite_accompagnee_0").getParent("tr").hide();
		$("auto_mois_assurance_36").getParent("tr").hide();
		$("auto_bonus_50").getParent("tr").hide();
		$("nb_sinistres_auto").getParent("div").getParent("div").hide();
	}
}

function calcul_annees_assurance(permis){
	date_permis_a = $(permis+'_date_permis_a').value;

	if(date_permis_a != 0){
		var maintenant = new Date();
		var annee = maintenant.getFullYear();
		annees_assurance = eval(annee) - eval(date_permis_a);

		$(permis+'_annees_assurance').value = Math.min(annees_assurance, 20);
	}

	// Cas particuliers
	if(permis != "bsr"){
		calcul_bonus(permis);
		calcul_mois_assurance_36(permis);
	}
}

function calcul_bonus(permis){
	annees_assurance = $(permis+'_annees_assurance').value;

	b = 100;
	for(i=1; i<=annees_assurance; i++){
		b = Math.max(50, Math.floor(b * 0.95));
	}

	$(permis+'_bonus_malus').value = b;

	show_bonus_50(permis);

	// Cas particulier
	if(permis == "moto")	show_antecedents();
}

function show_bonus_50(permis){
	bonus_malus = $(permis+'_bonus_malus').value;

	if(bonus_malus == 50)	$(permis+'_bonus_50').getParent('tr').show();
	else					$(permis+'_bonus_50').getParent('tr').hide();
}

function show_antecedents(){
	annees_assurance = $("moto_annees_assurance").value;
	annees_assurance = Math.max(1, annees_assurance);

	table = $('table_antecedents').getElements('tr').each(
		function(obj, index){
			if(index <= annees_assurance)	obj.show();
			else							obj.hide();
		}
	);
}

function calcul_mois_assurance_36(permis){
	annees_assurance = $(permis+'_annees_assurance').value;

	if(annees_assurance > 0)	mois_assurance_36 = Math.min(36, annees_assurance * 12);
	else						mois_assurance_36 = 1;

	$(permis+'_mois_assurance_36').value = mois_assurance_36;
}

function show_retrait(){
	if($('retrait_1').checked){
		$('form_bloc_suspension').show();
		$('form_bloc_annulation').show();

		// Suspension
		if($('suspension_1').checked){
			$('date_suspension_a').getParent("tr").show();
			$('suspension_duree').getParent("tr").show();
			$('suspension_motif').getParent("tr").show();

			if($('suspension_motif').value == 1){
				$('suspension_alcool_taux').getParent("tr").show();
				$('suspension_alcool_test').getParent("tr").show();
			} else{
				$('suspension_alcool_taux').getParent("tr").hide();
				$('suspension_alcool_test').getParent("tr").hide();
			}
		} else{
			$('date_suspension_a').getParent("tr").hide();
			$('suspension_duree').getParent("tr").hide();
			$('suspension_motif').getParent("tr").hide();
			$('suspension_alcool_taux').getParent("tr").hide();
			$('suspension_alcool_test').getParent("tr").hide();
		}

		// Annulation
		if($('annulation_1').checked){
			$('date_annulation_a').getParent("tr").show();
			$('annulation_duree').getParent("tr").show();
			$('annulation_motif').getParent("tr").show();

			if($('annulation_motif').value == 1){
				$('annulation_alcool_taux').getParent("tr").show();
				$('annulation_alcool_test').getParent("tr").show();
			} else{
				$('annulation_alcool_taux').getParent("tr").hide();
				$('annulation_alcool_test').getParent("tr").hide();
			}
		} else{
			$('date_annulation_a').getParent("tr").hide();
			$('annulation_duree').getParent("tr").hide();
			$('annulation_motif').getParent("tr").hide();
			$('annulation_alcool_taux').getParent("tr").hide();
			$('annulation_alcool_test').getParent("tr").hide();
		}
	} else{
		$('form_bloc_suspension').hide();
		$('form_bloc_annulation').hide();
	}
}

function show_resiliation(){
	resiliation = $('resiliation_motif').value;

	if(resiliation > 0){
		$('date_resiliation_a').getParent('tr').show();
	} else{
		$('date_resiliation_a').getParent('tr').hide();
	}
}

function show_sinistres(service){
	nb_sin = $("nb_sinistres_"+service).value;

	if(nb_sin > 0){
		$("table_sinistres_"+service).show();

		table = $("table_sinistres_"+service).getElements("tr").each(
			function(obj, index){
				if(index <= nb_sin)	obj.show();
				else				obj.hide();
			}
		);
	} else{
		$("table_sinistres_"+service).hide();
	}
}

function show_vehicule_assure(){
	vehicule_assure = $('vehicule_assure').value;

	if(vehicule_assure > 0){
		$('compagnie').getParent('tr').show();
		$('mois_echeance').getParent('tr').show();
	} else{
		$('compagnie').getParent('tr').hide();
		$('mois_echeance').getParent('tr').hide();
	}
}

function recup_ville(cp){
	if(cp == "cp_stationnement")	var insee = "insee_stationnement";
	else if(cp == "cp_travail")		var insee = "insee_travail";
	else							var insee = "insee";

	$(insee).options.length = 0;

	if($(cp).value != "" && $(cp).value.length >= 5){
		var req = new Request({
			method: 'post',
			url: '../inc/_liste_ville.php',
			data: {
				'code_postal':$(cp).value
			},
			onComplete: function(){				
				var xml = this.response.xml;
				var tab_insee = xml.getElementsByTagName("insee");
				var tab_ville = xml.getElementsByTagName("ville");

				for (i=0;i<tab_insee.length;i++){
					thisinsee = tab_insee.item(i).firstChild.data;
					thisville = tab_ville.item(i).firstChild.data;

					var comboBox  = new Element('option', {'value': thisinsee, 'text': thisville});
					$(insee).adopt(comboBox);
				}

				$(insee).show();
			}
		}).send();
	} else{
		$(insee).hide();
	}
}

function show_bridage(){
	if($("permis_radio_moto").checked){
		var maintenant = new Date();

		var annee = maintenant.getFullYear();
		age = eval(annee) - eval($("date_naissance_a").value);

		var annee = maintenant.getFullYear();
		annees_assurance = eval(annee) - eval($("moto_date_permis_a").value);

		if(age <= 21 && annees_assurance <= 2){
			$("bridage_0").getParent("div").getParent("div").show();
		} else{
			$("bridage_0").getParent("div").getParent("div").hide();
		}
	} else{
		$("bridage_0").getParent("div").getParent("div").hide();
	}
}

function date_format(d, m, Y){
	date = new Date();
	date.setFullYear(Y);
	date.setMonth(m-1);
	date.setDate(d);

	return date;
}

function formulaire_valider(){
	licurrent = $("form_etapes").getElements("li[class=current]").getLast().get("id");
	num_page = parseInt(licurrent.replace("trigger", ""));
	num_page_suiv = String(num_page+1);
	num_page_prec = String(num_page-1);
	var msg = "";
	date_jour = new Date();
	date_jour.setHours(23);
	date_jour.setMinutes(59);
	$$("label").setStyle('color', '#000');

	if(num_page == 1){ // Projet
		if($("date_mec_a").value == 0){
			msg+= "\n- "+$("date_mec_a").getParent('tr').getElement('label').innerHTML;
			$("date_mec_a").getParent('tr').getElement('label').style.color = "red";
		}
		if($('type_vehicule').value == 2){
			if($("date_livraison_a").value == 0){
				msg+= "\n- "+$("date_livraison_a").getParent('tr').getElement('label').innerHTML;
				$("date_livraison_a").getParent('tr').getElement('label').style.color = "red";
			}
			if($("date_mec_a").value > 0 && $("date_livraison_a").value > 0 && $("date_mec_m").value > 0 && $("date_livraison_m").value > 0){
				date_mec = date_format($("date_mec_j").value, $("date_mec_m").value, $("date_mec_a").value);
				date_livraison = date_format($("date_livraison_j").value, $("date_livraison_m").value, $("date_livraison_a").value);

				if(date_livraison.getTime() < date_mec.getTime()){
					msg+= "\n- La date de livraison ne peut être inférieure à la date de mise en circulation";
					$("date_livraison_a").getParent('tr').getElement('label').style.color = "red";
				}
			}
		} else{
			if($("date_achat_a").value == 0){
				msg+= "\n- "+$("date_achat_a").getParent('tr').getElement('label').innerHTML;
				$("date_achat_a").getParent('tr').getElement('label').style.color = "red";
			}
			if($("date_mec_a").value > 0 && $("date_achat_a").value > 0 && $("date_mec_m").value > 0 && $("date_achat_m").value > 0){
				date_mec = date_format($("date_mec_j").value, $("date_mec_m").value, $("date_mec_a").value);
				date_achat = date_format($("date_achat_j").value, $("date_achat_m").value, $("date_achat_a").value);

				if(date_achat.getTime() < date_mec.getTime()){
					msg+= "\n- La date d'achat ne peut être inférieure à la date de mise en circulation";
					$("date_achat_a").getParent('tr').getElement('label').style.color = "red";
				}
			}
		}
		if($("marque").value == 0){
			msg+= "\n- "+$("marque").getParent('tr').getElement('label').innerHTML;
			$("marque").getParent('tr').getElement('label').style.color = "red";
		}
		else if($("cylindree").value == 0){
			msg+= "\n- "+$("cylindree").getParent('tr').getElement('label').innerHTML;
			$("cylindree").getParent('tr').getElement('label').style.color = "red";
		}
		else if($("modele").value == 0){
			msg+= "\n- "+$("modele").getParent('tr').getElement('label').innerHTML;
			$("modele").getParent('tr').getElement('label').style.color = "red";
		}
		else{
			code_sra = false;
			$$("input[name=code_sra]").each(
				function(obj, index){
					if(obj.checked)	code_sra = true;
				}
			);

			if(code_sra == false){
				msg+= "\n- Vous devez sélectionner un véhicule.";
			}
		}
	}

	else if(num_page == 2){ // Conducteur(s)
		if(this.get("class") == "bouton_suivant" || this.get("id") == "trigger"+num_page_suiv)
			{
			if($("date_naissance_a").value == 0){
				msg+= "\n- "+$("date_naissance_a").getParent('tr').getElement('label').innerHTML;
				$("date_naissance_a").getParent('tr').getElement('label').style.color = "red";
			}

			// QUAD
			if($("categorie").value == "QUAD"){
				// Cylindrée >50cc : Permis AUTO ou MOTO obligatoires
				if($("cylindree").value > 50 && $("permis_radio_moto").checked == false && $("permis_radio_auto").checked == false){
					msg+= "\n- Il vous faut au minimum un permis MOTO ou AUTO pour assurer un QUAD avec une cylindrée > 50cc.";
					$("permis_radio_moto").getParent('tr').getElement('label').style.color = "red";
				}
				// Cylindrée 50cc : Permis BSR ou MOTO ou AUTO obligatoires
				else if($("cylindree").value == 50 && $("permis_radio_bsr").checked == false && $("permis_radio_moto").checked == false && $("permis_radio_auto").checked == false){
					msg+= "\n- Il vous faut au minimum un permis BSR ou MOTO ou AUTO pour assurer un QUAD avec une cylindrée de 50cc.";
					$("permis_radio_moto").getParent('tr').getElement('label').style.color = "red";
				}
			}
			// AUTRES catégories
			else{
				// Aucun permis
				if($("cylindree").value > 50 && $("permis_radio_bsr").checked == false && $("permis_radio_moto").checked == false && $("permis_radio_auto").checked == false){
					msg+= "\n- "+$("permis_radio_moto").getParent('tr').getElement('label').innerHTML;
					$("permis_radio_moto").getParent('tr').getElement('label').style.color = "red";
				}
				// Cylindrée >50cc : Permis AUTO ou MOTO obligatoires
				else if($("cylindree").value > 50 && $("permis_radio_moto").checked == false && $("permis_radio_auto").checked == false){
					msg+= "\n- Il vous faut au minimum un permis MOTO ou AUTO pour assurer une cylindrée > 50cc.";
					$("permis_radio_moto").getParent('tr').getElement('label').style.color = "red";
				}
				// Cylindrée >125cc : Permis MOTO obligatoire
				else if($("cylindree").value > 125 && $("permis_radio_moto").checked == false && $("permis_radio_auto").checked == true){
					msg+= "\n- Il vous faut au minimum un permis MOTO pour assurer une cylindrée > 125cc.";
					$("permis_radio_moto").getParent('tr').getElement('label').style.color = "red";
				}
			}

			if($("permis_radio_bsr").checked == true && $("bsr_date_permis_a").value == 0){
				msg+= "\n- L'année du brevet BSR.";
				$("permis_radio_bsr").getParent('tr').getElement('label').style.color = "red";
			}
			if($("permis_radio_moto").checked == true && $("moto_date_permis_a").value == 0){
				msg+= "\n- L'année du permis MOTO.";
				$("permis_radio_moto").getParent('tr').getElement('label').style.color = "red";
			}
			if($("permis_radio_auto").checked == true && $("auto_date_permis_a").value == 0){
				msg+= "\n- L'année du permis AUTO.";
				$("permis_radio_auto").getParent('tr').getElement('label').style.color = "red";
			}

			// Date de permis <= date du jour
			if($("permis_radio_bsr").checked == true && $("bsr_date_permis_a").value != 0){
				date_permis = date_format($("bsr_date_permis_j").value, $("bsr_date_permis_m").value, $("bsr_date_permis_a").value);

				if(date_permis.getTime() > date_jour.getTime()){
					msg+= "\n- La date du brevet BSR ne peut pas être supérieure à la date du jour.";
					$("permis_radio_bsr").getParent('tr').getElement('label').style.color = "red";
				}

				// Age >= 14 ans pour le permis BSR
				age = $("bsr_date_permis_a").value - $("date_naissance_a").value;

				if(age < 14){
					msg+= "\n- Il faut avoir eu au minimum 14 ans pour obtenir le permis BSR.";
					$("bsr_date_permis_a").getParent('tr').getElement('label').style.color = "red";
				}
			}
			if($("permis_radio_moto").checked == true && $("moto_date_permis_a").value != 0){
				date_permis = date_format($("moto_date_permis_j").value, $("moto_date_permis_m").value, $("moto_date_permis_a").value);

				if(date_permis.getTime() > date_jour.getTime()){
					msg+= "\n- La date du permis MOTO ne peut pas être supérieure à la date du jour.";
					$("permis_radio_moto").getParent('tr').getElement('label').style.color = "red";
				}

				// Age >= 16 ans pour le permis MOTO
				age = $("moto_date_permis_a").value - $("date_naissance_a").value;

				if(age < 16){
					msg+= "\n- Il faut avoir eu au minimum 16 ans pour obtenir le permis MOTO.";
					$("moto_date_permis_a").getParent('tr').getElement('label').style.color = "red";
				}
			}
			if($("permis_radio_auto").checked == true && $("auto_date_permis_a").value != 0){
				date_permis = date_format($("auto_date_permis_j").value, $("auto_date_permis_m").value, $("auto_date_permis_a").value);

				if(date_permis.getTime() > date_jour.getTime()){
					msg+= "\n- La date du permis AUTO ne peut pas être supérieure à la date du jour.";
					$("permis_radio_auto").getParent('tr').getElement('label').style.color = "red";
				}

				// Age >= 18 ans pour le permis AUTO
				age = $("auto_date_permis_a").value - $("date_naissance_a").value;

				if(age < 18){
					msg+= "\n- Il faut avoir eu au minimum 18 ans pour obtenir le permis AUTO.";
					$("auto_date_permis_a").getParent('tr').getElement('label').style.color = "red";
				}
			}

			// Antécédents
			if($("permis_radio_moto").checked == true && $("moto_date_permis_a").value > 0){
				ant_with = 0;
				ant_total = 0;
				annees_assurance = $("moto_annees_assurance").value;
				annees_assurance = Math.max(1, annees_assurance);

				table = $('table_antecedents').getElements('tr').each(
					function(obj, index){
						if(index <= annees_assurance && index > 0){
							ant_with = 1;
							ant_total+= $("antecedents_mois_"+index).value;
						}
					}
				);

				// Si tous les mois d'antécédents proposés sont à 0
				if(msg == "" && ant_with == 1 && ant_total == 0 && !confirm("Vous n'avez pas indiqué de mois d'antécédent d'assurance. Confirmez-vous cette information ?")){
					return false;
				}
			}

			// Message de confirmation pour les 50cc sans permis (hors QUAD)
			if(msg == "" && $("categorie").value != "QUAD" && $("cylindree").value == 50 && $("permis_radio_bsr").checked == false && $("permis_radio_moto").checked == false && $("permis_radio_auto").checked == false && !confirm("Êtes-vous sûr(e) de n'avoir aucun permis ?")){
				return false;
			}
		}
		else if(this.get("class") == "bouton_precedent" || this.get("id") == "trigger"+num_page_prec) slideFolio(num_page - 1);
	}

	else if(num_page == 3){ // Antécédents
		if(this.get("class") == "bouton_suivant" || this.get("id") == "trigger"+num_page_suiv)
			{
			if($('retrait_1').checked && $('suspension_1').checked && $("date_suspension_a").value == 0){
				msg+= "\n- "+$("date_suspension_a").getParent('tr').getElement('label').innerHTML;
				$("date_suspension_a").getParent('tr').getElement('label').style.color = "red";
			}

			if($('retrait_1').checked && $('annulation_1').checked && $("date_annulation_a").value == 0){
				msg+= "\n- "+$("date_annulation_a").getParent('tr').getElement('label').innerHTML;
				$("date_annulation_a").getParent('tr').getElement('label').style.color = "red";
			}

			// Sinistres MOTO
			nb_sin = $("nb_sinistres_moto").value;

			if(nb_sin > 0){
				for(i=1; i<= nb_sin; i++){
					if($("date_sinistre_a_moto_"+i).value == 0){
						msg+= "\n- Année du sinistre MOTO "+i;
					}
				}
			}

			// Sinistres AUTO
			if($("permis_radio_auto").checked){
				nb_sin = $("nb_sinistres_auto").value;

				if(nb_sin > 0){
					for(i=1; i<= nb_sin; i++){
						if($("date_sinistre_a_auto_"+i).value == 0){
							msg+= "\n- Année du sinistre AUTO "+i;
						}
					}
				}
			}
		}
		else if(this.get("class") == "bouton_precedent" || this.get("id") == "trigger"+num_page_prec) slideFolio(num_page - 1);
	}

	else if(num_page == 4){ // Véhicule
		if(this.get("class") == "bouton_suivant" || this.get("id") == "trigger"+num_page_suiv){
			if($("cp_stationnement").value == "" || $("cp_stationnement").value.length < 5 || isNaN($("cp_stationnement").value) || $("insee_stationnement").value == ""){
				msg+= "\n- "+$("cp_stationnement").getParent('tr').getElement('label').innerHTML;
				$("cp_stationnement").getParent('tr').getElement('label').style.color = "red";
			}
			if($("cp_travail").value == "" || $("cp_travail").value.length < 5 || isNaN($("cp_travail").value) || $("insee_travail").value == ""){
				msg+= "\n- "+$("cp_travail").getParent('tr').getElement('label').innerHTML;
				$("cp_travail").getParent('tr').getElement('label').style.color = "red";
			}

			date_effet = date_format($("date_effet_j").value, $("date_effet_m").value, $("date_effet_a").value);

			// Date d'effet inférieure à la date du jour
			if(date_effet.getTime() < date_jour.getTime()){
				msg+= "\n- La date d'effet doit être supérieure à la date du jour.";
			}
		}
		else if(this.get("class") == "bouton_precedent" || this.get("id") == "trigger"+num_page_prec) slideFolio(num_page - 1);
	}

	else if(num_page == 5){ // Coordonnées
		if(this.get("class") == "bouton_valider" || this.get("id") == "trigger"+num_page_suiv){
			var verif_nom = new RegExp(/[^a-zàâéèêîôûù\'\-\s]/gi);

			if($("nom").value == "" || $("nom").value.length == 1 || verif_nom.test($("nom").value) || $("nom").value == "MON NOM"){
				msg+= "\n- "+$("nom").getParent('tr').getElement('label').innerHTML;
				$("nom").getParent('tr').getElement('label').style.color = "red";
			}

			var verif_prenom = new RegExp(/[^a-zàâéèêîôûù\'\-\s]/gi);

			if($("prenom").value == "" || $("prenom").value.length == 1 || verif_prenom.test($("prenom").value) || $("prenom").value == "Mon Prenom"){
				msg+= "\n- "+$("prenom").getParent('tr').getElement('label').innerHTML;
				$("prenom").getParent('tr').getElement('label').style.color = "red";
			}
			if($("adresse").value == "" || $("adresse").value.length < 5 || $("adresse").value == "mon adresse"){
				msg+= "\n- "+$("adresse").getParent('tr').getElement('label').innerHTML;
				$("adresse").getParent('tr').getElement('label').style.color = "red";
			}
			if($("cp").value == "" || $("cp").value.length < 5 || isNaN($("cp").value) || $("insee").value == ""){
				msg+= "\n- "+$("cp").getParent('tr').getElement('label').innerHTML;
				$("cp").getParent('tr').getElement('label').style.color = "red";
			}

			var verif_email = new RegExp(/^[A-Za-z0-9._-]+@[A-Za-z0-9.-]{2,}[.][A-Za-z]{2,3}$/);

			if(!verif_email.test($("email").value)){
				msg+= "\n- "+$("email").getParent('tr').getElement('label').innerHTML;
				$("email").getParent('tr').getElement('label').style.color = "red";
			}
			else if($("email").get('value').slice(-3) != 'org' && $("email").get('value').slice(-3) != 'com' && $("email").get('value').slice(-3) != 'net' && 
			   $("email").get('value').slice(-2) != 'fr' && $("email").get('value').slice(-2) != 'eu') {
				msg+= "\n- "+$("email").getParent('tr').getElement('label').innerHTML;
				$("email").getParent('tr').getElement('label').style.color = "red";
			}
			else if($("email").get('value').slice(-17) == '@adresseemail.org' || $("email").get('value').slice(-17) == '@adresseemail.com' || 
			   $("email").get('value').slice(-17) == '@adresseemail.net' || $("email").get('value').slice(-16) == '@adresseemail.fr' || 
			   $("email").get('value').slice(-16) == '@adresseemail.eu' || 
			   $("email").get('value').slice(-16) == '@adresseemail.org' || $("email").get('value').slice(-16) == '@adresseemail.com' || 
			   $("email").get('value').slice(-16) == '@adresseemail.net' || $("email").get('value').slice(-15) == '@adresseemail.fr' || 
			   $("email").get('value').slice(-15) == '@adresseemail.eu' || 
			   $("email").get('value').slice(-9) == '@mail.org' || $("email").get('value').slice(-9) == '@mail.com' || 
			   $("email").get('value').slice(-9) == '@mail.net' || $("email").get('value').slice(-8) == '@mail.fr' || 
			   $("email").get('value').slice(-8) == '@mail.eu' || 
			   $("email").get('value').slice(-8) == '@gmx.org' || $("email").get('value').slice(-8) == '@gmx.com' || 
			   $("email").get('value').slice(-8) == '@gmx.net' || $("email").get('value').slice(-7) == '@gmx.fr' || 
			   $("email").get('value').slice(-7) == '@gmx.eu' || 
			   $("email").get('value').slice(-13) == '@facebook.org' || $("email").get('value').slice(-13) == '@facebook.com' || 
			   $("email").get('value').slice(-13) == '@facebook.net' || $("email").get('value').slice(-12) == '@facebook.fr' || 
			   $("email").get('value').slice(-12) == '@facebook.eu' || 
			   $("email").get('value').slice(-11) == '@meetic.org' || $("email").get('value').slice(-11) == '@meetic.com' || 
			   $("email").get('value').slice(-11) == '@meetic.net' || $("email").get('value').slice(-10) == '@meetic.fr' || 
			   $("email").get('value').slice(-10) == '@meetic.eu' || $("email").get('value').slice(-10) == '@email.org' || 
			   $("email").get('value').slice(-10) == '@email.com' || $("email").get('value').slice(-10) == '@email.net' || 
			   $("email").get('value').slice(-9) == '@email.fr' || $("email").get('value').slice(-9) == '@email.eu'){
				msg+= "\n- "+$("email").getParent('tr').getElement('label').innerHTML;
				$("email").getParent('tr').getElement('label').style.color = "red";
			}

			if($("tel_mobile").value != "" || $("tel_bureau").value != "" || $("tel_domicile").value != ""){
				var verif_tel = new RegExp(/^(06|07)[0-9]{8}/gi);

				if($("tel_mobile").value != "" && !verif_tel.test($("tel_mobile").value)){
					msg+= "\n- "+$("tel_mobile").getParent('tr').getElement('label').innerHTML;
					$("tel_mobile").getParent('tr').getElement('label').style.color = "red";
				}

				var verif_tel = new RegExp(/^(01|02|03|04|05|06|07|08|09)[0-9]{8}/gi);

				if($("tel_bureau").value != "" && !verif_tel.test($("tel_bureau").value)){
					msg+= "\n- "+$("tel_bureau").getParent('tr').getElement('label').innerHTML;
					$("tel_bureau").getParent('tr').getElement('label').style.color = "red";
				}

				var verif_tel = new RegExp(/^(01|02|03|04|05|06|07|08|09)[0-9]{8}/gi);

				if($("tel_domicile").value != "" && !verif_tel.test($("tel_domicile").value)){
					msg+= "\n- "+$("tel_domicile").getParent('tr').getElement('label').innerHTML;
					$("tel_domicile").getParent('tr').getElement('label').style.color = "red";
				}
			} else{
				msg+= "\n- un numéro de téléphone (mobile, bureau, domicile)";
				$("tel_mobile").getParent('tr').getElement('label').style.color = "red";
				$("tel_bureau").getParent('tr').getElement('label').style.color = "red";
				$("tel_domicile").getParent('tr').getElement('label').style.color = "red";
			}

			// Données personnelles
			if($("emailing_0") && $("emailing_0").checked == false && $("emailing_1").checked == false){
				msg+= "\n- "+$("emailing_0").getParent('table').getElement('label').innerHTML;
				$("emailing_0").getParent('table').getElement('label').style.color = "red";
			}
		}
		else if(this.get("class") == "bouton_precedent" || this.get("id") == "trigger"+num_page_prec) slideFolio(num_page - 1);
	}

	if(msg != ""){
		msg = "Veuillez renseigner les informations suivantes :"+msg;

		alert(msg);
		return false;
	}

	if(this.get("class") == "bouton_valider")			$("misterassur_content").getElement("form").submit();
	else if(this.get("class") == "bouton_suivant")		slideFolio(num_page + 1);
	else if(this.get("class") == "bouton_precedent")	slideFolio(num_page - 1);
	else{
		num_page_clicked = parseInt(this.get("id").replace("trigger", ""));
		if($("content_navigation") || num_page_clicked <= num_page + 1)	slideFolio(num_page_clicked);
	}
}
