;(function($) {
"use strict";
$(document).ready(function() {
/**-----------------------------
* Popover
* ---------------------------*/
$(function() {
$('[data-toggle="popover"]').popover();
});
$("[data-toggle=popover]")
.popover({
html: true
});
/**-----------------------------
* tooltip
* ---------------------------*/
$(function () {
$('[data-toggle="tooltip"]').tooltip()
})
/**-----------------------------
* link to tab
* ---------------------------*/
function scrollToIngredient (ingredient) {
const ingredientWidget = document.querySelector(`#${ingredient}`);
if (ingredientWidget !== null) {
ingredientWidget.scrollIntoView();
}
}
function handleLinks(hash) {
// get selection from hash if provided, otherwise get from url
const [category, ingredient] = (hash || location.hash).split('-');
const categoryTab = document.querySelector(`a[href='${category}']`);
if (categoryTab !== null) {
if (ingredient !== null) {
$(categoryTab).one('shown.bs.tab', function() {
scrollToIngredient(ingredient);
});
}
const tabTrigger = new bootstrap.Tab(categoryTab);
tabTrigger.show();
}
}
handleLinks();
$('.cross-link').click(function (event) {
event.preventDefault();
handleLinks(event.target.hash);
});
/**-----------------------------
* back-to-top
* ---------------------------*/
let mybutton = document.querySelector(".back-to-top");
window.onscroll = function() {
scrollFunction();
};
function scrollFunction() {
if (document.body.scrollTop > 300 || document.documentElement.scrollTop > 300) {
mybutton.classList.add("show");
} else {
mybutton.classList.remove("show");
}
}
/**-----------------------------
* YouTube embedded video
* ---------------------------*/
$('.embed-placeholder').each(function() {
$(this).on('click', function(e) {
var $thisLink = $(this);
// if prettyPhoto popup with YouTube - return
if ($thisLink.attr('data-gal')) {
return;
}
e.preventDefault();
if ($thisLink.attr('href') === '' || $thisLink.attr('href') === '#') {
$thisLink.replaceWith($thisLink.data('iframe').replace(/&/g, '&').replace(/$lt;/g, '<').replace(/>/g, '>').replace(/$quot;/g, '"')).trigger('click');
} else {
$thisLink.replaceWith('');
}
});
});
/*----------------------------------------------------*/
/* Chosen Plugin
/*----------------------------------------------------*/
var config = {
'.chosen-select' : {disable_search_threshold: 10, width:"100%"},
'.chosen-select-deselect' : {allow_single_deselect:true, width:"100%"},
'.chosen-select-no-single' : {disable_search_threshold:100, width:"100%"},
'.chosen-select-no-single.no-search' : {disable_search_threshold:10, width:"100%"},
'.chosen-select-no-results': {no_results_text:'Oops, nothing found!'},
'.chosen-select-width' : {width:"95%"}
};
for (var selector in config) {
if (config.hasOwnProperty(selector)) {
$(selector).chosen(config[selector]);
}
}
/**-----------------------------
* Navbar fix
* ---------------------------*/
$(document).on('click', '.navbar-area .navbar-nav li.menu-item-has-children>a', function(e) {
e.preventDefault();
})
/*-------------------------------------
menu
-------------------------------------*/
$('.navbar-area .menu').on('click', function() {
$(this).toggleClass('open');
$('.navbar-area .navbar-collapse').toggleClass('sopen');
});
// mobile menu
if ($(window).width() < 992) {
$(".in-mobile").clone().appendTo(".sidebar-inner");
$(".in-mobile ul li.menu-item-has-children").append('');
$('').insertAfter("");
$(".menu-item-has-children a").on('click', function(e) {
// e.preventDefault();
$(this).siblings('.sub-menu').animate({
height: "toggle"
}, 300);
});
}
var menutoggle = $('.menu-toggle');
var mainmenu = $('.navbar-nav');
menutoggle.on('click', function() {
if (menutoggle.hasClass('is-active')) {
mainmenu.removeClass('menu-open');
} else {
mainmenu.addClass('menu-open');
}
});
/*--------------------------------------------
Search Popup
---------------------------------------------*/
var bodyOvrelay = $('#body-overlay');
var searchPopup = $('#search-popup');
$(document).on('click', '#body-overlay', function(e) {
e.preventDefault();
bodyOvrelay.removeClass('active');
searchPopup.removeClass('active');
});
$(document).on('click', '.search', function(e) {
e.preventDefault();
searchPopup.addClass('active');
bodyOvrelay.addClass('active');
});
/* -----------------------------------------------------
Variables
----------------------------------------------------- */
var leftArrow = '';
var rightArrow = '';
/*------------------------------------------------
Instagram slider
------------------------------------------------*/
$('.slider-insta').slick({
infinite: true,
autoplay: true,
arrows: false,
dots: false,
speed: 3000,
slidesToShow: 8,
slidesToScroll: 2,
responsive: [{
breakpoint: 991,
settings: {
slidesToShow: 4,
}
}, {
breakpoint: 500,
settings: {
slidesToShow: 2,
}
}]
});
/*------------------------------------------------
editors-slider
------------------------------------------------*/
$('.editors-slider').owlCarousel({
loop: true,
margin: 30,
nav: false,
dots: false,
smartSpeed: 1500,
items: 1,
navText: [leftArrow, rightArrow],
});
/*------------------------------------------------
blog-details-slider
------------------------------------------------*/
$('.blog-details-slider').owlCarousel({
loop: true,
margin: 15,
nav: false,
dots: false,
smartSpeed: 1500,
items: 1,
});
/*------------------------------------------------
banner-slider
------------------------------------------------*/
$('.banner-slider').owlCarousel({
loop: true,
margin: 15,
nav: false,
dots: false,
smartSpeed: 1500,
items: 1,
});
/*------------------------------------------------
visitor-slider
------------------------------------------------*/
$('.visitor-slider').owlCarousel({
loop: true,
margin: 30,
nav: false,
dots: false,
smartSpeed: 1500,
items: 4,
navText: [leftArrow, rightArrow],
responsive: {
0: {
items: 1,
nav: true
},
500: {
items: 2,
nav: false
},
1024: {
items: 3,
nav: true,
},
1025: {
items: 4,
nav: true,
}
}
});
/*-------------------------------------------------
wow js init
--------------------------------------------------*/
new WOW().init();
$(window).on("scroll", function() {
/*---------------------------------------
sticky menu activation && Sticky Icon Bar
-----------------------------------------*/
var mainMenuTop = $(".navbar-area");
if ($(window).scrollTop() >= 1) {
mainMenuTop.addClass('navbar-area-fixed');
} else {
mainMenuTop.removeClass('navbar-area-fixed');
}
});
})
})(jQuery)