var lastMover=null;function filterHTML(input){var output=input;if(input.indexOf("</div>")>=0){output=$(input).text().trim();}else if(input.indexOf("<sup")>=0){output=input.substring(0,input.indexOf("<sup"));}
return output;}
$(document).ready(function(){var offset_top=$('#top_header_wrapper').outerHeight();if($(window).width()<481){$("div[id^=hide]").hide();var featureslabel=$('#featureslabel').val();var specificationslabel=$('#specificationslabel').val();var referenceslabel=$('#referenceslabel').val();var resourceslabel=$('#resourceslabel').val();$('h3#features').html('');$('h3#specifications').html('');$('h3#references').html('');$('h3#resources').html('');$('h3#features').append('<a role="button" data-toggle="collapse" href="#collapseFeatures">'+featureslabel+'</a>');$('h3#specifications').append('<a role="button" data-toggle="collapse" href="#collapseSpecifications">'+specificationslabel+'</a>');$('h3#references').append('<a role="button" data-toggle="collapse" href="#collapseReferences">'+referenceslabel+'</a>');$('h3#resources').append('<a role="button" data-toggle="collapse" href="#collapseResources">'+resourceslabel+'</a>');}
if(findBootstrapEnvironment()=='lg'||findBootstrapEnvironment()=='md'){var offset_top_stick=54;}else{var offset_top_stick=0;}
try{var x=new $.fn.dataTable.Api(table).settings()[0];if(x!=undefined){new $.fn.dataTable.FixedHeader(table,{'offsetTop':(offset_top_stick)});}}catch(err){}
var dt=$('#product-list-lg').dataTable();updateAllFiltersNoSort();jQuery.extend(jQuery.fn.dataTableExt.oSort,{"natural-asc":function(a,b){return naturalSort(a,b);},"natural-desc":function(a,b){return naturalSort(a,b)*-1;}});var reset_scroll;var checkSelected="";var dta;$(function(){var inProcess=false;function disable_sel_filter(a,b){var this_id='#'+b;var all_id='#'+a;if($(all_id+"  option").length<2){$(all_id).find("option").attr('selected',true);}
else{$(all_id).find("option").attr('selected',false);}
$(this_id).parent().show();$(this_id).removeClass("filter_hide");}
$('body').tooltip({selector:'[data-toggle=tooltip]'});imagePreview();$("#btnClear").click(function(){$(this).parent().hide();$("#modelFilter").val("");var col=dt.api().column(".dt_rankScore").search('',true,false,false).draw();var rankScore=dt.api().order([6,'desc'],[7,'desc'],[5,'desc'],[3,'asc']).draw();updateCountOnUI(dt);$("#reset_adv_filter").show();return false;});try{var table_acc=$('.accessories-list').DataTable({paging:false,aaSorting:[],columnDefs:[{type:'natural',targets:0},{"visible":false,"targets":4},{"visible":false,"targets":5},],initComplete:function(){dta=this;var col1=dta.api().column(".dt_compatibility").search(compatibility,true,false).draw();}});var sortOrder=$('.accessories-list').DataTable().order([4,'asc']).draw();}catch(err){var table_acc=null;}
var offsetHeight=$('#main_navbar').outerHeight();$('a.page-scroll').click(function(event){var offsetTop=$('body,html').find($(this).attr('href')).offset().top;var scrollPos=offsetTop-45;var scrollId=$(this).attr('href');if(scrollId=="#products"||scrollId=="#overview"){scrollPos=0;}
var duration=getDuration(scrollPos);$('body,html').animate({scrollTop:scrollPos,},duration,function(){});return false;});$('.specification_data .show_more a').clickToggle(function(){$(".specification-list").animate({height:$(".specification-list").get(0).scrollHeight+50},'fast');$(this).html('<i class="fas fa-chevron-up"></i> Show Less');},function(){$('.specification-list').animate({'height':'400','overflow':'hidden'},'fast');$(this).html('<i class="fas fa-chevron-down"></i> Show More');});$('.product_table .show_more a').clickToggle(function(){dt.api().page.len(-1).draw();updateCountOnUI(dt);imagePreview();var showLess=$('.showless').val();$(this).html('<i class="fas fa-chevron-up"></i> '+showLess);$(".product_table .show_more").css({"margin-top":0});addCadAndSpecEvents()
$('body').tooltip({selector:'[data-toggle=tooltip]'});},function(){dt.api().page.len(showCount).draw();updateCountOnUI(dt);imagePreview();var showAll=$('.showall').val();$(".product_table .show_more").css({"margin-top":-50});$(this).html('<i class="fas fa-chevron-down"></i> '+showAll);addCadAndSpecEvents()
$('body').tooltip({selector:'[data-toggle=tooltip]'});});function getDuration(target){var currentTop=$(window).scrollTop(),rate=0.5,distance=Math.abs(currentTop-target);return distance*rate;}
function fnResetAllFilters(){var oSettings=dt.fnSettings();for(iCol=0;iCol<oSettings.aoPreSearchCols.length;iCol++){oSettings.aoPreSearchCols[iCol].sSearch='';}
dt.fnDraw();}
function resetAllFilters(){$('.menu-selector select').selectpicker('deselectAll');$('.menu-selector select').change();fnResetAllFilters();$("#btnClear").parent().hide();$("#modelFilter").val("");var col1=dt.api().column(".dt_rankScore").search('',true,false,false).draw();var col2=dt.api().column(".dt_compatibility").search(compatibility,true,false,false).draw();$('.accessories_table').each(function(i,obj){var col3=$(obj).DataTable().column(".dt_compatibility").search(compatibility,true,false,false).draw();});updateFiltersOrg();updateAllFilters();var rankScore=dt.api().order([6,'desc'],[7,'desc'],[5,'desc'],[3,'asc']).draw();$('.menu-selector select').selectpicker('deselectAll');$('.selectpicker').selectpicker('refresh');updateCountOnUI(dt);disableComp();}
$('a#reset_adv_filter').click(function(){$('.selectpicker').selectpicker('destroy');resetAllFilters();imagePreview();resetFilterOption();})
$('.compatibility_section button').click(function(){$('.compatibility_section button').removeClass('btn-primary');$('.compatibility_section button').addClass('btn-default');$(this).addClass('btn-primary');var compFilter=$(this).data('name');var modelFilter=$("#modelFilter").val();if(modelFilter!=''){var col=dt.api().column(".dt_rankScore").search('^[0-9]*.[0-9]*$',true,false,false).draw();}
var col=dt.api().column(".dt_compatibility").search(compFilter?compFilter:'',true,false).draw();$('.accessories_table').each(function(i,obj){var colA=$(obj).DataTable().column(".dt_compatibility").search(compFilter?compFilter:'',true,false).draw();});imagePreview();updateCountOnUI(dt);if($("#advanced_search_family .menu-selector .selectpicker li").hasClass("selected")){var selects=$('.menu-selector select').each(function(index,d){var col_id=$(this).attr("id").slice(0,-4);var sel=$(this);var arr=table.column('#'+col_id,{search:'applied'}).data().unique().sort(sort_select_values);var ch=sel.find('option');arr.each(function(i,ele){var found=false;for(var a=0;a<ch.length;++a){if(i==$(ch.eq(a)).val()){found=true;break;}}
var dText=filterHTML(i);if(!found){if(dText.length>0){if(!valueInSelect(sel,dText)){sel.append('<option value="'+dText+'">'+dText+'</option>');}}else{sel.append('<option class="hidden" '+' value="'+dText+'">'+dText+'</option>');}}});lastMover=$(this);})
updateFilters();}
else{updateAllFilters();}
setCompatibility(compFilter);disableComp();});});var table_app=$('table.dataTable.spec_table').DataTable({responsive:{details:{type:'column',target:-1}},sort:false,columnDefs:[{className:'control',orderable:false,targets:-1}],"autoWidth":false,"aaSorting":[],"paging":false});var table_app=$('table.dataTable.accessories_table').DataTable({"autoWidth":false,"aaSorting":[],"paging":false,initComplete:function(){dta=this;try{var col1=dta.api().column(".dt_compatibility").search(compatibility,true,false).draw();}catch(error){}}});$.fn.clickToggle=function(func1,func2){var funcs=[func1,func2];this.data('toggleclicked',0);this.click(function(){var data=$(this).data();var tc=data.toggleclicked;$.proxy(funcs[tc],this)();data.toggleclicked=(tc+1)%2;});return this;};this.imagePreview=function(){xOffset=10;yOffset=30;$("a.preview").hover(function(e){this.t=this.title;this.title="";var c=(this.t!="")?"<br/>"+this.t:"";$("body").append("<p id='preview'><img src='"+this.rel+"' alt='Image preview' />"+c+"</p>");$("#preview").css("top",(e.pageY-xOffset)+"px").css("left",(e.pageX+yOffset)+"px").fadeIn("fast");},function(){this.title=this.t;$("#preview").remove();});$("a.preview").mousemove(function(e){$("#preview").css("top",(e.pageY-xOffset)+"px").css("left",(e.pageX+yOffset)+"px");});};});$(document).ready(function(){$('.features_section').each(function(index){var setOffset=true;var lastObject="notHalf";$(this).find('.heightMatch').each(function(index2){if($(this).hasClass("fix-offset")){if(setOffset){$(this).addClass("col-sm-offset-1");setOffset=false;lastObject="half";}else{if(lastObject="half"){setOffset=true;}}}else{setOffset=true;lastObject="notHalf";}});})});function updateAllFiltersNoSort(){var facetcount=0;var filtersShownCount=0;var table=$('#product-list-lg').DataTable();var selects=$('.menu-selector select').each(function(index,d){var col_id=$(this).attr("id").slice(0,-4);var sel=$(this);sel.find('option').remove().end();var arr=table.column('#'+col_id,{search:'applied'}).data().unique().sort(sort_select_values);sel.find('option').each(function(i,ele){var found=false;for(var a=0;a<arr.length;++a){if(arr[a]==$(this).val()){found=true;break;}}
if(!found){$(this).remove();}});var count=0;var filterCount=0;var ch=sel.find('option');arr.each(function(i,ele){var found=false;for(var a=0;a<ch.length;++a){if(i==$(ch.eq(a)).val()){found=true;break;}}
var dText=filterHTML(i);if(!found&&(dText.length>0)){if(!valueInSelect(sel,dText)){sel.append('<option value="'+dText+'">'+dText+'</option>');}}else{sel.append('<option class="hidden" '+checkSelected+' value="'+dText+'">'+dText+'</option>');}});if(filtersShownCount>7||(sel.children('option').length==0||sel.children('option').length==1)){sel.selectpicker('hide');sel.parent().hide();facetcount++;}
else{sel.selectpicker('show');sel.parent().show();filtersShownCount++;}
var filtercount=familyPageFacetCount+2;if(filtercount==facetcount&&search=='0'){toggleDisable();}
sel.selectpicker('refresh');});resetFilterOption();}
function updateAllFilters(){var facetcount=0;var filtersShownCount=0;var table=$('#product-list-lg').DataTable();var selects=$('.menu-selector select').each(function(index,d){var col_id=$(this).attr("id").slice(0,-4);var sel=$(this);sel.find('option').remove().end();var arr=table.column('#'+col_id,{search:'applied'}).data().unique().sort(sort_select_values);sel.find('option').each(function(i,ele){var found=false;for(var a=0;a<arr.length;++a){if(arr[a]==$(this).val()){found=true;break;}}
if(!found){$(this).remove();}});var count=0;var filterCount=0;var ch=sel.find('option');arr.each(function(i,ele){var found=false;for(var a=0;a<ch.length;++a){if(i==$(ch.eq(a)).val()){found=true;break;}}
var dText=filterHTML(i);if(!found&&(dText.length>0)){if(!valueInSelect(sel,dText)){sel.append('<option value="'+dText+'">'+dText+'</option>');}}else{sel.append('<option class="hidden" '+checkSelected+' value="'+dText+'">'+dText+'</option>');}});if(filtersShownCount>7||(sel.children('option').length==0||sel.children('option').length==1)){sel.selectpicker('hide');sel.parent().hide();facetcount++;}
else{sel.selectpicker('show');sel.parent().show();filtersShownCount++;}
var filtercount=familyPageFacetCount+2;if(filtercount==facetcount&&search=='0'){toggleDisable();}
sel.selectpicker('refresh');});sortTable();resetFilterOption();}
function updateCountOnUI(dt){var info=$('#product-list-lg').DataTable().page.info();var matchingRecords=dt.api().rows({search:'applied'}).count();var showing=$("#showing").val();var of=$("#of").val();var total=$("#total").val();$('#tableInfo').html(showing+' <strong>'+matchingRecords+'</strong> '+of+' <strong>'+info.recordsTotal+'</strong> '+total);if($("#filters").val()=="EXCLUDE"&&matchingRecords!=info.recordsTotal){$('#compatibility-bar').removeClass("hidden");}
showMore(matchingRecords);addCadAndSpecEvents()}
function showMore(matchingRecords){if(matchingRecords>showCount){$("#show_all_table").show();$('[data-toggle="popover"]').popover({placement:'left'});}
else{$("#show_all_table").hide();}}
function setCompatibility(compFilter){compatibility=compFilter;var url='/f/setCompatibility/?compatibility='+compFilter;$.get(url);}
function resetFilterOption(){if($("#advanced_search_family .menu-selector .selectpicker li").hasClass("selected")){$("#reset_adv_filter").show();}
if($("#advanced_search_family .menu-selector .bootstrap-select .inner li").hasClass("selected")){$("#reset_adv_filter").show();}}
function toggleShow(){$("#toggle").removeClass("hidden");}
function toggleDisable(){$("#toggle").addClass("hidden");}
var tablesToSearchArray="product-list-lg";$.fn.dataTable.ext.search.push(function(settings,data,dataIndex){var api=new $.fn.dataTable.Api(settings);var tableId=api.table().node().id;if(tablesToSearchArray.indexOf(tableId)===-1){return true;}
return true;});function disableComp(){$('#METRIC').prop('disabled',false);$('#IMPERIAL').prop('disabled',false);var table=$('#product-list-lg').DataTable();var arr=table.column('#dt_compatibility',{search:'applied'}).data().unique().sort();var metric=true;var imperial=true;for(var a=0;a<arr.length;++a){var dataVal=arr[a];if(dataVal=='UNIVERSAL'||dataVal=='METRIC'){metric=false;}
if(dataVal=='UNIVERSAL'||dataVal=='IMPERIAL'){imperial=false;}}
if(metric==true){$('#METRIC').prop('disabled',true);}
if(imperial==true){$('#IMPERIAL').prop('disabled',true);}}
function valueInSelect(select,value){var valueInSelect=false;try{$('#'+select[0].id+' option').each(function(){if(this.text==value){valueInSelect=true;}});}
catch(err){}
return valueInSelect;}
var reA=/[^a-zA-Z]/g;var reN=/[^0-9]/g;function sort_select_values(a,b){var AInt=parseInt(a,10);var BInt=parseInt(b,10);if(isNaN(AInt)&&isNaN(BInt)){var aA=a.replace(reA,"");var bA=b.replace(reA,"");if(aA===bA){var aN=parseInt(a.replace(reN,""),10);var bN=parseInt(b.replace(reN,""),10);return aN===bN?0:aN>bN?1:-1;}
else{return aA>bA?1:-1;}}
else if(isNaN(AInt)){return 1;}
else if(isNaN(BInt)){return-1;}
else{return AInt>BInt?1:-1;}}
function updateFilters(){inProcess=true;var table=$('#product-list-lg').DataTable();var count=0;var e=null;var filterCount=0;var selects=$('.menu-selector select').each(function(index,d){var col_id=$(this).attr("id").slice(0,-4);if(!lastMover||$(this).attr("id")!=lastMover.attr("id")||($(this).attr("id")==lastMover.attr("id")&&!$(this).val())){if($(this).val()&&$(this).val().length>0){e=$(this);}
var sel=$(this);var arr=table.column('#'+col_id,{search:'applied'}).data().sort(sort_select_values);var facetcount=0;sel.find('option').each(function(i,ele){var found=false;var value=$(this).val();for(var a=0;a<arr.length;++a){var dText=filterHTML(arr[a]);if(dText==value){found=true;break;}}
if(!found){$(this).addClass("filter_hide");facetcount++;}
else{$(this).removeClass("filter_hide");facetcount++;}});if(facetcount<=1||filterCount>7){sel.selectpicker('hide');sel.parent().hide();}
else{sel.selectpicker('show');sel.parent().show();filterCount++;}
sel.selectpicker('refresh');}else{filterCount++;}});if(count==1&&e!=null){e.find("option").removeClass("filter_hide");e.selectpicker('refresh');}
sortTable();resetFilterOption();disableComp();inProcess=false;}
function sortTable(){try{if(dt!=null){var rankScore=dt.api().order([6,'desc'],[7,'desc'],[5,'desc'],[3,'asc']).draw();updateCountOnUI(dt);}}catch(error){}}
function updateFiltersOrg(){$('.menu-selector .bottom10').remove();dt.api().columns('.filtered').every(function(){var column=this;var title=$(column.header()).clone().children().remove().end().text().trim();var id=$(column.header()).attr("id");if($(column.header()).hasClass('hidden')){var d=$('<div/>',{"class":"col-lg-3 col-sm-6 bottom10 hidden"}).appendTo($(".menu-selector"));}else{var d=$('<div/>',{"class":"col-lg-3 col-sm-6 bottom10"}).appendTo($(".menu-selector"));}
d.append($('<label>'+title+'</label>'));var selectLabel=$('#selectLabel').val();var select=$('<select class="selectpicker form-control" multiple title='+selectLabel+'></select>').attr('id',id.toLowerCase().replace(/ /g,"_")+'_sel').appendTo(d).on('change',function(){if(inProcess==true){return;}
var val=$(this).val()?$.fn.dataTable.util.escapeRegex($(this).val().join("ZZZZ")):"";val=val.replace(/zzzz/gi,"|");if(this.id=="dt_availability_sel"){column.search(val?'.*'+val+'.*':'',true,false).sort().draw();}else{column.search(val?'^'+val+'(<sup.*>[0-9]*</sup>)?$':'',true,false).sort().draw();}
lastMover=$(this);updateFilters();updateCountOnUI(dt);resetFilterOption();});$('.selectpicker').selectpicker('refresh');var count=0;column.data().unique().sort(sort_select_values).each(function(d,j){var dText=filterHTML(d);if(dText.length>0){if(!valueInSelect(select,dText)){select.append('<option value="'+dText+'">'+dText+'</option>');count++;}}else{select.append('<option class="hidden" '+checkSelected+' value="'+dText+'">'+dText+'</option>');count++;}});if(count<=1){select.selectpicker('hide');select.parent().hide();}});if(search!='0')
sortTable();}