jQuery(document).ready(function () {
  var OSName = "unknown";
  if (navigator.appVersion.indexOf("Win") != -1) OSName = "windows";
  if (navigator.appVersion.indexOf("Mac") != -1) OSName = "mac";
  if (navigator.appVersion.indexOf("X11") != -1) OSName = "unix";
  if (navigator.appVersion.indexOf("Linux") != -1) OSName = "Linux";
  jQuery("body").addClass(OSName);
});

function smoothscroll() {
  $('.smoothscroll').on('click', function (e) {
    e.preventDefault();
    $target = $(this.hash);
    $space = 0;
    $('html, body').stop().animate({
      'scrollTop': $target.offset().top - $space
    },
      500,
    );
  });
}

jQuery(window).on("load", function () {
  // document.addEventListener('dragover', function(e) { e.preventDefault() })

  AOS.init({
    duration: 1400,
    once: true,
    anchorPlacement: 'top-bottom'
  });

  smoothscroll();

  jQuery('.product-slider-container').slick({
    infinite: true,
    dots: true,
    nav: false,
    arrows: false,
    speed: 300,
    slidesToShow: 1,
    autoplay: true,
    autoplaySpeed: 5000,
  });

  jQuery('.slider-books').slick({
    infinite: true,
    dots: false,
    nav: false,
    arrows: false,
    speed: 300,
    slidesToShow: 2,
    autoplay: true,
    autoplaySpeed: 5000,
    variableWidth: true,
    touchThreshold: 100
  });

  jQuery('.calendar-gallery').slick({
    infinite: true,
    dots: false,
    nav: false,
    arrows: false,
    slidesToShow: 1,
    slidesToScroll: 1,
    autoplay: true,
    autoplaySpeed: 3000,
    variableWidth: false,
    touchThreshold: 100,
  });

  jQuery('.slider-similar-books').slick({
    infinite: true,
    dots: false,
    nav: false,
    arrows: false,
    slidesToShow: 2,
    slidesToScroll: 1,
    autoplay: true,
    autoplaySpeed: 3000,
    variableWidth: true,
    touchThreshold: 100,
  });

  jQuery('.slider-sneak-peek').slick({
    infinite: false,
    dots: false,
    nav: false,
    arrows: true,
    speed: 300,
    slidesToShow: 1,
    // autoplay: true,
    // autoplaySpeed: 5000,
    variableWidth: true
  });

  jQuery('.horoscope-nav-slider').slick({
    infinite: false,
    dots: false,
    nav: false,
    arrows: true,
    speed: 300,
    slidesToShow: 8,
    swipeToSlide: true,
    variableWidth: true
  });

  jQuery('.horoscope-nav-slider-yearly').slick({
    infinite: false,
    dots: false,
    nav: false,
    arrows: true,
    speed: 300,
    slidesToShow: 11,
    swipeToSlide: true,
    variableWidth: true
  });

  $('.main-sneak-peek').slick({
    slidesToShow: 1,
    slidesToScroll: 1,
    arrows: false,
    fade: true,
    swipe: false,
    asNavFor: '.slider-nav-sneak-peek'
  });

  $('.slider-nav-sneak-peek').slick({
    slidesToShow: 4,
    asNavFor: '.main-sneak-peek',
    dots: false,
    arrows: false,
    centerMode: false,
    variableWidth: true,
    swipe: false,
    focusOnSelect: true
  });

  jQuery('.featured-slider').slick({
    infinite: true,
    dots: false,
    nav: false,
    arrows: false,
    speed: 300,
    slidesToShow: 1,
    swipeToSlide: true,
    variableWidth: true,
    slidesToScroll: 1,
    autoplay: true,
    autoplaySpeed: 3000,
    touchThreshold: 100,
    responsive: [{
      breakpoint: 767,
      settings: {
        arrows: true,
      }
    }]
  });

  jQuery('.list-article-category').slick({
    infinite: false,
    dots: false,
    nav: false,
    arrows: false,
    speed: 300,
    slidesToShow: 5,
    swipeToSlide: true,
    variableWidth: true,
    responsive: [{
      breakpoint: 992,
      settings: {
        slidesToShow: 3,
      }
    },
    {
      breakpoint: 768,
      settings: {
        slidesToShow: 1,
      }
    }
    ]
  });

  jQuery('.featured-products-sliders').slick({
    infinite: true,
    dots: false,
    nav: false,
    arrows: false,
    speed: 300,
    slidesToShow: 3,
    autoplay: true,
    autoplaySpeed: 5000,
    variableWidth: true,
    swipeToSlide: true,
    responsive: [{
      breakpoint: 992,
      settings: {
        slidesToShow: 2,
      }
    },
    {
      breakpoint: 768,
      settings: {
        slidesToShow: 1,
      }
    }
    ]
  });

  $(".horoscope-nav-slider .nav-link").click(function () {
    $(".horoscope-nav-slider .nav-link").removeClass('slick-current slick-active active');
    $(this).addClass('active slick-current slick-active');
  });

  $(".horoscope-nav-slider-yearly .nav-link").click(function () {
    $(".horoscope-nav-slider-yearly .nav-link").removeClass('slick-current slick-active active');
    $(this).addClass('active slick-current slick-active');
  });


  $(".type-radio-check .type-box").click(function () {
    $(".type-radio-check .type-box").removeClass('selected');
    $(this).addClass('selected');
  });

  $('.slick-book-prev').click(function (e) {
    //e.preventDefault(); 
    $('.slider-books').slick('slickPrev');
  });

  $('.slick-book-next').click(function (e) {
    //e.preventDefault(); 
    $('.slider-books').slick('slickNext');
  });


  // $('.number-count .min').click(function (e) {
  //   e.preventDefault();
  //   var numberNow = $('.number-count .number').text();
  //   if (parseInt(numberNow) > 1) {
  //     $('.number-count .number').text(parseInt(numberNow) - 1);
  //   }
  // });

  // $('.number-count .plus').click(function (e) {
  //   e.preventDefault();
  //   var numberNow = $('.number-count .number').text();
  //   $('.number-count .number').text(parseInt(numberNow) + 1);
  // });


  $('#cc-content-toggle').click(function (e) {
    e.preventDefault();
    $(this).toggleClass('collapsed');
    if (
      navigator.userAgent.indexOf('Safari') != -1 &&
      navigator.userAgent.indexOf('Chrome') == -1 &&
      navigator.userAgent.indexOf('CriOS/') == -1
    ) {
      $('#collapseCredit').slideToggle(0);
    } else {
      $('#collapseCredit').slideToggle();
    }
  });

  $('.toggle-readmore-checkout-text').click(function (e) {
    e.preventDefault();
    $(this).toggleClass('active');
    if (
      navigator.userAgent.indexOf('Safari') != -1 &&
      navigator.userAgent.indexOf('Chrome') == -1 &&
      navigator.userAgent.indexOf('CriOS/') == -1
    ) {
      $('.readmore-checkout-text').slideToggle(0);
    } else {
      $('.readmore-checkout-text').slideToggle();
    }
  });

  $('.submenu-link').click(function (e) {
    e.preventDefault();
    var link = $(this).attr('data-link');
    window.location.href = link;
  });

  $('.books-checkout-page .checkout-content .left-area .payment .button-area .btn.button-paypal').click(function (e) {
    e.preventDefault();
    $('#collapseCredit').slideUp();
    $('.bottom-payment-text').fadeIn();
    $('.books-checkout-page .checkout-content .left-area .payment .button-area .btn').removeClass('selected');
    $(this).addClass('selected');
    $('.books-checkout-page .checkout-content .left-area .payment>button').removeClass('inactive');
    $('.books-checkout-page .checkout-content .left-area .payment>button').text('Continue to Paypal & checkout');
  });
  $('.books-checkout-page .checkout-content .left-area .payment .button-area .btn.button-google').click(function (e) {
    e.preventDefault();
    $('#collapseCredit').slideUp();
    $('.bottom-payment-text').fadeIn();
    $('.books-checkout-page .checkout-content .left-area .payment .button-area .btn').removeClass('selected');
    $(this).addClass('selected');
    $('.books-checkout-page .checkout-content .left-area .payment>button').removeClass('inactive');
    $('.books-checkout-page .checkout-content .left-area .payment>button').text('Continue to Google & checkout');
  });
  $('.books-checkout-page .checkout-content .left-area .payment .button-area .btn.button-cc').click(function (e) {
    e.preventDefault();
    $('.bottom-payment-text').fadeOut();
    $('.books-checkout-page .checkout-content .left-area .payment .button-area .btn').removeClass('selected');
    $(this).addClass('selected');
    $('.books-checkout-page .checkout-content .left-area .payment>button').removeClass('inactive');
    $('.books-checkout-page .checkout-content .left-area .payment>button').text('Checkout and pay $28.19');
  });

  $('.checkout-page .checkout-content .left-area .payment .button-area .btn.button-paypal').click(function (e) {
    e.preventDefault();
    $('#collapseCredit').slideUp();
    $('.bottom-payment-text').fadeIn();
    $('.checkout-page .checkout-content .left-area .payment .button-area .btn').removeClass('selected');
    $(this).addClass('selected');
    $('.checkout-page .checkout-content .left-area .payment>button').removeClass('inactive');
    $('.checkout-page .checkout-content .left-area .payment>button').text('Continue to Paypal & checkout');
  });
  $('.checkout-page .checkout-content .left-area .payment .button-area .btn.button-google').click(function (e) {
    e.preventDefault();
    $('#collapseCredit').slideUp();
    $('.bottom-payment-text').fadeIn();
    $('.checkout-page .checkout-content .left-area .payment .button-area .btn').removeClass('selected');
    $(this).addClass('selected');
    $('.checkout-page .checkout-content .left-area .payment>button').removeClass('inactive');
    $('.checkout-page .checkout-content .left-area .payment>button').text('Continue to Google & checkout');
  });
  $('.checkout-page .checkout-content .left-area .payment .button-area .btn.button-cc').click(function (e) {
    e.preventDefault();
    $('.bottom-payment-text').fadeOut();
    $('.checkout-page .checkout-content .left-area .payment .button-area .btn').removeClass('selected');
    $(this).addClass('selected');
    $('.checkout-page .checkout-content .left-area .payment>button').removeClass('inactive');
    $('.checkout-page .checkout-content .left-area .payment>button').text('Checkout and pay $28.19');
  });

  $('.section-create-account-paid .content-area .form-area form .button-area .btn.button-paypal').click(function (e) {
    e.preventDefault();
    $('#collapseCredit').slideUp();
    $('.section-create-account-paid .content-area .form-area form .button-area .btn').removeClass('selected');
    $(this).addClass('selected');
    $('.section-create-account-paid .content-area .form-area form .input-row input[type=submit]').removeClass('inactive');
  });
  $('.section-create-account-paid .content-area .form-area form .button-area .btn.button-google').click(function (e) {
    e.preventDefault();
    $('#collapseCredit').slideUp();
    $('.section-create-account-paid .content-area .form-area form .button-area .btn').removeClass('selected');
    $(this).addClass('selected');
    $('.section-create-account-paid .content-area .form-area form .input-row input[type=submit]').removeClass('inactive');
  });
  $('.section-create-account-paid .content-area .form-area form .button-area .btn.button-cc').click(function (e) {
    e.preventDefault();
    $('.section-create-account-paid .content-area .form-area form .button-area .btn').removeClass('selected');
    $(this).addClass('selected');
    $('.section-create-account-paid .content-area .form-area form .input-row input[type=submit]').removeClass('inactive');
  });

  var newWindowWidth = $(window).width();
  if (newWindowWidth < 992) {
    $('.toggle_mobile').click(function (e) {
      //e.preventDefault(); 
      $(this).parent().siblings().children('.nav-link').removeClass('active');
      $(this).parent().siblings().children('.sub-menu').removeClass('active');
      $(this).parent().siblings().children('.sub-menu').css('max-height', 0);
      $(this).parent().children('.nav-link').toggleClass('active');
      $(this).parent().children('.sub-menu').toggleClass('active');
      if ($(this).parent().children('.sub-menu').not('.submenu-mobile').hasClass('active')) {
        var submenuHeight = $(this).parent().children('.sub-menu').children('.sub-menu-box').height();
        $(this).parent().children('.sub-menu').css('max-height', submenuHeight);
      } else if ($(this).parent().children('.sub-menu').hasClass('submenu-mobile active')) {
        var submenuHeight = $(this).parent().children('.sub-menu').children('.sub-menu-mobile').height();
        $(this).parent().children('.sub-menu').css('max-height', submenuHeight);
        console.log(submenuHeight);
      } else {
        $(this).parent().children('.sub-menu').css('max-height', 0);
      };

    });
  }



  jQuery(function () {
    let url = window.location.pathname.split('/').pop();

    // Add active nav class based on url
    jQuery(".header-container .navbar-nav .nav-item .nav-link").each(function () {
      if (jQuery(this).attr("href") == url || jQuery(this).attr("href") == '' || (jQuery(this).siblings('.dropdown-menu').children('li').children('.dropdown-item').attr("href")) == url) {
        jQuery(this).closest('.header-container .navbar-nav .nav-item .nav-link').addClass("active");
      }
    });

    jQuery(".footer-container .footer-right-link .footer-column-link ul li a").each(function () {
      if (jQuery(this).attr("href") == url || jQuery(this).attr("href") == '') {
        jQuery(this).closest('.footer-container .footer-right-link .footer-column-link ul li a').addClass("active");
      }
    })
  });

  $(function () {
    $("#datepicker").datepicker({
      changeMonth: true,
      changeYear: true,
      yearRange: "1900:2032"
    });
    $("#format").on("change", function () {
      $("#datepicker").datepicker("option", "dateFormat", $(this).val());
    });
  });

  $(document).click(function (event) {
    var $target = $(event.target);
    if (!$target.closest('.navbar-collapse.show').length &&
      $('.navbar-collapse').hasClass('show')) {
      $('.navbar-collapse').removeClass('show');
      $('.navbar-toggler').addClass('collapsed');
    }
  });

  if (window.outerWidth < 992) {
    jQuery(".main-header .navbar-toggler").click(function () {
      if ($('body').hasClass('scroll-lock')) {
        jQuery('body').removeClass('scroll-lock');
        jQuery('body').removeClass('lock-scroll');
      } else {
        jQuery('body').addClass('scroll-lock');
        jQuery('body').removeClass('lock-scroll');
      }
    });
  }

  if (window.outerWidth < 768) {
    jQuery(".membership-header .navbar-toggler").click(function () {
      if ($('body').hasClass('scroll-lock')) {
        jQuery('body').removeClass('scroll-lock');
        jQuery('body').removeClass('lock-scroll');
      } else {
        jQuery('body').addClass('scroll-lock');
        jQuery('body').removeClass('lock-scroll');
      }
    });
    jQuery(".membership-header .navbar .right-menus .account-menus .navbar-nav .dropdown .nav-link").click(function () {
      if ($('body').hasClass('lock-scroll')) {
        jQuery('body').removeClass('scroll-lock');
        jQuery('body').removeClass('lock-scroll');
      } else {
        jQuery('body').addClass('lock-scroll');
        jQuery('body').removeClass('scroll-lock');
      }
    });
  }

  var x, i, j, l, ll, selElmnt, a, b, c;
  /* Look for any elements with the class "custom-select": */
  x = document.getElementsByClassName("custom-select");
  l = x.length;
  for (i = 0; i < l; i++) {
    selElmnt = x[i].getElementsByTagName("select")[0];
    ll = selElmnt.length;
    /* For each element, create a new DIV that will act as the selected item: */
    a = document.createElement("DIV");
    a.setAttribute("class", "select-selected");
    a.innerHTML = selElmnt.options[selElmnt.selectedIndex].innerHTML;
    x[i].appendChild(a);
    /* For each element, create a new DIV that will contain the option list: */
    b = document.createElement("DIV");
    b.setAttribute("class", "select-items select-hide");
    for (j = 1; j < ll; j++) {
      /* For each option in the original select element,
      create a new DIV that will act as an option item: */
      c = document.createElement("DIV");
      c.innerHTML = selElmnt.options[j].innerHTML;
      c.addEventListener("click", function (e) {
        /* When an item is clicked, update the original select box,
        and the selected item: */
        var y, i, k, s, h, sl, yl;
        s = this.parentNode.parentNode.getElementsByTagName("select")[0];
        sl = s.length;
        h = this.parentNode.previousSibling;
        for (i = 0; i < sl; i++) {
          if (s.options[i].innerHTML == this.innerHTML) {
            s.selectedIndex = i;
            h.innerHTML = this.innerHTML;
            y = this.parentNode.getElementsByClassName("same-as-selected");
            yl = y.length;
            for (k = 0; k < yl; k++) {
              y[k].removeAttribute("class");
            }
            this.setAttribute("class", "same-as-selected");
            break;
          }
        }
        h.click();
      });
      b.appendChild(c);
    }
    x[i].appendChild(b);
    a.addEventListener("click", function (e) {
      /* When the select box is clicked, close any other select boxes,
      and open/close the current select box: */
      e.stopPropagation();
      closeAllSelect(this);
      this.nextSibling.classList.toggle("select-hide");
      this.classList.toggle("select-arrow-active");
    });
  }

  function closeAllSelect(elmnt) {
    /* A function that will close all select boxes in the document,
    except the current select box: */
    var x, y, i, xl, yl, arrNo = [];
    x = document.getElementsByClassName("select-items");
    y = document.getElementsByClassName("select-selected");
    xl = x.length;
    yl = y.length;
    for (i = 0; i < yl; i++) {
      if (elmnt == y[i]) {
        arrNo.push(i)
      } else {
        y[i].classList.remove("select-arrow-active");
      }
    }
    for (i = 0; i < xl; i++) {
      if (arrNo.indexOf(i)) {
        x[i].classList.add("select-hide");
      }
    }
  }

  /* If the user clicks anywhere outside the select box,
  then close all select boxes: */
  document.addEventListener("click", closeAllSelect);

  $(".nav-item.has-submenu").each(function () {
    var getSubMenuWidth = $(this).outerWidth();
    $(this).children('.sub-menu').css('left', getSubMenuWidth / 2);
  });

});

var didScroll;
var lastScrollTop = 0;
var delta = 5;
var navbarHeight = 125;

jQuery(document).on('scroll', function () {
  didScroll = true;
  if ($(".run_anim")[0]) {
    // Do something if class exists
    if (jQuery(this).scrollTop() >= jQuery('.run_anim').offset().top) {
      jQuery('.run_anim').parent().addClass('active');
    };
    if (jQuery(this).scrollTop() >= 11) {
      jQuery('.home-banner .content-area .text-area').addClass('active');
    };
    if (jQuery(this).scrollTop() <= 10) {
      jQuery('.home-banner .content-area .text-area').removeClass('active');
    };
  }
});

setInterval(function () {
  if (didScroll) {
    hasScrolled();
    didScroll = false;
  }
}, 250);

function hasScrolled() {
  var st = jQuery(this).scrollTop();

  // Make sure they scroll more than delta
  if (Math.abs(lastScrollTop - st) <= delta)
    return;

  // If they scrolled down and are past the navbar, add class .nav-up.
  // This is necessary so you never see what is "behind" the navbar.
  if (st > lastScrollTop && st > navbarHeight) {
    // Scroll Down
    jQuery('.main-header').removeClass('nav-down').addClass('nav-up');
  } else {
    // Scroll Up
    if (st + jQuery(window).height() < jQuery(document).height()) {
      jQuery('.main-header').removeClass('nav-up').addClass('nav-down');
    }
  };

  if (jQuery(window).scrollTop() < 50) {
    jQuery('.main-header').addClass('trans');
  } else {
    jQuery('.main-header').removeClass('trans');
  }

  lastScrollTop = st;
}

var dwidth = jQuery(window).width();
jQuery(window).bind('resize', function (e) {

  var wwidth = jQuery(window).width();

  if (dwidth !== wwidth) {
    dwidth = jQuery(window).width();

    if (window.RT) clearTimeout(window.RT);
    window.RT = setTimeout(function () {
      // this.location.reload(false); /* false to get page from cache */
    }, 1000);
  }
});