templates/cookies/js/consentement.js line 1

Open in your IDE?
  1. <<script>
  2.     $(function(){
  3.         // Récupérer la valeur du cookie nommé "mon_cookie"
  4.         var valeurDuCookie = $.cookie('webgiciel');
  5.         // test si les rgpd sont enregistré dans le cookie
  6.         if (valeurDuCookie !== undefined) {
  7.             gestionBtnConsent(1);
  8.         }
  9.         else{
  10.             ajaxModalConsentCookies(0);
  11.         }
  12.     });
  13.     // gestionBtnConsent
  14.     function gestionBtnConsent(val){
  15.         $("#btnConsent").on("click", function(){
  16.             ajaxModalConsentCookies(val);
  17.         });
  18.     }
  19.     // ajaxModalConsentCookies
  20.     function ajaxModalConsentCookies(supp){
  21.         $.ajax({
  22.             type: "POST",
  23.             url: "{{ path('front_form_consent') }}",
  24.             data: {
  25.                 supp: supp,
  26.             }, 
  27.         })
  28.         .done(function(msg){
  29.             // 1. creation du modal
  30.             $('body').append('<div id="myModal" class="modal" tabindex="-1"><div class="modal-dialog"><div class="modal-content"></div></div></div>');
  31.             // 2. rempli le modal
  32.             $("#myModal .modal-content").html(msg.msg.content);
  33.             // 3. formatte les checkboxes
  34.             $("#p_2 #form_fonctions_0").attr("checked", "checked");    
  35.             $("#p_2 #form_fonctions_0").attr("disabled", "disabled");    
  36.             $("#p_2 #form_fonctions_1").attr("checked", "checked");    
  37.             $("#p_2 #form_fonctions_1").attr("disabled", "disabled");    
  38.             $("#p_2 #form_fonctions_2").attr("checked", "checked");    
  39.             $("#p_2 #form_fonctions_2").attr("disabled", "disabled");    
  40.             $("#p_2 #form_fonctions_3").attr("checked", "checked");    
  41.             // 3. ouvre le modal accepter les rgpd
  42.             $("#myModal").modal('show');
  43.             // events
  44.             // gestion du btnPersonalise
  45.             $("#btnPersonalise").on("click", function(){
  46.                 // recup la page affichee
  47.                 if ($("#myModal #p_1").css("display") != "none")
  48.                 {
  49.                     pAff = 1;
  50.                 }
  51.                 else if ($("#myModal #p_2").css("display") != "none")
  52.                 {
  53.                     pAff = 2;
  54.                 }
  55.                 else{
  56.                     pAff = 3;
  57.                 }
  58.                 // si la page à afficher est differente de la page en cours
  59.                 if (pAff != 2){
  60.                     // masque all
  61.                     $("#myModal [id^=p_]").slideUp(500);
  62.                     // gestion du menu
  63.                     $("#menuRadio #btnradio1").removeAttr('checked');
  64.                     $("#menuRadio #btnradio2").click();
  65.                     $("#menuRadio #btnradio3").removeAttr('checked');
  66.                     // affiche le contenu à personnaliser
  67.                     $("#myModal #p_2").slideDown(500);
  68.                 }
  69.             });
  70.             // gestion du menu du modal
  71.             $("[id^=btnradio]").on("click", function(){
  72.                 // recup la page affichee
  73.                 if ($("#myModal #p_1").css("display") != "none")
  74.                 {
  75.                     pAff = 1;
  76.                 }
  77.                 else if ($("#myModal #p_2").css("display") != "none")
  78.                 {
  79.                     pAff = 2;
  80.                 }
  81.                 else{
  82.                     pAff = 3;
  83.                 }
  84.                 // recup la page à afficher
  85.                 newP = $(this).attr("id").substr(8);
  86.                 // si la page à afficher est differente de la page en cours
  87.                 if (pAff != newP){
  88.                     console.log($("#myModal #p_1").css("display"));
  89.                     console.log($("#btnradio2").attr('checked'));
  90.                     console.log($("#btnradio3").attr('checked'));
  91.                     // masque all
  92.                     $("#myModal [id^=p_]").slideUp(500);
  93.                     console.log("menu "+$(this).attr("id").substr(8));
  94.                     $("#myModal #p_"+$(this).attr("id").substr(8)).slideDown(500);
  95.                 }
  96.             });
  97.             // btnTout
  98.             $("#btnTout").on("click", function(){
  99.                 // Exemple : Écrire un cookie nommé "mon_cookie" avec la valeur "ma_valeur" qui expire dans 7 jours
  100.                 $.cookie('webgiciel', 'All', { expires: 60 });
  101.                 $("#myModal").modal('hide');
  102.                 gestionBtnConsent(1);
  103.                 console.log("clique sur tout");
  104.             });
  105.             // btnEssentiel
  106.             $("#btnEssentiel").on("click", function(){
  107.                 $.cookie('webgiciel', 'Essentiel', { expires: 60 });
  108.                 $("#myModal").modal('hide');
  109.                 gestionBtnConsent(1);
  110.                 console.log("clique sur btnEssentiel");
  111.             });
  112.             // btnSuppr
  113.             $("#btnSuppr").on("click", function(){
  114.                 $.cookie('webgiciel', null, { expires: -1, path: '/' });
  115.                 $("#myModal").modal('hide');
  116.                 gestionBtnConsent(0);
  117.                 console.log("clique sur btnSuppr");
  118.             });
  119.         });
  120.     }
  121.     // setRgpdCookie
  122.     function setRgpdCookie() {
  123.         // Fonction pour créer un cookie RGPD
  124.         // Vérifiez si l'utilisateur a déjà accepté les cookies (pour éviter de réenregistrer le cookie)
  125.         if (document.cookie.indexOf('rgpdAccepted=true') === -1) {
  126.             // Créez un cookie RGPD qui expire après 365 jours
  127.             var expires = new Date();
  128.             expires.setTime(expires.getTime() + (365 * 24 * 60 * 60 * 1000));
  129.             document.cookie = 'rgpdAccepted=true; expires=' + expires.toUTCString() + '; path=/';
  130.             
  131.             // Ajoutez ici le code que vous souhaitez exécuter une fois que l'utilisateur a accepté les cookies
  132.             console.log('L\'utilisateur a accepté les cookies.');
  133.         }
  134.     }
  135.     //getCookie
  136.     function getCookie(nomCookie) {
  137.         deb = document.cookie.indexOf(nomCookie+ "=")
  138.         if (deb >= 0) {
  139.             deb += nomCookie.length + 1
  140.             fin = document.cookie.indexOf(";",deb)
  141.             if (fin < 0) fin = document.cookie.length
  142.             return unescape(document.cookie.substring(deb,fin))
  143.         }
  144.         else return ""
  145.     }
  146.     
  147.     // Appel de la fonction pour créer un cookie RGPD lors du chargement de la page
  148.     //setRgpdCookie();
  149.     
  150. </script>