$(document).ready(function(){
	//---------- preload des images de la carte
	for(var i_carte=0;i_carte<23;i_carte++){var image = new Image;image.src = 'images/carte/region_'+i_carte+'.gif';}
	
	//---------- survol des regions de la carte
	$('area').each(function()
	{		
		$(this).attr({"title":""}).easyTooltip("alt")
		$(this).hover(
			function(){$("#area_image").css({"background-image": "url(images/carte/"+this.id+".gif)"});},
			function(){$("#area_image").css({"background-image": ""});}
		);
	});
	$('.liste_region option').hover(
		function(){$("#area_image").css({"background-image": "url(images/carte/region_"+this.value+".gif)"});},
		function(){$("#area_image").css({"background-image": ""});}
	);
	
	/*$("#form_login").blur(function(){
		alert("test");
	});*/
	
	//---------- declenchement fonction ajax au clic sur les Checkbox pour l'affichage des promotions
	$('.cb_aff').click(function(){
		$.post("../ajax/cb_aff.php", {etat: this.checked, id: this.value});
	});
	
	//---------- retour haut de page
	$("#top").click(function(){$(document).scrollTo(0,500); return false;});
	
	//---------- inscription
	$("#sub_insc").click(function(){
		$.post("ajax/saveuser.php", $("#form_inscription").serialize(), function(data){
			$("#message").html(data);
		});return false;
	});
	
	//---------- afficher panel favoris	
	$("#fav").toggle(
		function(){
			$("#test_fav").slideDown(300);
			$.post("ajax/test_fav.php",function(data){$("#test_fav").html(data);});},
		function(){
			$("#test_fav").slideUp(200);}
	);	
	
	function check_mail(champs){
		if(champs.val() == ""){
			champs.css("border","1px solid red").parent().children(".monSpan").show();
			return 1;
		}
		else{
			champs.css("border","#CCC 1px solid").parent().children(".monSpan").fadeOut(600);
			return 0;
		}
	}			

	$("#contactmail").click(function(){
		erreur = 0;
		erreur += check_mail($("#nom"));
		erreur += check_mail($("#email"));
		erreur += check_mail($("#objet"));
		erreur += check_mail($("#commentaires"));
		if(!/^[\w.-]+@[\w.-]+\.[a-zA-Z]{2,6}$/.test($("#email").val())){  
			$("#message").html('<fieldset class="alert mess"><p>Votre adresse e-mail n\'est pas valide.</p></fieldset>');
			erreur += 1;
		}
		else
			champs.css("border","#CCC 1px solid").parent().children(".monSpan").fadeOut(600);
		/*if(erreur == 0)
			$.post("ajax/test_fav.php",function(data){$("#test_fav").html(data);});}*/
		return false;
	});
	
	//---------- menu prinicpal effet fade
	var hoverColour = "#FFF";
	$("a.hoverBtn").show("fast", function() {
		$(this).wrap("<div class=\"hoverBtn\">");
		$(this).attr("class", "");
	});	
	$("div.hoverBtn").show("fast", function() {
		$(this).append("<div></div>");		
		var wid = $(this).children("a").width();var hei = $(this).children("a").height();		
		$(this).width(wid);$(this).height(hei);$(this).children("div").width(wid);$(this).children("div").height(hei);		
		$(this).children("a").hover(function(){
			if ($(this).attr("rel") == "") {$(this).attr("rel", $(this).css("color"));}
			$(this).parent().children("div").stop().css({"display": "none", "opacity": "1"}).fadeIn("slow");
			$(this).stop().css({"color": $(this).attr("rel")}).animate({"color": hoverColour}, 350);
		},function(){
			$(this).parent().children("div").stop().fadeOut("slow");
			$(this).stop().animate({"color": $(this).attr("rel")}, 250);
		});
	});
	

	
	//---------- changement de droits (admin/membre)
	/*$(".select_admin").change(function(){
		alert($(this+option:selected").text() + $(this).val());
	});*/
	


	//---------- ajouter/retier des favoris (page)
	$(".fav").click(function(){
		var sel = $(this);
		if(sel.attr("name") == "ajouter_fav"){
			var valeur = "Retirer de mes favoris";
			var nom = "retirer_fav";
			var nbfav = 1
		}
		else{
			var valeur = "Ajouter à mes favoris";
			var nom = "ajouter_fav";
			var nbfav = -1
		}
		$.post("ajax/gestionfav.php",{id: sel.parent().find(".id").val(), act: nom},function(data){
			sel.parent().find("span").text(data).fadeIn(600).delay(1500).fadeOut(600);
			sel.val(valeur).attr("name", nom);
			$("#nb_favoris").text(parseInt($("#nb_favoris").text()) + nbfav);
		});return false;
	});
	
	//---------- ajouter/retier de la selection (page)
	$(".sel").click(function(){
		var sel = $(this);
		if(sel.attr("name") == "ajouter_sel"){
			var valeur = "Retirer de mon panier";
			var nom = "retirer_sel";
			var nbfav = 1
		}
		else{
			var valeur = "Ajouter à mon panier";
			var nom = "ajouter_sel";
			var nbfav = -1
		}
		$.post("ajax/gestionsel.php",{id: sel.parent().find(".id").val(), act: nom},function(data){
			sel.parent().find("span").text(data).fadeIn(600).delay(1500).fadeOut(600);
			sel.val(valeur).attr("name", nom);
			$("#nb_selection").text(parseInt($("#nb_selection").text()) + nbfav);
		});return false;
	});
	

	

	/*$(".ligne_comm").each(function(){
		var total = 0;
		var montant = $(this).find(".montant_comm");
		var prix = parseInt($(this).find(".prix").text());
		$(this).find(".qte_comm").keyup(function(){
			montant.val($(this).val() * prix);
			total += parseInt(montant.val());
			$("#total_comm").text(total);
		});
	});*/
	
	function calc_comm(obj){
		//initialisation  des variables
		var current = obj.parents(".ligne_comm");
		var totall = parseFloat($("#total_comm").text());
		var nb_bouteilles = 0;
		var qte_saisi = current.find(".qte_comm").val();
		var qte = qte_saisi >= 0 && qte_saisi <= 50 ? qte_saisi : 0;
		var montant_ligne = current.find(".montant_comm");
		var ancien_montant = parseFloat(montant_ligne.text());
		//remplissage des champs
		montant_ligne.text((qte * parseFloat(current.children(".prix").text())).toFixed(2));
		var nouveau_montant = parseFloat(montant_ligne.text());
		$(".qte_comm").each(function(){
			var qte_saisi = $(this).val();
			nb_bouteilles += parseInt(qte_saisi >= 0 && qte_saisi <= 50 && qte_saisi != "" ? qte_saisi : 0);
		});
		totall = totall + (nouveau_montant - ancien_montant);
		total = totall.toFixed(2);
		$("#total_comm").text(total);
		$("#nb_bouteilles").text(nb_bouteilles);
		$(".montant_commf").each(function(){
			total -= parseFloat($(".prixf:first").text());
			$(this).text(total);
		});
		$("#total_red").text(total);
	}
	
	$(".qte_comm").keyup(function(){
		calc_comm($(this));
	});
	
	$(".pdt_comm").change(function(){
		var current = $(this).parents(".ligne_comm");
		current.children(".prix").text($(this).val().split(";")[0]);
		current.children(".prixi").val($(this).val().split(";")[0]);
		calc_comm($(this));
	});
	
	$("#add_comm").click(function(){
		$.post("/ajax/creerliste.php",function(data){
			$(".tabvin").append(data);
			$(".ligne_comm:last").fadeIn(600);
		});
		return false;
	});

	$(".suppr_comm").click(function(){
		var qte = $(this).parents(".ligne_comm").find(".qte_comm").val();
		var montant = parseInt($(this).parents(".ligne_comm").find(".montant_comm").text());
		$(this).parents(".ligne_comm").fadeOut(300, function(){$(this).remove();});
		$("#total_comm").text(parseInt($("#total_comm").text()) - montant);
		$("#nb_bouteilles").text(parseInt($("#nb_bouteilles").text()) - qte);
		total = $("#total_comm").text();
		$(".montant_commf").each(function(){
			total -= parseInt($(".prixf:first").text());
			$(this).text(total);
		});
		$("#total_red").text(total);
		return false;
	});
	
	$("#add1").click(function(){
		$(".qte_comm").val(parseInt($(".qte_comm").val()) + 1);
		return false;
	});
	
	$(".remove_part").live("click",function(){
		$(this).parent().slideUp(300, function(){$(this).remove()});
		return false;
	});	
	
	$("#add_part").click(function(){
		$("#form_part").append('<p><input type="text" name="nom[]" /> <input type="text" name="adr[]" /> <input type="file" name="img[]" /> <a href="#" class="remove_part"><img src="../images/icones/moins.gif" alt="moins" /></a></p>');
		return false;
	});
	

	
	
	
	$('#actions').prepend('<a href="#" id="print"><img src="images/icones/print.png" class="dec_img" alt="impimer" /> Imprimer</a> - ');
	$('#actions #print').click(function() {
		//window.print();
		alert('impression');
		return false;
	});
	
	$(".tooltip").easyTooltip("title")
	
	//---------- ajouter aux marque-pages/favoris
	// add a "rel" attrib if Opera 7+
    if(window.opera) {
        if ($(".bookmark").attr("rel") != ""){ // don't overwrite the rel attrib if already set
            $(".bookmark").attr("rel","sidebar");
        }
    }
   
    $(".bookmark").click(function(event){
        event.preventDefault(); // prevent the anchor tag from sending the user off to the link
        var url = this.href;
        var title = this.title;
       
        if (window.sidebar) { // Mozilla Firefox Bookmark
            window.sidebar.addPanel('Le caviste se rebiffe - Nouveautés', url, "");
        } else if( window.external ) { // IE Favorite
            window.external.AddFavorite( url, title);
        } else if(window.opera) { // Opera 7+
            return false; // do nothing - the rel="sidebar" should do the trick
        } else { // for Safari, Konq etc - browsers who do not support bookmarking scripts (that i could find anyway)
            alert('Unfortunately, this browser does not support the requested action, please bookmark this page manually.');
        }
    });
	
	

	

});

//---------- mise en forme news admin
function insertTag(startTag, endTag, textareaId, tagType) {
	var field  = document.getElementById(textareaId); 
	var scroll = field.scrollTop;
	field.focus();	
	/* === Partie 1 : on récupère la sélection === */
	if (window.ActiveXObject) {
		var textRange = document.selection.createRange();            
		var currentSelection = textRange.text;
	} else {
		var startSelection   = field.value.substring(0, field.selectionStart);
		var currentSelection = field.value.substring(field.selectionStart, field.selectionEnd);
		var endSelection     = field.value.substring(field.selectionEnd);               
	}	
	/* === Partie 2 : on analyse le tagType === */
	if (tagType) {
		switch (tagType) {
			case "lien":
				endTag = "</lien>";
				if (currentSelection) { // Il y a une sélection
					if (currentSelection.indexOf("http://") == 0 || currentSelection.indexOf("https://") == 0 || currentSelection.indexOf("ftp://") == 0 || currentSelection.indexOf("www.") == 0) {
							// La sélection semble être un lien. On demande alors le libellé
							var label = prompt("Quel est le libellé du lien ?") || "";
							startTag = "<lien url=\"" + currentSelection + "\">";
							currentSelection = label;
					} else {
							// La sélection n'est pas un lien, donc c'est le libelle. On demande alors l'URL
							var URL = prompt("Quelle est l'url ?");
							startTag = "<lien url=\"" + URL + "\">";
					}
				} else { // Pas de sélection, donc on demande l'URL et le libelle
					var URL = prompt("Quelle est l'url ?") || "";
					var label = prompt("Quel est le libellé du lien ?") || "";
					startTag = "<lien url=\"" + URL + "\">";
					currentSelection = label;                     
				}
			break;
		}
	}	
	/* === Partie 3 : on insère le tout === */
	if (window.ActiveXObject) {
		textRange.text = startTag + currentSelection + endTag;
		textRange.moveStart("character", -endTag.length - currentSelection.length);
		textRange.moveEnd("character", -endTag.length);
		textRange.select();     
	} else {
		field.value = startSelection + startTag + currentSelection + endTag + endSelection;
		field.focus();
		field.setSelectionRange(startSelection.length + startTag.length, startSelection.length + startTag.length + currentSelection.length);
	} 

	field.scrollTop = scroll;     
}