<!--
function popup(adr,nompop,larg,haut,res){window.open(adr,nompop,'width='+larg+',height='+haut+',scrollbars=1,toolbar=0,location=0,status=0,menubar=0,resizable='+res);}
function imgPopup(nomPop,img,fond,txt,css){
	if(typeof(imgPop) == "object") {
		imgPop.close();
	}
	var ressources = "ressources/";
	if(arguments[5]!= undefined){ressources = arguments[5];}
   imgPop = window.open("",nomPop,"scrollbars=yes,width=700,height=550");
   imgPop.document.write("<html>\n\n");
   imgPop.document.write("<head><title>Apercu d'image</title></head>\n\n");
   imgPop.document.write("<body bgcolor=\""+fond+"\">\n");
   imgPop.document.write("  <table border=\"0\" cellpadding=\"0\" cellspacing=\"2\" width=\"100%\">\n");
   imgPop.document.write("    <tr><td align=\"center\"><img src=\""+ressources+img+"\"></td></tr>\n");
   imgPop.document.write("    <tr><td align=\"center\">\n");
   imgPop.document.write("      <table border=\"0\" cellpadding=\"0\" cellspacing=\"2\">\n");
   imgPop.document.write("        <tr><td><span style=\""+css+"\">"+txt+"</span></td></tr>\n");
   imgPop.document.write("      </table>\n");
   imgPop.document.write("    </td></tr>\n");
   imgPop.document.write("  </table>\n");
   imgPop.document.write("</body>\n\n");
   imgPop.document.write("</html>");
}
function Makepop(url,my_l,my_h,my_s,my_status,my_resize,my_name){
	/* Version 1.0 */
	/* Creation Marc alias DMC */
	addPop=window.open(url,my_name,"width="+my_l+",height="+my_h+",scrollbars="+my_s+",toolbar=0,location=0,status="+my_status+",menubar=no,resizable="+my_resize);addPop.focus();
}

/* ////////////////////////////////////////////// */
/*	Test un ensemble de caract šres                */
/*	@return true ou false                         */
/* ////////////////////////////////////////////// */
function defendu(string) {
if (!string){return false;}

   var iChars = "abcdefghijklmnopqrstuvwxyz@-_.~0123456789";
   for (var i = 0; i < string.length; i++) {
		if (iChars.indexOf(string.charAt(i).toLowerCase()) == -1){
			return false;
		}
   }
   return true;
}
/* ////////////////////////////////////////////// */
/*	Test l'email                                  */
/*	@return false ou String                       */
/* ////////////////////////////////////////////// */
function is_Email(emails){

	if (emails.indexOf("@") != -1 && emails.indexOf("..")==-1 && defendu(emails)==true){
			var longueur = emails.split("@");
			if((longueur.length==2) && (longueur[0]!="" && longueur[1]!="")){
				var taille=longueur[1].lastIndexOf(".");

				if(taille!=-1){

					if((longueur[1].length-1-taille)==2 || (longueur[1].length-1-taille)==3 || (longueur[1].length-1-taille)==4){

						return true;
					}
					return false;
				}
				return false;
			}
			return false;
	}
	return false;
}

/******************/
/* NEWS FLASH 2.0 */
/******************/

function afficheNewsFlashv2(largeur, hauteur, anim) {
	document.write('<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=8,0,0,0" width="'+largeur+'" height="'+hauteur+'" id="" align="middle">');
	document.write('<param name="allowScriptAccess" value="sameDomain" />');
	document.write('<param name="movie" value="'+anim+'" />');
	document.write('<param name="quality" value="high" />');
	document.write('<param name="wmode" value="transparent" />');
	document.write('<embed src="'+anim+'" quality="high" wmode="transparent" width="'+largeur+'" height="'+hauteur+'" name="" align="middle" allowScriptAccess="sameDomain" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" />');
	document.write('</object>');
}
/******************/
/*   EXTRANET     */
/******************/
function sinscrire(){
	var objform = document.forms.fidentification;
 	objform.traitement.value='sinscrire';
 	objform.submit();
}
function acceder_extranet() {
		var objform = document.forms.facces;
		objform.traitement.value='connexion';
		 objform.submit();
}

function annuler(){
	 var objform = document.forms.facces;
	 objform.traitement.value='connexion';
	 objform.submit();
}
function testchamp(objformulaire,nom){
	 if(objformulaire[nom].value!="" && objformulaire[nom].value!=objformulaire[nom].defaultValue){
	 	return true;
	 }else{
	 	return false;
	 }
	}
function formulmaire (){
	this.champ = ["nom","prenom","codepostale","email","tel","horaire"];
	this.libelle = ["Nom","Prénom","Code_Postal","E-mail","Téléphone","Horaire" ];
	this.test =  ["vide","vide","vide","email","vide","vide"];
	this.formulaire = null;
	this.captcha = false;

	this.init = function (form){
		this.formulaire = document.forms[form];
		for(var i =0; i <this.champ.length;i++){
			this.formulaire[this.champ[i]].onblur = function (){
				var value = this.value;
				if(this.value == "" || this.value==this.defaultValue){
					this.value =this.defaultValue;
				}
			}

			this.formulaire[this.champ[i]].onfocus = function (){
				if(this.value==this.defaultValue){
					this.value="";
				}
			}
		}
	};

	this.valider = function(){
		var message ="";

		for(var i =0; i <this.champ.length;i++){
			  switch (this.test[i]){
				case "vide"  : message += (testchamp(this.formulaire,this.champ[i])==false)? "- "+this.libelle[i]+"\n" : "" ; break;
				case "email" : message += (is_Email(this.formulaire[this.champ[i]].value)==false)? "- "+this.libelle[i]+"\n" : "" ; break;
				case "site"  : message += (testchamp(this.formulaire,this.champ[i])==false)? "- "+this.libelle[i]+"\n" : "" ; break;
				default : "";
			  }
		}
		if(message !=""){
			message = "Veuillez remplir les champs suivant :\n"+message;
			alert(message);
		}else{
			if(!this.captcha) {
				this.formulaire.submit();
			} else {
				var fieldset;
				var divCaptcha = document.getElementById("captcha");
				for(var i=0;i<this.formulaire.childNodes.length;i++) {
					if(this.formulaire.childNodes[i].nodeName.toLowerCase()=="fieldset") {
						fieldset = this.formulaire.childNodes[i];
					}
				}
				fieldset.style.display = "none";
				divCaptcha.style.display = "block";
				this.formulaire["captchaValue"].focus();
			}
		}
		return false;
	}
	this.confirmWithCaptcha = function() {
		var captchaValue = this.formulaire["captchaValue"].value;
		if(!captchaValue == "") {
			this.formulaire.submit();
		} else {
			alert("Veuillez saisir les caractères présents sur l'image");
		}
	}
}
var contactRapide =  new formulmaire();
contactRapide.champ = ["nom","prenom","codepostale","email","tel","horaire"];
contactRapide.libelle = ["Nom","Prénom","Code_Postal","E-mail","Téléphone","Horaire" ],
contactRapide.test = ["vide","vide","vide","email","vide","vide"];
contactRapide.captcha = true;

jQuery(document).ready(function($) {

	$(".uiSliderWrapper").slider({
		animate: "true",
		range: "min",
		step: 50,
		slide: function(e, ui) {
			var parent = $(ui.handle).parents(".slider");
			var select = parent.find("select");
			select.val(ui.value);
			parent.find(".texte").text(select[0].options[select[0].selectedIndex].text);
		}
	}).each(function(index, element) {
		element = $(element);
		if(element.parent().find(".texte").size() == 0) {
			var select = element.parent().find("select");
			element.parent().append("<span class='texte'>" + select[0].options[select[0].selectedIndex].text + "</span>");
		}
	});

	$(".slider input").click(function() {
		$(this).parent().data("slider").value($(this).val());
		$(this).parents(".slider").find("select").val($(this).val());
		return false;
	}).hover(function(e) {
				/* Recherche du texte à afficher
				 * On récupère le texte de l'option qui a la même valeur
				 * que le input sous la souris
				 */
				// la liste
				var select = $(this).parents(".slider").find("select");
				// la valeur "sous la souris"
				var value = $(this).val();
				// la variable qui va accueillir le texte
				var text;
				// on itère sur toutes les items de la liste
				select.children("option").each(function(index, element) {
					element = $(element);
					if(element.attr("value") == value) { // le texte a été trouvé
						text = element.text();
						return;
					}
				});
				// on affiche le texte
				$(this).parents(".slider").find(".texte").text(text);
			},
			function(e) {
				// on affiche le texte de l'option en cours
				$(this).parents(".slider").find(".texte").text($(this).parents(".slider").find("select option:selected").text());
			});

	/* Durée de l'animation */
	var durationGarantie = 300;
	
	$("#btnGarantieSuperieure").click(function() {
		
		if($(".garantie.selected").css("left") == "185px" || $(".garantie.selected").css("left") == "auto") {
			var current = $(".garantie.selected");
			var next = current.next();
			if(next.hasClass("garantie")) {
				// Grandes images
				current.animate({left: '0'}, durationGarantie, "swing");
				next.css({
					left: "724px",
					display: "block"
					});
				next.animate({left: '370px'}, durationGarantie, "swing");
				// Tableaux
				var currentTable = $(".remboursementGarantie.selected");
				var nextTable    = currentTable.next();
				nextTable.css({
					left: "334px",
					display: "block"
				});
				currentTable.animate({left: '0'}, durationGarantie, "swing");
				nextTable.animate({left: '182px'}, durationGarantie, "swing");
			}
		}
		
	});

	$("#btnGarantieInferieure").click(function() {
		
		if($(".garantie.selected").css("left") == "185px" || $(".garantie.selected").css("left") == "auto") {
			var current = $(".garantie.selected");
			var prev = current.prev();
			if(prev.hasClass("garantie")) {
				// Grandes images
				current.animate({left: '370px'}, durationGarantie, "swing");
				prev.css({
					left: "-354px",
					display: "block"
					});
				prev.animate({left: '0'}, durationGarantie, "swing");
				// Tableaux
				var currentTable = $(".remboursementGarantie.selected");
				var prevTable    = currentTable.prev();
				prevTable.css({
					left: "-152px",
					display: "block"
				});
				currentTable.animate({left: '182px'}, durationGarantie, "swing");
				prevTable.animate({left: '0'}, durationGarantie, "swing");
			}
		}
		
	});

	
	$(".garantie").mouseleave(function() {
		trigger = $(this); // mais c'est reloud à la fin de devoir faire ça non ?
		// On n'écoute plus l'évènement 'mousemove'
		trigger.unbind("mousemove");
		// On cache l'info-bulle
		$("#infoBulleGarantie").clearQueue("fx");
		$("#infoBulleGarantie").animate({opacity: 0}, 200);
	});

	$(".garantie").mouseenter(function(event) {
		var trigger = $(this);

		// On affiche l'info-bulle
		var title;
		if(trigger.attr("title")) {
			title = trigger.attr("title");
			trigger.removeAttr("title");
			trigger.data("title", title);
		}
		if($("#infoBulleGarantie").size() == 0) {
			$("body").append("<div id='infoBulleGarantie'><div></div></div>");
		}

		if(!trigger.hasClass("selected")) {
			$("#infoBulleGarantie div").text(trigger.data("title")).parent().css({
				top: event.pageY-25-$("#infoBulleGarantie").height() + "px",
				left: event.pageX-5 + "px",
				display: "block"
			}).delay(1000, "fx").animate({opacity: 0.75}, 200);
			// On écoute l'évènement 'mousemove'
			$(this).mousemove(garantie_mouseMoveHandler);
		}
	});

	function garantie_mouseMoveHandler(event) {
		$("#infoBulleGarantie").css({
			top: event.pageY-25-$("#infoBulleGarantie").height() + "px",
			left: event.pageX-5 + "px"
		});
	}

	$(".garantie").click(function() {
		
		trigger = $(this);
		$("#niveauInput").val(listeNiveaux[trigger.index()-2]);
		
		/*
		 * Un petit tableau de configuration
		 * 0 > l'index qui permet de savoir quelle flèche désactiver
		 * 1 > état de la flèche supérieur quand on atteint [0]
		 * 2 > état de la flèche inférieur quand on atteint [0]
		 * 3 > position en x pour cacher une gaarntie
		 * 4 > position en x pour cacher un tableau de remboursement
		 */
		var conf;
		
		// En gros, la question c'est : est-ce qu'on déscend ou est-ce qu'on monte
		if((trigger.hasClass("selected") && (trigger.prev().css("display") == "block" && !trigger.prev().hasClass("selected") && trigger.prev().hasClass("garantie"))) || (!trigger.hasClass("selected") && trigger.prev().hasClass("selected"))) {
			
			conf = [
			        5,
			        false,
			        true,
			        -354,
			        -152,
			        trigger.index() -2
			       ];
		} else {
			
			conf = [
			        2,
			        true,
			        false,
			        724,
			        334,
			        trigger.index()
			       ];
		}
						
		// Grandes images
		trigger.animate({left: '185px'}, durationGarantie, "swing", function() {
			$("#garantiesWrapper .selected").removeClass("selected");
			trigger.addClass("selected");
			$("#garantiesWrapper img").appendTo(trigger);
			if(trigger.index() == conf[0]) {
				activation($("#btnGarantieSuperieure"), conf[1]);
				activation($("#btnGarantieInferieure"), conf[2]);
			} else {
				activation($("#btnGarantieSuperieure"), true);
				activation($("#btnGarantieInferieure"), true);
			}
			// Petite animation du macaron
			$(this).find("img").css({
				width: "100px"
			}).animate({width: "74px"}, 500, "easeOutBounce");
		});
		trigger.parent().children("div:nth-child(" + (conf[5]+2) + ")").animate({left: conf[3] + "px"}, durationGarantie, "swing", function() {$(this).hide();});
		// Tableaux
		var currentTable = $(".remboursementGarantie").eq(trigger.index()-2);
		currentTable.animate({left: '100px'}, durationGarantie, "swing", function() {
			$(".remboursementGarantie.selected").removeClass("selected");
			$(this).addClass("selected");
		});
		currentTable.parent().children("table:nth-child(" + conf[5] + ")").animate({left: conf[4] + 'px'}, durationGarantie, "swing");

		// On n'écoute plus l'évènement 'mousemove'
		trigger.unbind("mousemove");
		// On cache l'info-bulle
		$("#infoBulleGarantie").animate({opacity: 0}, 200, function() {$(this).hide();});
	});

	function activation(el, activer) {
		if(!activer) {
			el.css({cursor: "default"});
			el.animate({opacity: "0.3"}, 300);
		} else {
			el.css({cursor: "pointer"});
			el.animate({opacity: "1"}, 300);
		}
	}
	
	// Etat initiale des flèches
	if($(".garantie.selected").index() == 5) {
		activation($("#btnGarantieSuperieure"), false);
	} else if($(".garantie.selected").index() == 2){
		activation($("#btnGarantieInferieure"), false);
	}


	$("#prixPaye input").keyup(function() {
		// Le champ en cours d'édition
		var trigger = $(this);

		// Il faut récuperer le numéro de la ligne
		var index = trigger.parents("tr").index();

		// Traitement en fonction
		if(index == 0) { // Frais médicaux

			var base = 23;
			if(trigger.val() >= base) {
				// amo, 70% sur la base de 22 €
				var amo = (base*0.70).toFixed(2);
				trigger.parent().next().children("span").html(amo + " &euro;");

				calculRemboursement(base, 1, amo, trigger.val(), 6.60, $("#remboursementE-conomique span").eq(1), $("#remboursementE-conomique span").eq(2));
				calculRemboursement(base, 1, amo, trigger.val(), 6.60, $("#remboursementE-nergie span").eq(1), $("#remboursementE-nergie span").eq(2));
				calculRemboursement(base, 1.3, amo, trigger.val(), 13.80, $("#remboursementE-quilibre span").eq(1), $("#remboursementE-quilibre span").eq(2));
				calculRemboursement(base, 1.5, amo, trigger.val(), 18.40, $("#remboursementE-volution span").eq(1), $("#remboursementE-volution span").eq(2));

			} else {
				// vider les champs
				viderLigne(trigger, index);
			}


		} else if(index == 1) { // Dentaire

			var base = 107.50;
			if(trigger.val() >= base) {
				// amo, 70% sur la base de 107.50 €
				var amo = (base*0.70).toFixed(2);
				trigger.parent().next().children("span").html(amo + " &euro;");

				calculRemboursement(base, 1, amo, trigger.val(), -1, $("#remboursementE-conomique span").eq(3), $("#remboursementE-conomique span").eq(4));
				calculRemboursement(base, 2, amo, trigger.val(), -1, $("#remboursementE-nergie span").eq(3), $("#remboursementE-nergie span").eq(4));
				calculRemboursement(base, 2, amo, trigger.val(), -1, $("#remboursementE-quilibre span").eq(3), $("#remboursementE-quilibre span").eq(4));
				calculRemboursement(base, 2, amo, trigger.val(), -1, $("#remboursementE-volution span").eq(3), $("#remboursementE-volution span").eq(4));

			} else {
				// vider les champs
				viderLigne(trigger, index);
			}

		} else if(index == 2) { // Optique

			var base = 100; // part mutuelle minimum (e-conomique);
			if(trigger.val() > base) {
				trigger.parent().next().children("span").html("6.61 &euro;");

				calculForfait(100, 6.61, trigger.val(), $("#remboursementE-conomique span").eq(5), $("#remboursementE-conomique span").eq(6));
				calculForfait(150, 6.61, trigger.val(), $("#remboursementE-nergie span").eq(5), $("#remboursementE-nergie span").eq(6));
				calculForfait(150, 6.61, trigger.val(), $("#remboursementE-quilibre span").eq(5), $("#remboursementE-quilibre span").eq(6));
				calculForfait(200, 6.61, trigger.val(), $("#remboursementE-volution span").eq(5), $("#remboursementE-volution span").eq(6));

			} else {
				// vider les champs
				viderLigne(trigger, index);
			}

		} else if(index == 3) { // Hospitalisation

			var base = 150; // part mutuelle minimum (e-nergie);
			if(trigger.val() > base) {
				trigger.parent().next().children("span").html("0 &euro;");

				calculForfait(0, 0, trigger.val(), $("#remboursementE-conomique span").eq(7), $("#remboursementE-conomique span").eq(8));
				calculForfait(150, 0, trigger.val(), $("#remboursementE-nergie span").eq(7), $("#remboursementE-nergie span").eq(8));
				calculForfait(150, 0, trigger.val(), $("#remboursementE-quilibre span").eq(7), $("#remboursementE-quilibre span").eq(8));
				calculForfait(250, 0, trigger.val(), $("#remboursementE-volution span").eq(7), $("#remboursementE-volution span").eq(8));

			} else {
				// vider les champs
				viderLigne(trigger, index);
			}

		} else if(index == 4) { // Médecine douce

			var base = 30; // part mutuelle minimum (e-quilibre);
			if(trigger.val() > base) {
				trigger.parent().next().children("span").html("0 &euro;");

				calculForfait(0, 0, trigger.val(), $("#remboursementE-conomique span").eq(9), $("#remboursementE-conomique span").eq(10));
				calculForfait(0, 0, trigger.val(), $("#remboursementE-nergie span").eq(9), $("#remboursementE-nergie span").eq(10));
				calculForfait(30, 0, trigger.val(), $("#remboursementE-quilibre span").eq(9), $("#remboursementE-quilibre span").eq(10));
				calculForfait(0, 0, trigger.val(), $("#remboursementE-volution span").eq(9), $("#remboursementE-volution span").eq(10));

			} else {
				// vider les champs
				viderLigne(trigger, index);
			}

		}
	});

	$("#prixPaye input").keyup();


	/* Vide une ligne de remboursement (tous niveaux confondu) */
	function viderLigne(trigger, index) {
		trigger.parent().next().children("span").html("");
		$("[id^='remboursementE'] tr:nth-child(" + (index + 2) + ") span").html("");
	}

	/* Calcul pour les remboursements basés sur un montant forfaitaire
	 * hospitalisation, optique, médecine douce
	 */
	function calculForfait(montantForfaitaire, amo, prixPaye, champPartMutuelle, champACharge) {
		champPartMutuelle.html(montantForfaitaire + " &euro;");
		champACharge.html(Math.max((prixPaye-montantForfaitaire-amo).toFixed(2), 0) + " &euro;");
	}

	/* Calcul des remboursements
	 * consultation, dentaire
	 */
	function calculRemboursement(base, pourcentage, amo, prixPaye, max, champPartMutuelle, champACharge) {
		var partMutuelle = (base*pourcentage-amo).toFixed(2);
		if(max != -1 && Number(partMutuelle) > Number(max)) {
			partMutuelle = amo;
		}
		if(Number(partMutuelle) > (prixPaye - amo)) {
			partMutuelle = (prixPaye - amo).toFixed(2);
		}
		champPartMutuelle.html(partMutuelle + " &euro;");
		var resteACharge = (prixPaye - amo - partMutuelle).toFixed(2);
		champACharge.html(resteACharge + " &euro;");
	}

});
//-->

