$(document).ready(function() { function h1_inactif() { $(".saveur h1, .recette h1").addClass("inactif"); $(".saveur").children().not("h1").hide(); $(".recette").children().not("h1").hide(); } h1_inactif(); //----------------------------------------------------------------------- // Fonction permettant d'équilibrer les hauteurs des 3 zones //----------------------------------------------------------------------- function update_hauteur( szType ) { var nHauteurSaveur = 0; var nHauteurForme = 0; var nHauteurRecette = 0; var nHauteur = 0; if( $(".saveur h2").length > 0 ) { nHauteurSaveur = $(".saveur h2").height(); } if( $(".forme h2").length > 0 ) { nHauteurForme = $(".forme h2").height(); } if( $(".recette h2").length > 0 ) { nHauteurRecette = $(".recette h2").height(); } if( nHauteurSaveur > nHauteurForme && nHauteurSaveur > nHauteurRecette ) { nHauteur = nHauteurSaveur; } if( nHauteurForme > nHauteurSaveur && nHauteurForme > nHauteurRecette ) { nHauteur = nHauteurForme; } if( nHauteurRecette > nHauteurSaveur && nHauteurRecette > nHauteurForme ) { nHauteur = nHauteurRecette; } // alert(nHauteurForme + " / " + nHauteurSaveur + " / " + nHauteurRecette); if( nHauteur > 0 ) { $("h2").stop().animate({height: nHauteur }, 500); $("h2.nom_recette").stop().animate({lineHeight: "'"+nHauteur+"px'" }, 500); } } //----------------------------------------------------------------------- //----------------------------------------------------------------------- // Fonction permettant de nettoyer un id (ex : saveur_1 => 1) //----------------------------------------------------------------------- function nGetId( nId ) { var aId = ($(nId).attr("id")).split("_"); return aId[1]; } //----------------------------------------------------------------------- //----------------------------------------------------------------------- // Au survol des li des formes //----------------------------------------------------------------------- function load_hover_li_forme() { $(".forme ul.liste_recettes li").hover(function() { if( $(".forme_selected").size() == 0 ) { // on récupère l'id var nIdElement = $(this).attr("id"); var aIdElement = nIdElement.split("_"); var szType = aIdElement[0]; var nIdElement = aIdElement[1]; load_libelle_forme( nIdElement ); } }); } //----------------------------------------------------------------------- //----------------------------------------------------------------------- // Au survol des li des ingrédients //----------------------------------------------------------------------- function load_hover_li_ingredient() { $(".ingredient ul.liste_recettes li").hover(function() { if( $(".ingredient_selected").size() == 0 ) { // on récupère l'id var nIdElement = $(this).attr("id"); var aIdElement = nIdElement.split("_"); var szType = aIdElement[0]; var nIdElement = aIdElement[1]; load_libelle_ingredient( nIdElement ); } }); } //----------------------------------------------------------------------- //----------------------------------------------------------------------- // Au survol des li des saveurs //----------------------------------------------------------------------- function load_hover_li_saveur() { $(".saveur ul.liste_recettes li").hover(function() { if( $(".saveur_selected").size() == 0 ) { // on récupère l'id var nIdElement = $(this).attr("id"); var aIdElement = nIdElement.split("_"); var szType = aIdElement[0]; var nIdElement = aIdElement[1]; $(".saveur img").attr("src", "http://www.cornand.fr/data/photos/saveurs/saveur_" + nIdElement + "_g.png"); load_libelle_saveur( nIdElement ); } }); } //----------------------------------------------------------------------- //----------------------------------------------------------------------- // Au clic sur un li de saveur //----------------------------------------------------------------------- function load_clic_li_saveur() { $(".saveur ul.liste_recettes li").click(function() { // on "éteint" les éléments sélectionnés $(".saveur ul li.element_selected").removeClass("element_selected"); // on ajoute la classe indiquant qu'il sagit de l'élément sélectionné et on met à jour le fond $(this).addClass("saveur_selected"); // on "allume" l'élément $(this).addClass("element_selected"); var nIdSaveur = nGetId( this ); var nIdForme = $("#nIdFormeCache_PM").val(); load_recette( nIdForme, nIdSaveur ); //update_hauteur(); load_clic_close(); load_libelle_saveur( nIdSaveur ); $("#contenu").scrollTop(0); //$("#contenu").perfectScrollbar("update"); //recettes contenu recette $("#recette #contenu_recette" ).each( function( ){ var hauteur = $(window).height() - 330; // console.log( "window = " + $(window).height() ); // console.log( "cadre = " + hauteur ); $(this).height(hauteur); $(this).mCustomScrollbar({ autoDraggerLength:false, updateOnContentResize: true }); window.setTimeout( function( ){ $(this).mCustomScrollbar("update"); }, 2000 ); }); }); } //----------------------------------------------------------------------- //----------------------------------------------------------------------- // Au clic sur un li de forme //----------------------------------------------------------------------- function load_clic_li_forme() { $(".forme ul li").click(function() { // on "éteint" les éléments sélectionnés $(".forme ul li.element_selected").removeClass("element_selected"); // on ajoute la classe indiquant qu'il sagit de l'élément sélectionné et on met à jour le fond $(this).addClass("forme_selected"); // on "allume" l'élément $(this).addClass("element_selected"); // on affiche la zone de choix de la saveur $(".saveur").parent().fadeIn("fast"); $(".saveur .close").next("div").fadeIn("fast"); // on affiche le bouton de fermeture de la zone saveur et forme $("#close_saveur").fadeIn("fast"); //$("#close_forme").fadeIn("fast"); $("#close_forme").css("opacity", "1"); // on enlève la classe qui indique que la zone de saveur est inactive $(".saveur h1").removeClass("inactif"); $(".recette h1").addClass("inactif"); // on cache la zone de recette $(".recette").children().not("h1").hide(); // on récupère l'id de la forme var nIdForme = nGetId(this); $("#nIdFormeCache_PM").val( nIdForme ); // on récupère les saveurs liées à la forme var adresse = "/admin/cornand/scripts/action_saveur.php?szMode_PM=listes_saveurs_liees&nIdElement_PM=" + nIdForme; var szSaveurs = $.ajax({ url: adresse, async: false }).responseText; // on met à jour les saveurs var aSaveurs = szSaveurs.split("||"); var nIdSaveur = aSaveurs[0]; var szLibelle = aSaveurs[1]; var szSaveurs = aSaveurs[2] $(".saveur ul").html(szSaveurs); // on met à jour la photo et le libellé en mettant le premier de la liste $(".saveur img").attr("src", "http://www.cornand.fr/data/photos/saveurs/saveur_" + nIdSaveur + "_g.png"); $(".saveur img").attr("title", szLibelle); $(".saveur img").attr("alt", szLibelle); $(".saveur h2").html(szLibelle); // on affiche le div $(".saveur").fadeIn("fast"); //update_hauteur(); load_libelle_forme( nIdForme ); load_hover_li_saveur(); load_clic_li_saveur(); }); } //----------------------------------------------------------------------- //----------------------------------------------------------------------- // Au clic sur un li d'ingrédient //----------------------------------------------------------------------- function load_clic_li_ingredient() { $(".ingredient ul li").click(function() { if( $("#minuteur").length > 0 ) { reinitialise_minuteur(); } // on "éteint" les éléments sélectionnés $(".ingredient ul li.element_selected").removeClass("element_selected"); // on ajoute la classe indiquant qu'il sagit de l'élément sélectionné et on met à jour le fond $(this).addClass("ingredient_selected"); // on "allume" l'élément $(this).addClass("element_selected"); // on affiche la zone de choix de la saveur $(".saveur").parent().fadeIn("fast"); $(".saveur .close").next("div").fadeIn("fast"); // on affiche le bouton de fermeture de la zone saveur et forme $("#close_saveur").fadeIn("fast"); //$("#close_forme").fadeIn("fast"); $("#close_ingredient").css("opacity", "1"); // on enlève la classe qui indique que la zone de saveur est inactive $(".saveur h1").removeClass("inactif"); // on cache la zone de recette $(".recette").children().not("h1").hide(); // on récupère l'id de l'ingrédient var nIdIngredient = nGetId(this); $("#nIdIngredientCache_PM").val( nIdIngredient ); load_libelle_ingredient( nIdIngredient ); if( $("#minuteur").length > 0 ) { var szTypeRecette = $("#szTypeRecetteCache_PM").val(); var szTemps = get_temps( nIdIngredient, szTypeRecette ); var aTemps = szTemps.split(";"); $(".quart_desactive").removeClass("quart_desactive"); if( aTemps[0] == "0" ) { $("#premier_quart").addClass("quart_desactive"); } if( aTemps[1] == "0" ) { $("#deuxieme_quart").addClass("quart_desactive"); } if( aTemps[2] == "0" ) { $("#troisieme_quart").addClass("quart_desactive"); } if( aTemps[3] == "0" ) { $("#dernier_quart").addClass("quart_desactive"); } } // on affiche le div $(".saveur").fadeIn("fast"); $("#contenu").scrollTop(0); $("#contenu").perfectScrollbar("update"); //update_hauteur(); }); } //----------------------------------------------------------------------- //----------------------------------------------------------------------- // Fonction permettant de récupérer le libellé de la forme //----------------------------------------------------------------------- function load_libelle_forme( nIdElement ) { // on met à jour l'image $(".forme img").attr("src", "http://www.cornand.fr/data/photos/formes/forme_" + nIdElement + ".png"); // on récupère le libellé de la forme var adresse = "/admin/cornand/scripts/action_forme.php?szMode_PM=recup_libelle&nIdElement_PM=" + nIdElement; var szLibelle = $.ajax({ url: adresse, async: false }).responseText; // on met à jour le libellé $(".forme h2").html( szLibelle ); $(".forme img").attr("title", szLibelle); $(".forme img").attr("alt", szLibelle); } //----------------------------------------------------------------------- //----------------------------------------------------------------------- // Fonction permettant de récupérer le libellé de l'ingrédient //----------------------------------------------------------------------- function load_libelle_ingredient( nIdElement ) { // on met à jour l'image $(".ingredient img").attr("src", "http://www.cornand.fr/data/photos/ingredients/ingredient_" + nIdElement + ".png"); // on récupère le libellé de l'ingrédient var adresse = "/admin/cornand/scripts/action_ingredient.php?szMode_PM=recup_libelle&nIdElement_PM=" + nIdElement; var szLibelle = $.ajax({ url: adresse, async: false }).responseText; // on met à jour le libellé $(".ingredient h2").html( szLibelle ); $(".ingredient img").attr("title", szLibelle); $(".ingredient img").attr("alt", szLibelle); } //----------------------------------------------------------------------- var szTypeRecetteInitial = $("#menu_recette li:first-child a").attr("id"); load_ingredient( szTypeRecetteInitial ); $(".type_recette").click(function() { load_ingredient( $(this).attr("id") ); }); function load_ingredient( szTypeRecette ) { h1_inactif(); $("#szTypeRecetteCache_PM").val( szTypeRecette ); $(".type_recette").removeClass("selected"); $("#" + szTypeRecette).addClass("selected"); $("#h1_type_plat").hide(); $("#h1_ingredient").show(); var adresse = "/admin/cornand/scripts/action_ingredient.php?szMode_PM=load_ingredients&szTypeRecette_PM=" + szTypeRecette; var szIngredients = $.ajax({ url: adresse, async: false }).responseText; $(".ingredient").html( szIngredients ); $(".ingredient > div").fadeIn("fast"); load_clic_li_ingredient(); load_clic_close(); load_hover_li_ingredient(); } //***************************************************************************************************************************************************************************************************** // minuteur de recette function reinitialise_minuteur() { $(".quart_selected").css({"border-width": "0px", "border-color" : "#000000"}); $(".quart_selected").removeClass("quart_selected"); $(".quart_preselected").removeClass("quart_selected"); } if( $("#minuteur" ).length ) { // JAUNE : #FFC814 /* $(".quart").click(function() { if( !$(this).hasClass("quart_desactive") ) { // si on a des éléments sélectionnés => on souhaite activer de nouveau le minuteur if( $(".quart_selected").length ) { $(".quart_temp_active").addClass("quart_desactive").removeClass("quart_temp_active"); // on remplace les éléments sélectionnés par des présélections et on remet la couleur initiale $(".quart_selected").addClass("quart_preselected"); $(".quart_selected").removeClass("quart_selected"); $(".quart_preselected").css({"border-width": "25px", "border-color" : "#000000"}); } // sinon on verrouille le minuteur else { var id_quart_selectionne = $(this).index(); $(".quart_desactive").each(function() { var id_quart_suivant = $(this).index(); if( id_quart_selectionne < id_quart_suivant && id_quart_selectionne < 4 ) { $(this).addClass("quart_temp_active").removeClass("quart_desactive"); } }); $(".quart_preselected").addClass("quart_selected"); $(".quart_preselected").removeClass("quart_preselected"); $(".quart_selected").css({"border-width": "25px", "border-color" : "#FFC814"}); var nIdIngredient = $("#nIdIngredientCache_PM").val(); var szTypeRecette = $("#szTypeRecetteCache_PM").val(); load_recette( nIdIngredient, "", $(".quart_selected").length, szTypeRecette ); } load_clic_close(); } }); $("#dernier_quart").mouseenter(function() { var bActif = bQuartActif( "#dernier_quart" ); if( bActif && $(".quart_selected").length == 0 ) { $(this).addClass("quart_preselected"); $("#troisieme_quart").addClass("quart_preselected"); $("#deuxieme_quart").addClass("quart_preselected"); $("#premier_quart").addClass("quart_preselected"); $(".quart").css({"border-width": "25px", "border-color" : "#000000"}); $("#temps").html("

  +

120

minutes
"); } }); $("#dernier_quart").mouseout(function() { $(".quart_preselected").removeClass("quart_preselected"); }); $("#troisieme_quart").mouseenter(function() { var bActif = bQuartActif( "#troisieme_quart" ); if( bActif && $(".quart_selected").length == 0 ) { $(this).addClass("quart_preselected"); $("#premier_quart").addClass("quart_preselected"); $("#deuxieme_quart").addClass("quart_preselected"); $("#minuteur").css("background-color", "#b1b3b4"); $(".quart").css("border-width", "0px"); $("#premier_quart").css("border-width", "25px"); $("#deuxieme_quart").css("border-width", "25px"); $("#troisieme_quart").css("border-width", "25px"); $("#temps").html("

60>

120

minutes
"); $(".minutes").css("margin-right", "15px"); } }); $("#troisieme_quart").mouseout(function() { $(this).removeClass("quart_preselected"); $("#deuxieme_quart").removeClass("quart_preselected"); $("#premier_quart").removeClass("quart_preselected"); }); $("#deuxieme_quart").mouseenter(function() { var bActif = bQuartActif( "#deuxieme_quart" ); if( bActif && $(".quart_selected").length == 0 ) { $(this).addClass("quart_preselected"); $("#premier_quart").addClass("quart_preselected"); $("#minuteur").css("background-color", "#b1b3b4"); $(".quart").css("border-width", "0px"); $("#premier_quart").css("border-width", "25px"); $("#deuxieme_quart").css("border-width", "25px"); $("#temps").html("

30>

60

minutes
"); $(".minutes").css("margin-right", "15px"); } }); $("#deuxieme_quart").mouseout(function() { $(this).removeClass("quart_preselected"); $("#premier_quart").removeClass("quart_preselected"); }); $("#premier_quart").mouseenter(function() { var bActif = bQuartActif( "#premier_quart" ); if( bActif && $(".quart_selected").length == 0 ) { $(this).addClass("quart_preselected"); $("#minuteur").css("background-color", "#b1b3b4"); $(".quart").css("border-width", "0px"); $("#premier_quart").css("border-width", "25px"); $("#temps").html("

0>

30

minutes
"); } }); $("#premier_quart").mouseout(function() { $(".quart_preselected").removeClass("quart_preselected"); }); */ $(".quart").click(function() { if( !$(this).hasClass("quart_desactive") ) { /*if( $(this).hasClass("quart_selected") ) { // on remplace les éléments sélectionnés par des présélections et on remet la couleur initiale $(this).addClass("quart_preselected"); $(this).removeClass("quart_selected"); $(this).css({"border-width": "25px", "border-color" : "#000000"}); } else*/ if( $(this).hasClass("quart_preselected") ) { $(".quart_selected").css({"border-width": "0px", "border-color" : "#000000"}); $(".quart_selected").removeClass("quart_selected"); $(this).addClass("quart_selected"); $(this).removeClass("quart_preselected"); $(this).css({"border-width": "25px", "border-color" : "#FFC814"}); var nIdIngredient = $("#nIdIngredientCache_PM").val(); var szTypeRecette = $("#szTypeRecetteCache_PM").val(); load_recette( nIdIngredient, "", $(this).index(), szTypeRecette ); //recettes contenu recette $("#recette #contenu_recette" ).each( function( ){ var hauteur = $(window).height() - 330; // console.log( "window = " + $(window).height() ); // console.log( "cadre = " + hauteur ); $(this).height(hauteur); $(this).mCustomScrollbar({ autoDraggerLength:false, updateOnContentResize: true }); }); } } load_clic_close(); }); $(".quart").mouseenter(function() { if( $(".quart_selected").length == 0 ) { $(".quart").css("border-width", "0px"); $(this).addClass("quart_preselected"); $(this).css("border-width", "25px"); $("#minuteur").css("background-color", "#b1b3b4"); } else if( $(".quart_selected").length > 0 ) { $(".quart_preselected").css("border-width", "0px"); $(this).addClass("quart_preselected"); $(this).css("border-width", "25px"); $("#minuteur").css("background-color", "#b1b3b4"); } var id = $(this).attr("id"); if( id == "premier_quart" ) { var minutes_min = 0; var minutes_max = 30; } if( id == "deuxieme_quart" ) { var minutes_min = 30; var minutes_max = 60; } if( id == "troisieme_quart" ) { var minutes_min = 60; var minutes_max = 120; } if( id == "dernier_quart" ) { var minutes_min = "+"; var minutes_max = 120; } $("#temps").html("

" + minutes_min + ">

" + minutes_max + "

minutes
"); }); function bQuartActif( cible ) { var bActif = true; if( $(cible).hasClass("quart_desactive") ) { bActif = false; } return bActif; } } load_clic_li_forme(); load_clic_close(); load_hover_li_forme(); }); //----------------------------------------------------------------------- // Fonctions de fermeture des zones //----------------------------------------------------------------------- function close_forme() { close_saveur( $("#close_saveur") ); $(".forme_selected").removeClass("forme_selected"); $(".forme ul li.element_selected").removeClass("element_selected"); $("#close_forme").css("opacity", "0"); } function close_ingredient() { close_saveur( $("#close_saveur") ); $(".ingredient_selected").removeClass("ingredient_selected"); $(".ingredient ul li.element_selected").removeClass("element_selected"); $("#close_ingredient").css("opacity", "0"); if( $("#minuteur").length > 0 ) { $("#close_ingredient").prev("h1").addClass("inactif"); $("#close_ingredient").next("div").fadeOut("fast"); } } function close_recette() { $(".btn_suivant").fadeOut("fast"); $("#contenu_recette").fadeOut("fast"); $("#close_recette").fadeOut("fast"); $("#close_recette").prev("h1").addClass("inactif"); } //----------------------------------------------------------------------- function close_saveur( cible ) { close_recette(); $(".saveur_selected").removeClass("saveur_selected"); $(".saveur ul li.element_selected").removeClass("element_selected"); cible.next("div").fadeOut("fast"); cible.fadeOut("fast"); cible.prev("h1").addClass("inactif"); if( $("#minuteur").length > 0 ) { reinitialise_minuteur(); } } //----------------------------------------------------------------------- // Fonction permettant de récupérer les durées disponibles //----------------------------------------------------------------------- function get_temps( nIdElement, szTypeRecette ) { var adresse = "/admin/cornand/scripts/action_recette.php?szMode_PM=recup_temps&nIdElement_PM=" + nIdElement + "&szTypeRecette_PM=" + szTypeRecette; var szTemps = $.ajax({ url: adresse, async: false }).responseText; return szTemps; } //----------------------------------------------------------------------- //----------------------------------------------------------------------- // Fonction permettant de récupérer les infos liées à une recette //----------------------------------------------------------------------- function load_recette( nIdElement, nIdSaveur, nTemps, szTypeRecette ) { var adresse = "/admin/cornand/scripts/action_recette.php?szMode_PM=recup_recette&nIdElement_PM=" + nIdElement + "&nIdSaveur_PM=" + nIdSaveur + "&nTemps_PM=" + nTemps + "&szTypeRecette_PM=" + szTypeRecette; var szRecette = $.ajax({ url: adresse, async: false }).responseText; $( ".recette" ).html( szRecette ); $(".recette").fadeIn("fast"); slider = $("#slider").bxSlider({ displaySlideQty: 1, moveSlideQty: 1, controls: false, auto: false, speed: 750, slideWidth: 80 }); $("#liste_coffrets_associes li").click(function(){ var numSlide = $(this).index(); slider.goToSlide( numSlide ); }) $(".produit_suivant").click(function() {slider.goToNextSlide() }); $("#close_recette").fadeIn("fast"); $(".recette h1").removeClass("inactif"); load_clic_close(); // refresh_toolbars(); } //----------------------------------------------------------------------- //----------------------------------------------------------------------- // Au clic sur un bouton de fermeture //----------------------------------------------------------------------- function load_clic_close() { // alert("load_clic_close()"); $(".close").click(function() { // alert("clic sur .close"); var szId = $(this).attr("id"); if( szId == "close_forme" ) { close_forme(); } if( szId == "close_ingredient" ) { close_ingredient(); } if( szId == "close_saveur" ) { close_saveur( $(this) ); } if( szId == "close_recette" ) { close_recette(); } }); } //----------------------------------------------------------------------- //----------------------------------------------------------------------- // Fonction permettant de récupérer le libellé de la saveur //----------------------------------------------------------------------- function load_libelle_saveur( nIdElement ) { // on met à jour l'image $(".saveur img").attr("src", "http://www.cornand.fr/data/photos/saveurs/saveur_" + nIdElement + "_g.png"); // on récupère le libellé de la forme var adresse = "/admin/cornand/scripts/action_saveur.php?szMode_PM=recup_libelle&nIdElement_PM=" + nIdElement; var szLibelle = $.ajax({ url: adresse, async: false }).responseText; // on met à jour le libellé $(".saveur img").attr("title", szLibelle); $(".saveur img").attr("alt", szLibelle); $(".saveur h2").html(szLibelle); } //-----------------------------------------------------------------------