$(document).ready(function(){ $(window).on('popstate', function(e){ location.reload(); }); function drawMenu(id) { $(".facet-menu").empty(); $(".facet-menu2").empty().hide(); $(".facet-menu").show(); $(".facet-button").each(function (i) { var id3 = $(this).attr("id"); var id2 = $(this).children(":first").text(); if (id2 != "MORE FILTERS") { if (id2.indexOf("(") >= 0) { $("
").appendTo(".facet-menu"); } else { $(" ").appendTo(".facet-menu"); } if($(".facet-button").length == i+1) { $(".facet-title-bar2").removeClass("hidden"); } } }); } function detach(id) { var facet1 = $(".facet-menu2").children(":first").attr("id"); var facet = "#" + facet1; var rel = $(facet).attr("rel"); $(facet).addClass(rel); $(facet).attr("rel",""); var control = facet1.split("-"); control2 = control[0] + "-" + control[2]; control3 = "facet-container-" + control[2]; $(facet).detach().appendTo("." + control3).fadeIn(500); } $(".facet-toggle").on("click",function(){ $("#livechat-compact-container").fadeOut("slow"); $(".facet-window").fadeIn('slow', function() { $('html, body').css({ overflow: 'hidden', height: '100%' }); $(".facet-window").css( 'overflow-y', 'auto' ); $(".facet-window").css( 'overflow-x', 'hidden' ); drawMenu($(this)); }); }); $(document.body).on('click','.facet-menu-item' ,function(){ $(".facet-menu").empty().hide(); $(".facet-menu2").empty().show(); $(".facet-window-back").show().fadeIn("slow"); var crumb = $(this).attr("rel"); crumb = crumb.split("-"); var value = crumb[1]; type = "facet-control-" + value; $("#" + type).detach().appendTo(".facet-menu2"); var classes = $("#" + type).attr("class"); $("#" + type).attr("rel",classes); $("#" + type).removeClass(classes); }); $(".facet-window-back").on("click",function(){ if ($(".facet-menu2").is(":visible")) { detach(); $(".facet-window-back, .facet-menu2").fadeOut('fast', function() { drawMenu(".facet-toggle"); }); } }); $(".facet-window-close-wrapper,.apply").on("click",function(){ if ($(".facet-menu2").is(":visible")) { detach(); $(".facet-window-back").hide(); } $("#livechat-compact-container").fadeIn("slow"); $(".facet-window").fadeOut("slow"); $(".facet-title-bar2").addClass("hidden"); $(".facet-menu").empty(); $(".facet-menu2").empty(); $('html, body').css({ overflow: 'auto', height: 'auto' }); }); //ADDED $("input[type=radio], input[type=checkbox]").not("input[type=checkbox][name=facet-more-input],input[type=radio][name=metal_type]").change(function(){ var data = ""; if($("input[type=radio][name=facet-category-input]").is(":checked")) { var cat = $("input[type=radio][name=facet-category-input]:checked").val(); data = "category=" + cat; } $("input[type=radio]:checked, input[type=checkbox]:checked").not("input[type=checkbox][name=facet-more-input],input[type=radio][name=metal_type],input[type=radio][name=facet-category-input]").each(function () { var value = $(this).val(); var name = $(this).attr('name').replace("facet-", "").replace("-input", ""); //alert(name + "=" + value); if (data == "") { data = name + "=" + value; } else { data = data + "&" + name + "=" + value; } }); data = encodeURIComponent(data); var decode = decodeURIComponent(data); if ($(window).width() < 801) { $("#facet-loading").fadeIn("fast"); } $.ajax({ type: "GET", url: "/ajax/facets.php", dataType: 'html', data: data, success: function(data){ var $response=$(data); var results = $response.filter('#products').html(); var pagination = $response.filter('#pagination').html(); var crumbs = $response.filter('#crumbs').html(); var remain = $response.filter('#remain').html(); var category_count = $response.filter('#category_count').html(); //var current_metal = $response.filter('#current_metal').text(); //$("#current_metal").val(current_metal); var number_of_pages = $response.filter('#number_of_pages').html(); var current_category = $("#current_category").val(); var update_category = $response.filter('#category_update').text(); var pushstate = $response.filter('#pushstate').text(); var canon = $response.filter('#canon').text(); var next_canonical= $response.filter('#next_canonical').text(); var disablenextprev = $response.filter('#disablenextprev').text(); var category_title = $response.filter('#category_title').html(); var title = $response.filter('#title').html(); var description = $response.filter('#description').html(); if (currenttitle != title) { document.title = title; } var currenttitle = (document.title); $('meta[name=description]').attr('content', description); //OG meta $("meta[property='og\\:description']").attr("content", description); $("meta[property='og\\:title']").attr("content", title); var ogurl = "https://www.knoxjewelers.biz/" + pushstate; var canonurl = "https://www.knoxjewelers.biz/" + canon; $("meta[property='og\\:url']").attr("content", ogurl); //canonical $('link[rel="canonical"]').attr("href",canonurl); $('link[rel="prev"]').remove(); if ($('link[rel="next"]').length && number_of_pages > 1 && disablenextprev != 1) { $('link[rel="next"]').attr("href", "https://www.knoxjewelers.biz/" + next_canonical); } else if($('link[rel="next"]').length == 0 && number_of_pages > 1 && disablenextprev != 1) { var new_can = "https://www.knoxjewelers.biz/" + next_canonical; var new_next = ''; $('link[rel="canonical"]').after(new_next); } else { $('link[rel="next"]').remove() } var pushstate = decodeURIComponent(pushstate); history.pushState({}, title, pushstate); var currenturl = '/' + pushstate; dataLayer.push({'event':'VirtualPageview','virtualPageURL':currenturl,'virtualPageTitle':currenttitle}); $("input[type=radio], input[type=checkbox]").not("input[type=checkbox][name=facet-more-input],input[type=radio][name=metal_type]").each(function () { $(this).prop('disabled', true); $(this).parent().addClass("facet-disable"); }); var remaining = JSON.parse(remain); for (var i = 0; i < remaining.remaining.length; i++) { var counter = remaining.remaining[i]; var new1 = counter.split("_"); $("[name="+new1[0]+"]").each( function() { if ( $(this).val() == new1[1] ) { $(this).prop('disabled', false); $(this).parent().removeClass("facet-disable"); } }); //alert(new1[1]); //$("input[name='+new1[0]+'][value='+new1[1]+']").prop('disabled', false); } var category_name = $(".category-name").text(); if (category_name != category_title) { $(".category-name").text(category_title) } $('.page_nav_div').fadeOut(200, function() { $(this).empty().show(); //$('.page_nav_div').replaceWith(pagination).fadeIn(800); $('.page_nav_div').html(pagination).fadeIn(800); }); $('#products').fadeOut(200, function() { $(this).empty().show(); $("#products").html(results).fadeIn(800); }); $('#crumbs').fadeOut(200, function() { $(this).empty().show(); $("#crumbs").html(crumbs).fadeIn(800); }); if (category_count == 0) { $("#category-count").text(""); } else { $("#category-count").text("(1)"); } var facets = ["elements", "style", "patterns", "finishes", "shape", "accentshape", "accentsetting", "centersetting"]; facets.forEach(function(facets) { var facet = $("#" + facets + "-count"); var count = $response.filter("#" + facets + "_count").html(); if (count == "0") { facet.text(""); } else { facet.text("(" + count + ")"); } }); //$("#products").empty(); //$("#products").html(results).fadeIn(500); if ($(window).width() < 801) { $("#facet-loading").fadeOut("fast"); } } }); }); var data = "load_metal=1"; $.ajax({ type: "GET", url: "/ajax/finger_metal.php", dataType: 'html', data: data, success: function(data){ var $response=$(data); //query the jq object for the values var metal_type = $response.filter('#metal_type').text(); var metal_type2 = $response.filter('#metal_type2').text(); $('.'+ metal_type2)[0].checked = true; } }); $("input[type=radio][name=metal_type]").change(function(){ var metal = $('input[name=metal_type]:checked').val(); var data = "category_metal=" + metal; $.ajax({ type: "GET", url: "/ajax/finger_metal.php", dataType: 'html', data: data, success: function(data){ var $response=$(data); //query the jq object for the values var current_metal = $response.filter('#current_metal').text(); $("#current_metal").val(current_metal); location.reload(); } }); }); $("input[type=checkbox][name=facet-more-input]").change(function(){ $(".more").hide(); $(".more").each(function () { var id = $(this).attr("id"); var control = "facet-control-" + id; $("#" + control).removeClass("l-offset-2 l-offset-4 l-offset-6 l-offset-8"); }); $("input[type=checkbox][name=facet-more-input]").each(function () { var val = (this.checked ? $(this).val() : ""); var val2 = (!this.checked ? $(this).val() : ""); if (val != "") { $("#" + val).show(); } }); var count = 0; $(".more:visible").each(function () { var id = $(this).attr("id"); if (count > 0) { var offset = count * 2; var control = "facet-control-" + id; $("#" + control).addClass("l-offset-" + offset); } count++; }); }); $("#screen").on("click",function(){ var facet = $(".facet-open").attr('id'); var indicator = facet.replace("-","-indicator-"); $("#" + indicator).html("▼"); filter = facet.replace("-","-control-"); $("#" + filter).removeClass("one-edge-shadow"); $("#" + filter).slideToggle("fast","swing", function() { $("#" + facet).addClass("one-edge-shadow"); $("#" + facet).removeClass("facet-open"); $("#screen").hide(); }); }); $(".facet-button").on("click",function(){ var filter = $(this).attr('id'); var id = filter; var metal = filter.replace("-","-indicator-"); filter = filter.replace("-","-control-"); if ($(this).hasClass("facet-open")) { //$(this).removeClass("facet-open"); $("#" + metal).html("▼"); //$(this).addClass("one-edge-shadow"); $("#" + filter).removeClass("one-edge-shadow"); } else { $(this).addClass("facet-open"); $("#" + metal).html("▲"); $(this).removeClass("one-edge-shadow"); $("#" + filter).addClass("one-edge-shadow"); $("#screen").show(); } $("#" + filter).slideToggle("fast","swing", function() { if($(this).is(":hidden")) { $("#" + id).addClass("one-edge-shadow"); $("#" + id).removeClass("facet-open"); $("#screen").hide(); } }); }); $(document).on("click",".crumbs:not(.removeall)", function() { var crumb = $(this).attr("rel"); crumb = crumb.split("_"); var type = crumb[0]; var value = crumb[1]; type = "facet-" + type + "-input"; if (type == "facet-category-input") { $("input[name='facet-category-input'][rel='top']").prop( "checked", true ); } if (type == "facet-metal-input") { $("input[name='metal_type'][value='Default']").prop( "checked", true ).change(); } else { $("input[name='" + type + "'][value='" + value +"']").prop( "checked", false ).change(); } }); $(document).on("click",".removeall", function() { var category = $('input[type=radio][name=facet-category-input]:checked').val(); var data = "removeall=1" + "&category=" + category; $.ajax({ type: "GET", url: "/ajax/facets.php", dataType: 'html', data: data, success: function(data){ var $response=$(data); //query the jq object for the values var url = $response.filter('#url').text(); window.location.href = url; } }); }); // Bind the swipeleftHandler callback function to the swipe event on div.box //$(".product_thumbnail").on("swipe",function(){ $(document.body).on('swipe', '.product_thumbnail' ,function(){ var source = $(this).attr('rel'); var existing = $("#thumb_" + source).attr('src'); var myString = existing.split(source + "_").pop().charAt(0); myString = parseInt(myString, 10); var image = $(".frame", this).attr('rel'); var type = $(".frame img", this).attr('rel'); var current_metal = $("#current_metal").val(); if(myString == 1) { if (type == "none" || current_metal == "none") { var source2= 'https://www.knoxjewelers.biz/storeimages/products/gallery/' + source + '_' + image + '_image.jpg'; } else if (type !== current_metal) { var source2= 'https://www.knoxjewelers.biz/storeimages/products/gallery/' + source + '_' + image + '_image_' + current_metal + '.jpg'; } else { var source2= 'https://www.knoxjewelers.biz/storeimages/products/gallery/' + source + '_' + image + '_image.jpg'; } } else { if (type == "none" || current_metal == "none") { var source2= 'https://www.knoxjewelers.biz/storeimages/products/gallery/' + source + '_1_image.jpg'; } else if (type !== current_metal) { var source2= 'https://www.knoxjewelers.biz/storeimages/products/gallery/' + source + '_1_image_' + current_metal + '.jpg'; } else { var source2= 'https://www.knoxjewelers.biz/storeimages/products/gallery/' + source + '_1_image.jpg'; } } $("#thumb_" + source).attr('src', source2); if($(".swipe").is(':visible')) { $(".swipe").removeClass(".objblink").fadeTo('fast', 1.0).fadeOut(1000,0.0); } var disable = localStorage.getItem("disableswipe"); if($(".swipe").is(':visible')) { if (typeof disable !== 'undefined' && disable !== null) { disable = parseInt(localStorage.getItem('disableswipe')) + 1; } else { disable = 1; } localStorage.setItem("disableswipe", disable); } $(".swipe").hide(); }) $(document).on('mouseover', '.product_thumbnail',function() { //$(".product_thumbnail").hover(function(){ var source = $(this).attr('rel'); var image = $(".frame", this).attr('rel'); var type = $(".frame img", this).attr('rel'); var current_metal = $("#current_metal").val(); if (type == "none" || current_metal == "none") { var source2= 'https://www.knoxjewelers.biz/storeimages/products/gallery/' + source + '_' + image + '_image.jpg'; } else if (type !== current_metal) { var source2= 'https://www.knoxjewelers.biz/storeimages/products/gallery/' + source + '_' + image + '_image_' + current_metal + '.jpg'; } else { var source2= 'https://www.knoxjewelers.biz/storeimages/products/gallery/' + source + '_' + image + '_image.jpg'; } $("#thumb_" + source).attr('src', source2); }).on('mouseleave', '.product_thumbnail',function(){ var source = $(this).attr('rel'); var type = $(".frame img", this).attr('rel'); var current_metal = $("#current_metal").val(); if (type == "none" || current_metal == "none") { var source3= 'https://www.knoxjewelers.biz/storeimages/products/gallery/' + source + '_1_image.jpg'; } else if (type !== current_metal) { var source3= 'https://www.knoxjewelers.biz/storeimages/products/gallery/' + source + '_1_image_' + current_metal + '.jpg'; } else { var source3= 'https://www.knoxjewelers.biz/storeimages/products/gallery/' + source + '_1_image.jpg'; } $("#thumb_" + source).attr('src', source3); }); function is_touch_device() { return (('ontouchstart' in window) || (navigator.MaxTouchPoints > 0) || (navigator.msMaxTouchPoints > 0)); } if (is_touch_device()) { var disable = localStorage.getItem("disableswipe"); if (disable < 2){ $(".swipe").show(); } } });