/*

 * Custom code goes here.

 * A template should always ship with an empty custom.js

 */

//-------------------------------------------------------------------------------------

// ---------------------------------------- Panier ------------------------------------

//-------------------------------------------------------------------------------------

$('.btnIcon').click(function () {
  if ($(this).prev().attr('type') == 'password') {
    $(this).prev().attr('type', 'text');

    $(this).find('svg').addClass('active');
  } else {
    $(this).prev().attr('type', 'password');

    $(this).find('svg').removeClass('active');
  }
});

//-------------------------------------------------------------------------------------

// ---------------------------------------- Panier ------------------------------------

//-------------------------------------------------------------------------------------

$('.qty-row-product-cart').change(function () {
  var valQty = $(this).val();

  //console.log(valQty);

  $(this).next().find('input.js-cart-line-product-quantity').val(valQty);

  // $(this).next().find('input.js-cart-line-product-quantity').trigger("click");
});

//-------------------------------------------------------------------------------------

// -------------------------------- Tunnel d'achat ------------------------------------

//-------------------------------------------------------------------------------------

$('.delivery-option').click(function () {
  $('.delivery-option.active').removeClass('active');

  $(this).addClass('active');
});

//-------------------------------------------------------------------------------------

// ---------------- Gestion des packs sur les pages produits complexes ----------------

//-------------------------------------------------------------------------------------

// Initialisation de la quantité des packs à 0 (Ajout au panier impossible tant qu'un pack n'est pas sélectionné)

$('.click-pack-js').siblings('form').find("input[name='qty']").val(0);

// Simulation d'ajout au panier lors du clic sur le bounton d'ajout au panier principal

$('.click-pack-js').click(function () {
  $('.click-pack-js').removeAttr('checked');
  $(this).prop('checked', true);

  // Activation du bouton d'ajout au panier lors du choix du pack

  $('.add-to-cart-custom').removeClass('disabled');

  // Récupération de la quantité présente dans le select

  var nbCart = parseInt($('.custom-select.qty').val());

  // Suppression de toutes les classes triggerClick (class servant à l'ajout au panier)

  $('.triggerClick').removeClass('triggerClick');

  // A chaque click sur un pack, la sélection de quantité des autres passe à 0 (Pour plus de sécurité)

  $('.click-pack-js').siblings('form').find("input[name='qty']").val(0);

  // Au click sur un pack, sa quantité pour l'ajout au panier sera égale au select de la fiche produit

  $(this).siblings('form').find("input[name='qty']").val(nbCart);

  // Ajout de la classe triggerClick sur le bouton de l'élément sélectionné

  $(this).siblings('form').find('button').addClass('triggerClick');
});

function addCartPack() {
  // Ajout au panier du bon pack en fonction de la class trigerClick, activer dans le code juste avant
  var nbCart = parseInt($('.custom-select.qty').val());
  $('.click-pack-js:checked')
    .siblings('form')
    .find("input[name='qty']")
    .val(nbCart);
  $('.click-pack-js:checked')
    .siblings('form')
    .find('.triggerClick')
    .trigger('click');
}

// Changement de la quantité lors de la modification du sélecteur sur un pack déjà sélectionné

$('.custom-select.qty').change(function () {
  // Récupération de la quantité présente dans le select

  var nbCart = parseInt($('.custom-select.qty').val());

  // Changement de la quantité sur le pack sélectionner lors de la modification du selecteur de quantité

  $('.click-pack-js:checked')
    .siblings('form')
    .find("input[name='qty']")
    .val(nbCart);
});

/*

function addBundlePackToCart() {
  $('.bundle-form .add-cart-bundle').each(function (index) {
    $(this).trigger('click', function () {
      if (!index == 0) {
        //console.log(index);

        $('#blockcart-modal').removeClass('show');

        $('.modal-backdrop').removeClass('show');
      }
    });
  });

*/


/**
 * Gestion bundle addTocart
 */
$(document).ready(function(){

  $('#addBundleV2:not(.f-disabled)').click(function(){

    $('.loading-spinner').addClass('active');
    $('.bundle-cart-text').addClass('d-none');

    let token = $('#addBundleInfosV2 input[name="token"]').val();
    let url = $('#addBundleInfosV2 input[name="cart-url"]').val();

    console.log(token);

    $('#addBundleInfosV2 input[name="id_product"]').each(function(index, element){
      console.log($(this).val());
      $.ajax({
        type: "POST",
        data: {
            token : token,
            id_product: $(this).val(),
            qty :1,
            add : "1",
            action : "update",
            isBundle : (index == $('#addBundleInfosV2 input[name="id_product"]').length -1) ? 1 : 0
        },
        url: url,
        dataType: "html",
        async: false,
        success: function (data) {
            //console.log('Produit ajouté au panier');
            $('#addBundleV2:not(.f-disabled)').addClass('f-disabled');
        }
      });

      if( index == $('#addBundleInfosV2 input[name="id_product"]').length -1){
        let requestData = {
          id_product: $(this).val(),
          action: "add-to-cart",
        };
        let refreshURL = '/module/ps_shoppingcart/ajax';
        $.post(refreshURL, requestData)
          .then(function (resp) {
            if($(window).width() > 983){
              console.log('passe bureau');
              var html = $('<div />').append($.parseHTML(resp.preview));
              $('.blockcart').replaceWith($(resp.preview).find('.blockcart'));
            } else {
              console.log('passe mobile');
              var html = $.parseHTML(resp.preview);
              mobileCart = "";
              html.map(function(data){
                if(data.id === "menu-shopBag"){
                  mobileCart = data.innerHTML;
                }
              })
              $('#menu-shopBag').html(mobileCart);
              reset();
            }


            if (resp.modal) {
              $('#blockcart-modal').remove();
              $('body').append(resp.modal);
              $('#blockcart-modal').modal('show');
            }
          })
          .fail(function (resp) {
            prestashop.emit('handleError', {
              eventType: 'updateShoppingCart',
              resp: resp,
          });
        });
      }
    })

    $('bundle-cart-text').show(0);
    $('.loading-spinner').removeClass('active');
    $('.bundle-cart-text').removeClass('d-none');

  })
})



// ---------------- FIN Gestion des packs sur les pages produits complexes ----------------




//-------------------------------------------------------------------------------------

// ------------------------------ Modifie BLOC BLOG -----------------------------------

//-------------------------------------------------------------------------------------

$('.collapsePress .press-more').click(function (){

  var col = $(this).closest(".col-md-4");

  col.addClass("col-md-12");
  col.removeClass("col-md-4");

  $('html, body').animate(
    {
      scrollTop: $(this).parent().parent().parent().offset().top - 100,
    },
    500
  );

});

$('.collapsePress .press-less').click(function (){

  var col = $(this).closest(".col-md-12");

  col.addClass("col-md-4");
  col.removeClass("col-md-12");

  $('html, body').animate(
    {
      scrollTop: $(this).parent().parent().parent().offset().top - 100,
    },
    500
  );

});


//-------------------------------------------------------------------------------------

// ------------------------------------ MENU ------------------------------------------

//-------------------------------------------------------------------------------------

$("button[data-target='menu-mobile']").click(function () {
  $('#menu-mobile').toggleClass('active');

  $('.bs-canvas-overlay').toggleClass('show');
});

$('#close-menu-mobile').click(function () {
  $('#menu-mobile').toggleClass('active');

  $('.bs-canvas-overlay').toggleClass('show');
});

$("button[data-target='menu-search']").click(function () {
  $('#menu-search').toggleClass('active');
});

$('#close-menu-search').click(function () {
  $('#menu-search').toggleClass('active');
});

$("button[data-target='menu-customer-signin']").click(function () {
  $('#menu-customer-signin').toggleClass('active');
});

$('#close-menu-customer-signin').click(function () {
  $('#menu-customer-signin').toggleClass('active');
});

$("button[data-target='menu-shopBag']").click(function () {
  $('#menu-shopBag').toggleClass('active');
});

$('#close-menu-shopBag').click(function () {
  $('#menu-shopBag').toggleClass('active');
});

$('.first-li').mouseover(function () {
  $('.first-li').toggleClass('active');
});

$('.cat_level2').on('mouseover', function () {
  $('.cat_level2').removeClass('active');

  $(this).addClass('active');
});

$('.catSubmenu').click(function () {
  $(this).toggleClass('active');
});

$('.subMenuChildren').click(function () {
  $(this).toggleClass('active');
});

$('.cmsMenu').click(function () {
  $(this).toggleClass('active');
});

$('.cmsChildren').click(function () {
  $(this).toggleClass('active');
});

if (
  $('body').attr('id') == 'index' ||
  $('body').attr('id') == 'category' ||
  $('body').attr('id') == 'new-products'
) {
  $('#navbarNavDropdown .first-li ').addClass('visible');
}

//-------------------------------------------------------------------------------------

// ------------------------------------ MENU ------------------------------------------

//-------------------------------------------------------------------------------------

$('.nav-item-criterions').click(function () {
  $(this).toggleClass('active');

  if ($(this).hasClass('active')) {
    $(this).text('Voir moins');
  } else {
    $(this).text('Voir plus');
  }
});

// ---------------- Slider fiches produits et header slider ----------------

var $slider = $('.headerslider');

if ($slider.length) {
  var currentSlide;

  var slidesCount;

  var sliderCounter = document.createElement('div');

  sliderCounter.classList.add('slider__counter');

  sliderCount = document.querySelectorAll('.headerslider-item').length;

  var updateSliderCounter = function (slick, currentIndex) {
    currentSlide = slick.slickCurrentSlide() + 1;

    slidesCount = slick.slideCount;

    if (slidesCount >= 10) {
      $(sliderCounter).text(currentSlide + ' / ' + sliderCount);
    } else {
      $(sliderCounter).text('0' + currentSlide + ' / ' + ' 0' + sliderCount);
    }
  };

  $slider.on('init', function (event, slick) {
    $slider.append(sliderCounter);

    updateSliderCounter(slick);
  });

  $slider.on('afterChange', function (event, slick, currentSlide) {
    updateSliderCounter(slick, currentSlide);
  });

  $slider.slick({
    infinite: false,

    autoplay: true,

    autoplaySpeed: 4000,

    slidesToShow: 1,

    slidesToScroll: 1,

    arrows: true,
  });
}

var $status = $('.count');

var $slickElement = $('.slider-img-product-big');

$slickElement.on(
  'init reInit afterChange',
  function (event, slick, currentSlide, nextSlide) {
    //currentSlide is undefined on init -- set it to 0 in this case (currentSlide is 0 based)

    var i = (currentSlide ? currentSlide : 0) + 1;

    if (i < 10) {
      i = '0' + i;
    }

    if (slick.slideCount < 10) {
      if (slick.slideCount.length > 1) {
        slick.slideCount = slick.slideCount.substring(1);
      }

      slick.slideCount = '0' + slick.slideCount;
    }

    $status.text(i + ' / ' + slick.slideCount);

    var heightBigProduct = $('.slider-img-product-big').height();

    $('.wrap-item-slider-img-product-small').height(
      Math.round(heightBigProduct / 5 - 2)
    );
  }
);

$('.slider-img-product-big').slick({
  infinite: true,

  autoplay: false,

  slidesToShow: 1,

  slidesToScroll: 1,

  arrows: true,

  asNavFor: '.slider-img-product-small',

  focusOnSelect: true,

  prevArrow: $('.carousel-control-prev'),

  nextArrow: $('.carousel-control-next'),
});

let slideToShow = 0;
$('.item-slider-img-product-small').length - 1 < 5
  ? (slideToShow = $('.item-slider-img-product-small').length - 1)
  : (slideToShow = 5);
slideToShow < 1 ? (slideToShow = 1) : '';

$('.slider-img-product-small').slick({
  infinite: true,

  autoplay: false,

  slidesToShow: slideToShow,

  slidesToScroll: 1,

  arrows: false,

  vertical: true,

  asNavFor: '.slider-img-product-big',

  focusOnSelect: true,

  verticalSwiping: true,
});

setTimeout(function () {
  let heightContainer = $('#carousel-thumb').height();
  let heightVerticalSlider = $('#carousel-thumb .slick-list').height();
  let marginList = (heightContainer - heightVerticalSlider) / 2 + 'px';
  $('#carousel-thumb .slick-list').css('margin-top', marginList);
}, 200);

$('.slider-pack-product').slick({
  infinite: true,

  autoplay: false,

  slidesToShow: 4,

  slidesToScroll: 4,

  arrows: true,

  prevArrow: $('.controls-top .prev'),

  nextArrow: $('.controls-top .next'),
});

// ---------------- FIN Slider fiches produits et header slider ----------------

// ---------------- Activations des onglet lors du scroll sur les fiches produits ----------------

$('#list-desc .link a').click(function () {
  $('#list-desc .link a').removeClass('active');

  $(this).addClass('active');
});

$(window).on('resize scroll', function () {
  var test = 0;

  $.fn.isInViewport = function () {
    var elementTop = $(this).offset().top;

    var elementBottom = elementTop + $(this).outerHeight();

    var viewportTop = $(window).scrollTop();

    var viewportBottom = viewportTop + $(window).height();

    return elementBottom > viewportTop && elementTop < viewportBottom;
  };

  $('.scrollspy-exemple .test-viewport').each(function (index) {
    var id = $(this).attr('id');

    if ($(this).isInViewport() && test == 0) {
      $(".list-group-item-action[href='#" + id + "']").addClass('active');

      test = 1;
    } else {
      $(".list-group-item-action[href='#" + id + "']").removeClass('active');
    }
  });
});

// ---------------- FIN Activations des onglet lors du scroll sur les fiches produits ----------------

// ---------------- Player audio ----------------

/*

$( "#start-song" ).click(function() {

    // var audio_url = $(".list_song li.active").attr('data-song');



    console.log('window');



    var url = "/player.html";

    var height=5;

    var width=5;

    var t=window.innerHeight-height;

    var l=window.innerWidth-width;

    window.open(url, "s", "width= 1000, height= 500, left="+l+", top="+t+";, resizable=yes, toolbar=no, location=no, directories=no, status=no, menubar=no, scrollbars=yes, resizable=no, copyhistory=no").blur();

    setTimeout(function () {

        console.log('focus');

        window.focus();

    }, 1000);



    $(".controls-player").addClass("active");



});

*/

// ---------------- FIN Player audio ----------------

jQuery(document).ready(function ($) {
  var bsDefaults = {
      offset: false,

      overlay: true,

      width: '100%',
    },
    bsMain = $('.bs-offset-main'),
    bsOverlay = $('.bs-canvas-overlay');

  $('[data-toggle="canvas"][aria-expanded="false"]').on('click', function () {
    var canvas = $(this).data('target'),
      opts = $.extend({}, bsDefaults, $(canvas).data()),
      prop = $(canvas).hasClass('bs-canvas-right')
        ? 'margin-right'
        : 'margin-left';

    if (opts.width === '100%') opts.offset = false;

    $(canvas).css('width', opts.width);

    if (opts.offset && bsMain.length) bsMain.css(prop, opts.width);

    $(canvas + ' .bs-canvas-close').attr('aria-expanded', 'true');

    $('[data-toggle="canvas"][data-target="' + canvas + '"]').attr(
      'aria-expanded',
      'true'
    );

    if (opts.overlay && bsOverlay.length) bsOverlay.addClass('show');

    return false;
  });

  $('.bs-canvas-close, .bs-canvas-overlay').on('click', function () {
    var canvas, aria;

    $('#menu-mobile').removeClass('active');

    $('#menu-customer-signin').removeClass('active');

    $('#menu-search').removeClass('active');

    $('#menu-shopBag').removeClass('active');

    if ($(this).hasClass('bs-canvas-close')) {
      canvas = $(this).closest('.bs-canvas');

      aria = $(this).add(
        $('[data-toggle="canvas"][data-target="#' + canvas.attr('id') + '"]')
      );

      if (bsMain.length)
        bsMain.css(
          $(canvas).hasClass('bs-canvas-right')
            ? 'margin-right'
            : 'margin-left',
          ''
        );
    } else {
      canvas = $('.bs-canvas');

      aria = $('.bs-canvas-close, [data-toggle="canvas"]');

      if (bsMain.length)
        bsMain.css({
          'margin-left': '',

          'margin-right': '',
        });
    }

    canvas.css('width', '');

    aria.attr('aria-expanded', 'false');

    if (bsOverlay.length) bsOverlay.removeClass('show');

    return false;
  });
});

$(document).ready(function () {
  $('.album-collapse').click(function () {
    $(this).children('.artiste').toggleClass('active');

    $(this).next('.disc-collapse').collapse('toggle'); // toggle collapse
  });

  $('.collapse-tracks').click(function () {
    $(this).toggleClass('active');

    $(this).next('.list-tracks').collapse('toggle'); // toggle collapse
  });
});

$(document).ready(function () {
  $('.btnPlay').click(function () {
    var audio = document.getElementById('lecteur');

    $('.btnPlay').children('figure').show();

    audio.play();

    $('.btnPlay').children('.extraitbtn').hide();
  });
});

$(document).ready(function () {
  // Add minus icon for collapse element which is open by default

  $('.collapse.show').each(function () {
    $(this)
      .prev('.card-header')
      .find('.fa')
      .addClass('fa-minus')
      .removeClass('fa-plus');
  });

  // Toggle plus minus icon on show hide of collapse element

  $('.collapse')
    .on('show.bs.collapse', function () {
      $(this)
        .prev('.card-header')
        .find('.fa')
        .removeClass('fa-plus')
        .addClass('fa-minus');
    })
    .on('hide.bs.collapse', function () {
      $(this)
        .prev('.card-header')
        .find('.fa')
        .removeClass('fa-minus')
        .addClass('fa-plus');
    });
});

$(document).ready(function () {
  $('.collapsePress').click(function () {
    $(this).toggleClass('active');

    $(this).prev('.collapsePresseParagraph').collapse('toggle');
  });

  $('.collapsePressParagraph').click(function () {
    $(this).toggleClass('active');

    if ($(this).hasClass('active')) {
      $(this).text("Réduire l'article");
    } else {
      $(this).text("Lire l'article");
    }
  });

  $('.booklet-collapse').click(function () {
    $(this).children('.booklet').toggleClass('active');

    $(this).next('.booklet-content').collapse('toggle'); // toggle collapse
  });

  $('.description-collapse').click(function () {
    $(this).children('.description').toggleClass('active');

    $(this).next('.description-content').collapse('toggle'); // toggle collapse
  });

  $('#btnCollapseFilter').click(function () {
    $('#collapseFilter').collapse('toggle'); // toggle collapse
  });

  $('.listNews-button').click(function (){

    if($(this).closest('.listNews').hasClass('active')){

      $(this).closest('.listNews').removeClass('active');
      /* $(this).closest('.listNews').addClass('col-md-6'); */

    }else{
      /* $('.listNews').addClass('col-md-6'); */
      $('.listNews').removeClass('active');

      $(this).closest('.listNews').addClass('active');
      /* $(this).closest('.listNews').removeClass('col-md-6'); */

    }

  });

});

$('.close-notif').click(function () {
  $('.newsletter-notification').addClass('hidden');
});

// When the user scrolls the page, execute myFunction

$(window).scroll(function () {
  stickyMenuTw();
});
// Get the navbar

var navbar = $('.header-top');

var menu = $('.menu');

var menuCat = $('.nav-item.first-li');

function stickyMenuTw() {
  if ($(window).scrollTop() >= 49) {
    $('#ghostDiv').addClass('h-180');
    $('#header-wrapper-inner').addClass('sticky-header');
    setTimeout(function () {
      $('#headerTop').addClass('h-80');
    }, 0);

    /* $('#headerTop').addClass('h-80'); */
  } /* if($(window).scrollTop() === 0) */ else {
    $('#header-wrapper-inner').removeClass('sticky-header');
    $('#ghostDiv').removeClass('h-180');
    $('#headerTop').removeClass('h-80');
  }

  if (
    $(window).scrollTop() >= 350 &&
    $('#navbarDropdownMenuLink:hover').length == 0
  ) {
    $('#index .navbar .dropdown-menu.level-1').slideUp();
    $('#category .navbar .dropdown-menu.level-1').slideUp();
    $('#new-products .navbar .dropdown-menu.level-1').slideUp();
  } else {
    $('#index .navbar .dropdown-menu.level-1').slideDown();
    $('#category .navbar .dropdown-menu.level-1').slideDown();
    $('#new-products .navbar .dropdown-menu.level-1').slideDown();
  }
}

// Add the sticky class to the navbar when you reach its scroll position. Remove "sticky" when you leave the scroll position
function stickyMenu() {
  if ($(window).scrollTop() >= 300) {
    navbar.addClass('sticky');

    menu.addClass('sticky');

    menuCat.removeClass('active');

    menuCat.removeClass('visible');

    $('#top-bar-header').addClass('hide');
    $('#headerTop').addClass('header-top-scroll');
    $('#headerTop').removeClass('header-top-noscroll');

    // $('.dropdown-menu.level-1').stop(true,true).slideUp(200);
    $('#header').toggleClass('scroll');
  } else {
    navbar.removeClass('sticky');

    menu.removeClass('sticky');

    menuCat.addClass('active');

    menuCat.addClass('visible');

    $('#top-bar-header').removeClass('hide');
    $('#headerTop').addClass('header-top-noscroll');
    $('#headerTop').removeClass('header-top-scroll');

    // $('.dropdown-menu.level-1').stop(true,true).slideDown(200);
    $('#header').toggleClass('scroll');
  }
}

$('.carousel.carousel-multi-item.v-2 .carousel-item').each(function () {
  var next = $(this).next();

  if (!next.length) {
    next = $(this).siblings(':first');
  }

  next.children(':first-child').clone().appendTo($(this));

  for (var i = 0; i < 4; i++) {
    next = next.next();

    if (!next.length) {
      next = $(this).siblings(':first');
    }

    next.children(':first-child').clone().appendTo($(this));
  }
});

$('.expand-button').on('click', function () {
  $('.special-text').toggleClass('-expanded');
});

$(document).ready(function(){
  const heightDescription = $("#presentation .special-text").height();
  if (heightDescription < 415){
    $('.expand-button').hide();
    $("#presentation .special-text").addClass('-expanded');
  }

})

///////////////////////////////////////////////

////////AJOUT PANIER PRODUIT NUMERIQUE/////////

///////////////////////////////////////////////

if ($('#ap5-buy-block-container').hasClass('productInCart')) {
  $('.add-to-cart-custom').addClass('disabled');

  $('.product-is-in-cart').addClass('active');

  $('.productPackVirtual').addClass('productVirtualInCart');
}

if ($('.productPackVirtual').hasClass('productInCart')) {
  $('.add-to-cart-custom').addClass('disabled');

  $('.product-virtual-is-in-cart').addClass('active');
}

//Rend la sélection de quantité impossible

//Si le produit est déjà dans le panier, rend l'ajout au panier impossible

$('#ap5-buy-block-container').on('click', function () {
  $(this).addClass('ap5-checked');

  $('.custom-select').val('1');

  $('.custom-select').prop('disabled', 'disabled');

  $('.product-is-in-cart').removeClass('active');

  $('.product-virtual-is-in-cart').removeClass('active');

  $('.productPackVirtual').removeClass('virtual-checked');

  if ($('#ap5-buy-block-container').hasClass('productInCart')) {
    $('.add-to-cart-custom').addClass('disabled');

    $('.product-is-in-cart').addClass('active');

    $('.productPackVirtual').addClass('productVirtualInCart');
  }

  if ($('.productPackVirtual').hasClass('productInCart')) {
    $('.add-to-cart-custom').addClass('disabled');

    $('.product-virtual-is-in-cart').addClass('active');
  }
});

$('.li_productPack.productPackVirtual').on('click', function () {
  $(this).addClass('virtual-checked');

  $('#ap5-buy-block-container').removeClass('ap5-checked');

  $('.li_pack').removeClass('virtual-checked');

  $('.custom-select').val('1');

  $('.custom-select').prop('disabled', 'disabled');

  $('.product-is-in-cart').removeClass('active');

  $('.product-virtual-is-in-cart').removeClass('active');

  if ($(this).hasClass('productInCart')) {
    $('.add-to-cart-custom').addClass('disabled');

    $('.product-is-in-cart').addClass('active');
  }

  if ($('#ap5-buy-block-container').hasClass('productInCart')) {
    $('.add-to-cart-custom').addClass('disabled');

    $('.product-virtual-is-in-cart').addClass('active');
  }
});

$('.productPackPhysical').on('click', function () {
  $('.product-is-in-cart').removeClass('active');

  $('.product-virtual-is-in-cart').removeClass('active');

  $('.productPackVirtual').removeClass('virtual-checked');

  $('.li_pack').removeClass('virtual-checked');

  $('#ap5-buy-block-container').removeClass('ap5-checked');

  $('.custom-select').removeAttr('disabled');
});

$('.allDigital').on('click', function () {
  $('.completePack').removeClass('virtual-checked');

  $(this).addClass('virtual-checked');

  $('.custom-select').val('1');

  $('.custom-select ').prop('disabled', 'disabled');

  $('.product-is-in-cart').removeClass('active');

  if ($(this).hasClass('productInCart')) {
    $('.product-virtual-is-in-cart').removeClass('active');

    $('.add-to-cart-custom').addClass('disabled');

    $('.product-is-in-cart').addClass('active');
  }

  if ($('.completePack').hasClass('productInCart')) {
    $('.add-to-cart-custom').addClass('disabled');

    $('.product-virtual-is-in-cart').addClass('active');
  }
});

$('.completePack').on('click', function () {
  $('.allDigital').removeClass('virtual-checked');

  $(this).addClass('virtual-checked');

  $('.custom-select').val('1');

  $('.custom-select ').prop('disabled', 'disabled');

  $('.product-is-in-cart').removeClass('active');

  if ($(this).hasClass('productInCart')) {
    $('.product-virtual-is-in-cart').removeClass('active');

    $('.add-to-cart-custom').addClass('disabled');

    $('.product-is-in-cart').addClass('active');
  }

  if ($('.allDigital').hasClass('productInCart')) {
    $('.add-to-cart-custom').addClass('disabled');

    $('.product-virtual-is-in-cart').addClass('active');
  }
});

$('.physicalPack').on('click', function () {
  $('.allDigital').removeClass('virtual-checked');

  $('.completePack').removeClass('virtual-checked');

  $('.product-is-in-cart').removeClass('active');

  $('.product-virtual-is-in-cart').removeClass('active');

  $('.custom-select').removeAttr('disabled');
});

//Désactive le bouton ajout au panier si un pack ou une version numérique ont été ajoutées

$('.add-to-cart-custom').on('click', function () {
  var virtualInCart = $('.product-is-in-cart');

  if ($('#ap5-buy-block-container').hasClass('ap5-checked')) {
    $('#ap5-buy-block-container').addClass('productInCart');

    $('.productPackVirtual').addClass('productVirtualInCart');

    $('.add-to-cart-custom').addClass('disabled');

    setTimeout(function () {
      virtualInCart.addClass('active');
    }, 3000);
  }

  if ($('.productPackVirtual').hasClass('virtual-checked')) {
    $('.productPackVirtual').addClass('productInCart');

    $('#ap5-buy-block-container').addClass('productVirtualInCart');

    $('.add-to-cart-custom').addClass('disabled');

    setTimeout(function () {
      virtualInCart.addClass('active');
    }, 3000);
  }

  if ($('.allDigital').hasClass('virtual-checked')) {
    $('.allDigital').addClass('productInCart');

    $('.completePack').addClass('productVirtualInCart');

    $('.add-to-cart-custom').addClass('disabled');

    setTimeout(function () {
      virtualInCart.addClass('active');
    }, 3000);
  }

  if ($('.completePack').hasClass('virtual-checked')) {
    $('.completePack').addClass('productInCart');

    $('.allDigital').addClass('productVirtualInCart');

    $('.add-to-cart-custom').addClass('disabled');

    setTimeout(function () {
      virtualInCart.addClass('active');
    }, 3000);
  }
});

$('.view_cat_products').on('click', function () {
  $(this).removeClass('show');

  $('.view_subCat').addClass('show');

  $('.cat_default').addClass('show');

  $('.cat_default').removeClass('hidden');

  $('.cat_subcat').removeClass('show');

  $('.cat_subcat').addClass('hidden');
});

$('.view_subCat').on('click', function () {
  $('.view_cat_products').addClass('show');

  $(this).removeClass('show');

  $('.cat_default').removeClass('show');

  $('.cat_default').addClass('hidden');

  $('.cat_subcat').addClass('show');

  $('.cat_subcat').removeClass('hidden');
});

$('#dropdown-sort').click(function () {
  $('#dropdown-block').collapse('toggle');
});

///////////////////////////////////////////////

///////////////FILTRE A FACETTES///////////////

///////////////////////////////////////////////

$('.input-search-checkbox').keypress(function (e) {
  if (e.which == 13) return false;
});

$('.input-search-checkbox').keyup(function () {
  var id, input, filter, ul, li, a, i, txtValue, nav;

  id = $(this).attr('id');

  input = $(this);

  filter = this.value.toUpperCase();

  ul = $('#PM_ASCriterionGroupCheckbox_1_' + id);

  li = ul.children('li');

  nav = $('#PM_ASCriterionGroupCheckbox_1_' + id + '#nav-item-criterions');

  if (nav != null) {
    for (i = 0; i < li.length; i++) {
      nav.toggleClass('active');

      a = li[i].getElementsByTagName('a')[0];

      txtValue = a.textContent || a.innerText;

      if (txtValue.toUpperCase().indexOf(filter) > -1) {
        li[i].style.display = '';

        nav.toggleClass('active');
      } else {
        li[i].style.display = 'none';
      }
    }
  } else {
    for (i = 0; i < li.length; i++) {
      a = li[i].getElementsByTagName('a')[0];

      txtValue = a.textContent || a.innerText;

      if (txtValue.toUpperCase().indexOf(filter) > -1) {
        li[i].style.display = '';
      } else {
        li[i].style.display = 'none';
      }
    }
  }
});

function filterCheckbox() {
  var input, filter, ul, li, a, i, txtValue, nav;

  input = document.getElementById('input-search-checkbox');

  filter = input.value.toUpperCase();

  ul = document.getElementById('PM_ASCriterionGroupCheckbox_1_8');

  li = ul.getElementsByTagName('li');

  nav = document.getElementById(
    '#PM_ASCriterionGroupCheckbox_1_8#nav-item-criterions'
  );

  if (nav != null) {
    for (i = 0; i < li.length; i++) {
      nav.classList.toggle('active');

      a = li[i].getElementsByTagName('a')[0];

      txtValue = a.textContent || a.innerText;

      if (txtValue.toUpperCase().indexOf(filter) > -1) {
        li[i].style.display = '';

        nav.classList.toggle('active');
      } else {
        li[i].style.display = 'none';
      }
    }
  } else {
    for (i = 0; i < li.length; i++) {
      a = li[i].getElementsByTagName('a')[0];

      txtValue = a.textContent || a.innerText;

      if (txtValue.toUpperCase().indexOf(filter) > -1) {
        li[i].style.display = '';
      } else {
        li[i].style.display = 'none';
      }
    }
  }
}

///////////////////////////////////////////////

///////////////Biographie///////////////

///////////////////////////////////////////////

$('.input-search-checkbox').keypress(function (e) {
  if (e.which == 13) return false;
});

$('.input-search-checkbox').keyup(function () {
  var id, input, filter, ul, li, a, i, txtValue, nav;

  id = $(this).attr('id');

  input = $(this);

  filter = this.value.toUpperCase();

  ul = $('.bioresult');

  li = ul.children('li');

  $(li).each(function(){

    a = $(this).find('a');
    txtValue = a.find('.titleLink').text();

    //console.log(filter.length);

    if(filter.length >= 1){

      if (txtValue.toUpperCase().indexOf(filter) > -1) {

        $(this).css('display', 'block');
        $(this).addClass('active-li');

      } else {

        $(this).css('display', 'none');
        $(this).removeClass('active-li');

      }

    } else {

      $(this).css('display', 'block');
      $(this).removeClass('active-li');

    }

  });

  $(ul).each(function(){

    activeLi = $(this).find('.active-li');
    lilength = activeLi.length;

    if(lilength == 0){
      $(this).closest('.listNews').removeClass('active');
    }else{
      $(this).closest('.listNews').addClass('active');
    }

  });


});

function filterCheckbox() {
  var input, filter, ul, li, a, i, txtValue, nav;

  input = document.getElementById('input-search-checkbox');

  filter = input.value.toUpperCase();

  ul = document.getElementById('PM_ASCriterionGroupCheckbox_1_8');

  li = ul.getElementsByTagName('li');

  for (i = 0; i < li.length; i++) {
    a = li[i].getElementsByTagName('a')[0];

    txtValue = a.textContent || a.innerText;

    if (txtValue.toUpperCase().indexOf(filter) > -1) {
      li[i].style.display = '';
    } else {
      li[i].style.display = 'none';
    }
  }
}

$(document).ready(function () {
  if ($('body#identity')) {
    $('input[name="psgdpr"]').prop('checked', 'checked');
  }
});

/**
 * Rendre les boutons radio de la création de compte M. et madame décliquable
 */
$(document).ready(function () {
  let valueRadio = false;

  $('.item-gender-1').click(function () {
    if (!valueRadio) {
      if ($('.item-gender-1').find('input:checked').length) {
        $('.item-gender-1').find('input:checked')[0].checked = true;
        valueRadio = true;
      }
    } else {
      if ($('.item-gender-1').find('input:checked').length) {
        $('.item-gender-1').find('input:checked')[0].checked = false;
        valueRadio = false;
      }
    }
  });

  $('.item-gender-2').click(function () {
    if (!valueRadio) {
      if ($('.item-gender-2').find('input:checked').length) {
        $('.item-gender-2').find('input:checked')[0].checked = true;
        valueRadio = true;
      }
    } else {
      if ($('.item-gender-2').find('input:checked').length) {
        $('.item-gender-2').find('input:checked')[0].checked = false;
        valueRadio = false;
      }
    }
  });
});

/**
 * Cas d'utilisation : un visiteur essaye de s'enregistrer avec une adresse mail déjà en base de données
 * Comportement : Le visiteur est renvoyé sur la page de connexion avec son adresse mail passée en cookie, ( override/classe/CustomerForm.php )
 * On rempli le JS le formulaire avec le cookie
 */
$(document).ready(function () {
  let cookie = getCookie('mail_already_registred');
  if (cookie) {
    let mail = cookie.replace('%40', '@');
    $('#authentication .formConnexion input[type="email"]').val(mail);
    $('#msg-mail-register').fadeIn();
  }

  function getCookie(cname) {
    let name = cname + '=';
    let decodedCookie = decodeURIComponent(document.cookie);
    let ca = decodedCookie.split(';');
    for (let i = 0; i < ca.length; i++) {
      let c = ca[i];
      while (c.charAt(0) == ' ') {
        c = c.substring(1);
      }
      if (c.indexOf(name) == 0) {
        return c.substring(name.length, c.length);
      }
    }
    return '';
  }
});


/**
 * Réparation comportement filtre à facette
 */
 $(document).on('click', '.PM_ASBlockOutput .PM_ASLabelCheckbox', function(e) {
  e.preventDefault();
  $('p.view_cat_products.show').click();
});




$(document).ready(function(){

  // smooth scroll page dictionnaire
  $(document).on('click', '.smoothAnchor', function (event) {
      event.preventDefault();

      $('html, body').animate({
          scrollTop: $($.attr(this, 'href')).offset().top - 125
      }, 500);
    });

  // ancre vers le haut de la page dictionnaire
  $(document).scroll(function(){
    if ($(document).scrollTop() >= 750) {
      $("#anchorTop").addClass('active');
    } else {
      $("#anchorTop").removeClass('active');
    }
  })

  $("#anchorTop").click(function(){
    window.scrollTo({ top: 0, behavior: 'smooth' });
  })


  // Reset le style des div quand la recherche sur le dictionnaire est à 0
  $('.cms-id-20 .input-search input').on('keyup', function(){
    if(!$(this).val()){
      $('.listNews').each(function(){
        $(this).addClass('active');
      })
    }
  })




  // Volume extrait audio page produit 50%
  if(document.getElementById("lecteur")){
    document.getElementById("lecteur").volume = 0.5;
  };



  /**
   * Modification comportement filtre à facette
   */

  let criterionsArray = [];

  $('.PM_ASCriterionsGroup.PM_ASCriterionsGroupFeature').each(function(index, element){
    criterionsArray[element.id] = 1;
  })

  // Quand l'utilisateur commence à remplir un champ sur le filtre à facette
  $('#category input.f-search, #new-products input.f-search, #advancedsearch-seo-6 input.f-search').on('keyup',function(){
    // Si le champ est vide
    if(!$(this).val()){
      let id = $(this).parent().parent().parent().parent().parent().parent().attr('id');
      criterionsArray[id] = 1;
      // passer en voir moins
      $(this).parent().parent().parent().find('.nav-item-criterions.active').removeClass('active').text('Voir plus').show(0);
    } else {
      // passer en voir plus
      let id = $(this).parent().parent().parent().parent().parent().parent().attr('id');
      if(criterionsArray[id] === 1){
        $(this).parent().parent().parent().find('.nav-item-criterions:not(.active)').addClass('active').text('Voir moins').hide(0);
        criterionsArray[id] = 0;
      }


    }
  })


  /* canScroll = 1;
  $('.PM_ASCriterionCheckbox').click(function(e){
    console.log(canScroll);
    if(canScroll === 1){
      canScroll = 0;
      console.log(canScroll);
      window.scrollTo({ top: 0, behavior: 'smooth' });
      setTimeout(
        function(){canScroll = 1; console.log(canScroll);}, 500

      );

    }

  })*/

  /**
   * Fin de modification comportement filtre à facette
   */

})

//-------------------------------------------------------------------------------------

// --------------- Affiche Bloc Promo lorsque l'on sélectionne le pack ----------------

//-------------------------------------------------------------------------------------

$('.li_pack').click(function () {
  $('.promo-cart').addClass('active');
});

$('.li_productPack').click(function () {
  $('.promo-cart').removeClass('active');
});

/*$(document).ready(function () {

  $('input.click-pack-js[type=radio]:checked').each(function (){

    var liSelected = $(this).parent('.li_productPack');

    var percent = liSelected.attr('data-discount-percentage');
    var amount = liSelected.attr('data-discount-amount');
    var regularPrice = $(this).attr('data-regular-price');

    console.log(amount);
    console.log(regularPrice);

    $('.discount_percent').html(percent);
    $('.discount_amount').html(amount);

  });


});

 $('.li_productPack').click(function () {
  var percent = $(this).attr('data-discount-percentage');
  var amount = $(this).attr('data-discount-amount');

  $('.discount_percent').html(percent);
  $('.discount_amount').html(amount);

}); */




$(document).ready(function (){

  if($('.physicalPack .click-pack-js')){
    $('.physicalPack .click-pack-js').click();
  }

  if($('.productPackPhysical .click-pack-js')){
    $('.productPackPhysical .click-pack-js').click();
  }

  $('input.click-pack-js[type=radio]:checked').each(function () {

    var liSelected = $(this).parent('.li_pack');
    var amount = liSelected.attr('data-discount-amount');
    if(amount){
      var floatAmount = parseFloat(amount.replace(',','.'));
      var regularPrice = parseFloat(liSelected.attr('data-regular-price').replace(',','.'));
  
      var percentageReduction = (Math.round(((floatAmount / regularPrice)*100)*100)/100).toString().replace('.', ',') + ' %';
    
      $('.discount_percent').html(percentageReduction);
      $('.discount_amount').html(amount);
    }
    
    
  
  });


  

});
$('.physicalPack, .allDigital, .completePack').click(function () {

  var amount = $(this).attr('data-discount-amount');
  var floatAmount = parseFloat(amount.replace(',','.'));
  var regularPrice = parseFloat($(this).attr('data-regular-price').replace(',','.'));

  var percentageReduction = (Math.round(((floatAmount / regularPrice)*100)*100)/100).toString().replace('.', ',') + ' %';

  $('.discount_percent').html(percentageReduction);
  $('.discount_amount').html(amount);

});
/* function floatifyDataAttr(string){
  return parseFloat(string.replace(',','.'));
} */

