
jQuery(document).ready(function($){



	$(document).on("scroll", function () {
	
		var pageTop = $(document).scrollTop()
		var pageBottom = pageTop + $(window).height()
		
		var tags = $(".fadeIn")
		
		for (var i = 0; i < tags.length; i++) {
			var tag = tags[i]
		
			if ($(tag).position().top < pageBottom - 200) {
				$(tag).addClass("visible")
			} else {
				$(tag).removeClass("visible")
			}
		}
		
	});
	
	
	
	//////////////////////////////
	// Open / close mobile menu //
	//////////////////////////////
	
	// Hide menu on click outside menu div
/*
	$(document).mouseup(function (e) { 
	    if ($(".menuWrap").hasClass("active")) { 
	        $(".menuWrap").removeClass("active");
			$(".siteBlur").removeClass("active");
	    } 
	});
*/
	
	// Open mobiele menu
	$(".menuTriggerOpen").click(function(){
		$(".menuWrap").addClass("active");
		$(".siteBlur").addClass("active");
	});
	
	// Sluit mobiele menu
	$(".menuTriggerClose").click(function(){
		$(".menuWrap").removeClass("active");
		$(".siteBlur").removeClass("active");
	});
	
	// Plusje wijzigen in minnetje als submenu standaard is geopend op huidige URL
	$(".current_page_ancestor > .level-1").addClass("active");
	$(".current_page_ancestor > .level-2").addClass("active");
	$(".current_page_ancestor").addClass("active");
	
	// Mobiel submenu
	$(".level-2").parent().click(function(e){
		if (!$(".level-2", this).hasClass("active")) {
			$(".level-2",this).addClass("active");
			$(".level-2",this).parent().addClass("active");
		} else {
			$(".level-2",this).removeClass("active");
			$(".level-2",this).parent().removeClass("active");
		}
		e.stopPropagation();
	});
	
	$(".level-1").parent().click(function(e){
		if (!$(".level-1", this).hasClass("active")) {
			$(".level-1",this).addClass("active");
				$(".level-1",this).parent().addClass("active");
		} else {
			$(".level-1",this).removeClass("active");
			$(".level-1",this).parent().removeClass("active");
		}
		e.stopPropagation();
	});
	
	////////////////////////////////
	// Open / close recept filter //
	////////////////////////////////
	$(".receptFilterToggle").click(function(){
		$(".receptFilters").toggleClass("active");
		$(this).toggleClass("active");
	});
	
	///////////////////////////////////
	// Open / close category filters //
	///////////////////////////////////
	$(".catFilterToggle").click(function(){
		$(".catFilters").toggleClass("active");
		$(this).toggleClass("active");
	});
	
	////////////////////////////////
	// Open / close contact panel //
	////////////////////////////////
	
	// Hide menu on click outside menu div
	$(document).mouseup(function (e) { 
	    if ($(".allergenenPanelWrap").hasClass("active")) { 
	        $(".allergenenPanelWrap").removeClass("active");
			$(".siteBlur").removeClass("active");
	    } 
	});
	
	// Toggle contact panel
	$(".allergenenPanelTrigger").click(function(){
		$(".allergenenPanelWrap").toggleClass("active");
		$(".siteBlur").toggleClass("active");
	});
	$(".allergenenPanelCloseButton").click(function(){
		$(".allergenenPanelWrap").removeClass("active");
		$(".siteBlur").removeClass("active");
	});
	
	////////////////////////////
	// Animate menu on scroll //
	////////////////////////////
	
	var $window = $(window),
	$menuWrap = $('.menuWrap'),
	className = 'onScroll';
	
	$(window).scroll(function() {
		if ($window.scrollTop() > 50) {
			$menuWrap.addClass(className);
		} else {
			$menuWrap.removeClass(className);
		}
	});
	
	////////////
	// Search //
	////////////
	$(".searchTrigger").click(function (e) {
	    $(".searchWrap").toggleClass("active");
	    $("#s").focus();
	});
	
	$('body').keydown(function(e) {
	    if (e.keyCode == 27) {
	         $(".searchWrap").removeClass("active");
	    }
	});

	///////////////////////
	// Close WC messages //
	///////////////////////
	$('.closeThisMessage').on("click", function () {
	    $(this).parent().fadeOut();
	});
		
	//////////////////////////////////////
	// Counter aantal personen (recept) //
	//////////////////////////////////////
	$('#aantalPersonenPlus1').click(function(){
		aantalPersonen = $("#aantalPersonen").html();
		newAantalPersonen = parseFloat(aantalPersonen) + 1;
		$("#aantalPersonen").html(newAantalPersonen);
		
		labelReceptMv = $("#labelReceptMv").html();
		if ((newAantalPersonen > 1) && (typeof labelReceptMv !== 'undefined')) {
			$("#labelReceptWeergegeven").html(labelReceptMv);
		}
		
		$('#receptList').children().each(function () {
			if ($(this).closest(".ingredientEnkelvoud")) {
				ingredientEnkelvoud = $(this).find('[class*="ingredientEnkelvoud"]').first().html();
			}
			if ($(this).closest(".ingredientMeervoud")) {
				ingredientMeervoud = $(this).find('[class*="ingredientMeervoud"]').first().html();
			}
			if ($(this).closest(".ingredientAmount")) {
				ingredientAmount = $(this).find('[class*="ingredientAmount"]').first().html();
				newIngredientAmount = ((parseFloat(ingredientAmount) / parseFloat(aantalPersonen)) * parseFloat(newAantalPersonen));
				$(this).find(".ingredientAmount").html(Math.round(newIngredientAmount * 100) / 100);
			}
			if ($(this).closest(".ingredientEenheid")) {
				ingredientEenheid = $(this).find('[class*="ingredientEenheid"]').first().html();
				if ((ingredientEenheid == "blik") && (newIngredientAmount > 1)) {
					
					newIngredientEenheid = "blikken";
					$(this).find(".ingredientEenheid").html(newIngredientEenheid);
					
				} else if ((ingredientEenheid == "blikje") && (newIngredientAmount > 1)) {
					
					newIngredientEenheid = "blikjes";
					$(this).find(".ingredientEenheid").html(newIngredientEenheid);
					
				} else if ((ingredientEenheid == "bos") && (newIngredientAmount > 1)) {
					
					newIngredientEenheid = "bossen";
					$(this).find(".ingredientEenheid").html(newIngredientEenheid);
					
				} else if ((ingredientEenheid == "druppel") && (newIngredientAmount > 1)) {
					
					newIngredientEenheid = "druppels";
					$(this).find(".ingredientEenheid").html(newIngredientEenheid);
					
				} else if ((ingredientEenheid == "hand") && (newIngredientAmount > 1)) {
					
					newIngredientEenheid = "handen";
					$(this).find(".ingredientEenheid").html(newIngredientEenheid);
					
				} else if ((ingredientEenheid == "handje") && (newIngredientAmount > 1)) {
					
					newIngredientEenheid = "handjes";
					$(this).find(".ingredientEenheid").html(newIngredientEenheid);
					
				} else if ((ingredientEenheid == "pak") && (newIngredientAmount > 1)) {
					
					newIngredientEenheid = "pakken";
					$(this).find(".ingredientEenheid").html(newIngredientEenheid);
				
				} else if ((ingredientEenheid == "pakje") && (newIngredientAmount > 1)) {
					
					newIngredientEenheid = "pakjes";
					$(this).find(".ingredientEenheid").html(newIngredientEenheid);
					
				} else if ((ingredientEenheid == "scoop") && (newIngredientAmount > 1)) {
					
					newIngredientEenheid = "scoops";
					$(this).find(".ingredientEenheid").html(newIngredientEenheid);
					
				} else if ((ingredientEenheid == "stengel") && (newIngredientAmount > 1)) {
					
					newIngredientEenheid = "stengels";
					$(this).find(".ingredientEenheid").html(newIngredientEenheid);
					
				} else if ((ingredientEenheid == "takje") && (newIngredientAmount > 1)) {
					
					newIngredientEenheid = "takjes";
					$(this).find(".ingredientEenheid").html(newIngredientEenheid);
					
				} else if ((ingredientEenheid == "teen") && (newIngredientAmount > 1)) {
					
					newIngredientEenheid = "tenen";
					$(this).find(".ingredientEenheid").html(newIngredientEenheid);
				
				} else if ((ingredientEenheid == "teentje") && (newIngredientAmount > 1)) {
					
					newIngredientEenheid = "teentjes";
					$(this).find(".ingredientEenheid").html(newIngredientEenheid);
				
				}
			}
			if ($(this).closest(".ingredientWeergegevenNaam")) {
				if ((newIngredientAmount > 1) && (ingredientMeervoud)) {
					$(this).find(".ingredientWeergegevenNaam").html(ingredientMeervoud);
				}
			}
			
		});
		
	});
	
	$('#aantalPersonenMin1').click(function(){
		aantalPersonen = $("#aantalPersonen").html();
		
		if (aantalPersonen >= 2) {
			newAantalPersonen = parseFloat(aantalPersonen) - 1;
		}
		
		$("#aantalPersonen").html(newAantalPersonen);
		
		labelReceptEv = $("#labelReceptEv").html();
		if ((newAantalPersonen < 2) && (typeof labelReceptEv !== 'undefined')) {
			$("#labelReceptWeergegeven").html(labelReceptEv);
		}
		
		$('#receptList').children().each(function () {
			if ($(this).closest(".ingredientEnkelvoud")) {
				ingredientEnkelvoud = $(this).find('[class*="ingredientEnkelvoud"]').first().html();
			}
			if ($(this).closest(".ingredientMeervoud")) {
				ingredientMeervoud = $(this).find('[class*="ingredientMeervoud"]').first().html();
			}
			if ($(this).closest(".ingredientAmount")) {
				ingredientAmount = $(this).find('[class*="ingredientAmount"]').first().html();
				newIngredientAmount = ((parseFloat(ingredientAmount) / parseFloat(aantalPersonen)) * parseFloat(newAantalPersonen));
				$(this).find(".ingredientAmount").html(Math.round(newIngredientAmount * 100) / 100);
			}
			
			if ($(this).closest(".ingredientEenheid")) {
				ingredientEenheid = $(this).find('[class*="ingredientEenheid"]').first().html();
				if ((ingredientEenheid == "blikken") && (newIngredientAmount <= 1)) {
					
					newIngredientEenheid = "blik";
					$(this).find(".ingredientEenheid").html(newIngredientEenheid);
					
				} else if ((ingredientEenheid == "blikjes") && (newIngredientAmount <= 1)) {
					
					newIngredientEenheid = "blikje";
					$(this).find(".ingredientEenheid").html(newIngredientEenheid);
					
				} else if ((ingredientEenheid == "bossen") && (newIngredientAmount <= 1)) {
					
					newIngredientEenheid = "bos";
					$(this).find(".ingredientEenheid").html(newIngredientEenheid);
					
				} else if ((ingredientEenheid == "druppels") && (newIngredientAmount <= 1)) {
					
					newIngredientEenheid = "druppel";
					$(this).find(".ingredientEenheid").html(newIngredientEenheid);
					
				} else if ((ingredientEenheid == "handen") && (newIngredientAmount <= 1)) {
					
					newIngredientEenheid = "hand";
					$(this).find(".ingredientEenheid").html(newIngredientEenheid);
					
				} else if ((ingredientEenheid == "handjes") && (newIngredientAmount <= 1)) {
					
					newIngredientEenheid = "handje";
					$(this).find(".ingredientEenheid").html(newIngredientEenheid);
					
				} else if ((ingredientEenheid == "pakken") && (newIngredientAmount <= 1)) {
					
					newIngredientEenheid = "pak";
					$(this).find(".ingredientEenheid").html(newIngredientEenheid);
				
				} else if ((ingredientEenheid == "pakjes") && (newIngredientAmount <= 1)) {
					
					newIngredientEenheid = "pakje";
					$(this).find(".ingredientEenheid").html(newIngredientEenheid);
					
				} else if ((ingredientEenheid == "scoops") && (newIngredientAmount <= 1)) {
					
					newIngredientEenheid = "scoop";
					$(this).find(".ingredientEenheid").html(newIngredientEenheid);
					
				} else if ((ingredientEenheid == "stengels") && (newIngredientAmount <= 1)) {
					
					newIngredientEenheid = "stengel";
					$(this).find(".ingredientEenheid").html(newIngredientEenheid);
					
				} else if ((ingredientEenheid == "takjes") && (newIngredientAmount <= 1)) {
					
					newIngredientEenheid = "takje";
					$(this).find(".ingredientEenheid").html(newIngredientEenheid);
					
				} else if ((ingredientEenheid == "tenen") && (newIngredientAmount <= 1)) {
					
					newIngredientEenheid = "teen";
					$(this).find(".ingredientEenheid").html(newIngredientEenheid);
				
				} else if ((ingredientEenheid == "teentjes") && (newIngredientAmount <= 1)) {
					
					newIngredientEenheid = "teentje";
					$(this).find(".ingredientEenheid").html(newIngredientEenheid);
				
				}
			}
			if ($(this).closest(".ingredientWeergegevenNaam")) {
				if ((newIngredientAmount <= 1) && (ingredientEnkelvoud)) {
					$(this).find(".ingredientWeergegevenNaam").html(ingredientEnkelvoud);
				}
			}
			
		});
		
	});
	
	
	
	///////////////////////////
	// RATING STAR BEHAVIOUR //
	///////////////////////////
	let ratingStarEvent = (event) => {
		let stars = 0;
		for (let i=1; i<=5; i++) {
			if (event.target.classList.contains('star-'+i)) {
				stars = i
			}
		}
		for (let i=1; i<=5; i++) {
			if (event.type=='mouseenter' && i<stars) {
				$('.stars span a.star-'+i).addClass('activeHover')
			}
			else if (event.type=='mouseleave') {
				$('.stars span a.star-'+i).removeClass('activeHover')
			}
			else if (event.type=='click') {
				if (i<stars) $('.stars span a.star-'+i).addClass('activeClick')
				else $('.stars span a.star-'+i).removeClass('activeClick')
			}
		}
	}
	
	let addRatingStarBehaviour = () => {
		$('.stars span a').hover(ratingStarEvent).click(ratingStarEvent)
	}
	
	$('a[href="#tab-reviews"]').click(addRatingStarBehaviour)

	
	
	
	/////////////////////////
	// Trigger page scroll //
	/////////////////////////
	document.getElementById("htmldoc").style.padding = "0 0 2px 0"; 
	$(window).scrollTop($(window).scrollTop()+2);
	$(window).scrollTop($(window).scrollTop()-2);
	//window.scrollTo(window.scrollX, window.scrollY + 4);
	//window.scrollTo(window.scrollX, window.scrollY - 4);
	document.getElementById("htmldoc").style.padding = "0 0 0 0";
		
		
	
});


///////////////////////////
// RATING STAR BEHAVIOUR //
///////////////////////////
// console.log('test rsb')
// $('.stars span a').hover(ratingStarBehaviour).click(ratingStarBehaviour)
// let ratingStarBehaviour = () => {
// 	console.log('rating star behaviour')
// }
// jQuery(document).ready(function($){
// 	$('.stars span a').hover(ratingStarBehaviour).click(ratingStarBehaviour)
// })



jQuery( document.body ).on( 'updated_cart_totals updated_wc_div removed_from_cart checkout_error updated_checkout', function(){
    //re-do your jquery
    jQuery('.closeThisMessage').on("click", function () {
	    jQuery(this).parent().fadeOut();
	});
});

//var rellax = new Rellax('.rellax');