PageSourceSearch

https://www.rockler.com/static/version1790662417/frontend/Forix/Re…/js/amasty-label-cdp.min.js

js rockler.com collected 2026-10-01 09:08:10 UTC 8,154 bytes, 28 lines download raw bytes

1require(['jquery','Magento_Catalog/js/price-utils'],function($,priceUtils){var groupedTypeId=['grouped','configurate','bundle','multiconfigurable'];var pickupDeliveryFilter={};$(document).bind('store_location_popup_loaded',function(event,response){if(!$('#changeLocationPopup').hasClass('view-from-filter')){return;}
2if(!response.hasOwnProperty('stores')){return;}
3var listStoreNameInFilter=Object.keys(pickupDeliveryFilter);response.stores.forEach(function(store){store.hidden=!listStoreNameInFilter.includes(store.name);})});$(document).bind('saveStoreEvent',function(event,data){if(!data.hasOwnProperty('name')||!window.searchSpringConfig.enableBopis){return;}
4var listStoreNameInFilter=Object.keys(pickupDeliveryFilter);var storeName=data.name;var $storeName=$('.ss-facet-container-pickup_delivery .ss-type-pickup');var oldStoreName=$storeName.text()||(listStoreNameInFilter[0]??'');$storeName.text(data.name);if(data.is_pickup_available){$storeName.closest('.ss-pickup-delivery').find('.ss-input-pickup').removeAttr('disabled');}else{$storeName.closest('.ss-pickup-delivery').find('.ss-input-pickup').attr('disabled','disabled');$storeName.closest('.ss-pickup-delivery').find('.ss-input-pickup').prop('checked',false);}
5if(!listStoreNameInFilter.includes(storeName)){$storeName.closest('.ss-pickup-delivery').find('.ss-input-pickup').prop('checked',false);console.log('Old Store Name: '+storeName);if(typeof pickupDeliveryFilter[oldStoreName]==='undefined'){return;}
6pickupDeliveryFilter[oldStoreName].location.remove();$('.ss-facet-container-pickup_delivery input.ss-input-pickup').prop('checked',true);var $activeDelivery=$('.ss-pickup-delivery').find('input[data-label="Ship To"]')
7if($activeDelivery.is(':checked')){pickupDeliveryFilter[oldStoreName].location.add('filter','pickup_delivery','Delivery');}
8if(filtered&&filtered.length){for(const filter of filtered){if(filter[1]&&filter[1]!=='pickup_delivery'){pickupDeliveryFilter[oldStoreName].location.add(...filter);}}}
9pickupDeliveryFilter[oldStoreName].go();$storeName.closest('.ss-pickup-delivery').find('.ss-input-pickup').prop('checked',false);return;}
10var filtered=[...pickupDeliveryFilter[storeName].location.get()];pickupDeliveryFilter[storeName].location.remove();pickupDeliveryFilter[storeName].location.add('filter','pickup_delivery',storeName);$('.ss-facet-container-pickup_delivery input.ss-input-pickup').prop('checked',true);var $activeDelivery=$('.ss-pickup-delivery').find('input[data-label="Ship To"]')
11if($activeDelivery.is(':checked')){pickupDeliveryFilter[storeName].location.add('filter','pickup_delivery','Delivery');}
12if(filtered&&filtered.length){for(const filter of filtered){if(filter[1]&&filter[1]!=='pickup_delivery'){pickupDeliveryFilter[storeName].location.add(...filter);}}}
13pickupDeliveryFilter[storeName].go();});$(document).bind('storeFinderHook',function(e,response){var $storeName=$('.ss-facet-container-pickup_delivery .ss-type-pickup');var $delivery=$('.ss-facet-container-pickup_delivery .ss-type-delivery');$storeName.text(response.stores[0].name);$delivery.text(response.client_postcode);});function getStoreNear(){var storeNear=localStorage.getItem('mage-stores-near-latest');try{return JSON.parse(storeNear);}catch(e){console.error('Could not parse the mage-stores-near-latest: ',e);return null;}}
14window.addEventListener('searchspring.rockler.afterSearch',function(e){const searchSpringConfig=window.searchSpringConfig||{};const enableBopis=searchSpringConfig.hasOwnProperty('enableBopis')?searchSpringConfig.enableBopis:false;var $scope=e.detail;if($scope?.moduleName==='autocomplete2'||!$scope?.results[0]?.type_id)return;SearchSpring.Catalog.on('_templates/afterApply',function(){document.body.classList.add('ss-template-applied');});var storeInfo=getStoreNear();if(!$scope?.rocklerpro){$scope.facets.all.splice(1,0,{"field":"pickup_delivery_result","label":"Pickup Delivery","type":"pickup_delivery","facet_active":1,"hide":!enableBopis,"collapse":0,"values":[{"active":false,"type":"pickup","value":"Pickup","label":"Pickup","hide":1,"buttonLabel":storeInfo?storeInfo.name:'',"isDisabled":storeInfo?!storeInfo.is_pickup_available:true,go:function(){var $storeName=$('.ss-facet-container-pickup_delivery .ss-type-pickup');if($storeName.length===0)return;var storeName=$storeName.text().trim();if(pickupDeliveryFilter.hasOwnProperty(storeName)){pickupDeliveryFilter[storeName].go();}else{$('.ss-facet-container-pickup_delivery input.ss-input-pickup').prop('checked',fal
14se);this.buttonAction();}},buttonAction:function(){$('#changeLocationPopup').addClass('view-from-filter');$('#changeLocationPopup').modal('openModal');}},{"active":false,"type":"delivery","value":"Ship To","label":"Ship To","hide":0,"buttonLabel":storeInfo?storeInfo.client_postcode:'',go:function(){if(pickupDeliveryFilter.hasOwnProperty('Delivery')){pickupDeliveryFilter['Delivery'].go();}},buttonAction:function(){}}]});}
15var productIds=[];var currentDate=new Date().toLocaleString("en-US",{timeZone:"America/Chicago"});currentDate=new Date(currentDate);angular.forEach($scope.results,function(result){if(result.type_id==='bundle'){var specialFromDate=result.special_from_date?new Date(result.special_from_date):null;var specialToDate=result.special_to_date?new Date(result.special_to_date):null;if(specialFromDate){specialFromDate.setHours(0,0,0);}
16if(specialToDate){specialToDate.setHours(23,59,59);}
17var isAppliedBundleSale=!((specialFromDate&&specialFromDate>currentDate)||(specialToDate&&currentDate>specialToDate));if(!isAppliedBundleSale){result.bundle_sale_price=null;result.bundle_reg_price=result.price;}else if(isAppliedBundleSale&&!result.bundle_sale_price&&result.special_price){result.bundle_sale_price=result.price;result.bundle_reg_price=result.price*100 / result.special_price;}}
18result.price_html=priceUtils.formatPrice(result.price,searchSpringConfig.priceFormat,false);result.showSelectOption=groupedTypeId.indexOf(result.type_id)>-1;if(result.type_id==='simple'&&result.ss_isnotinstock==='1'){result.ss_isnolongeravailable='1';}
19if(result.type_id==='grouped'&&result.alternate_template==='Yes'){result.showSelectOption=false;}
20if(result.type_id!=='simple'){result.ss_isnolongeravailable='0';}
21if(result.type_id==='simple'&&result.has_options==='1'){result.showSelectOption=true;}
22if(['grouped','simple'].indexOf(result.type_id)===-1&&result.bopis==='Yes'){result.bopis='No';}
23productIds.push(result.uid);})
24angular.forEach($scope.facets.all,function(facet){if(facet.field==='pickup_delivery'){facet.values.forEach(function(value){if(value.value!=='Delivery'){$scope.facets.all[1].values.forEach(function(value){if(value.type==='pickup'){value.hide=0;}})}
25pickupDeliveryFilter[value.value]=value;})
26facet.hide=true;}
27if(facet.field==='ss_category'&&facet.values.length!==0){const data=window.subCategoryHref||{};if(!data||Object.keys(data).length!==0){facet.values.forEach(function(value){const entry=Object.entries(data).find(([key,item])=>normalizeLabel(item.label)===normalizeLabel(value.label));if(entry){const[key,item]=entry;value.url=item.url;}})}}
28function normalizeLabel(str){if(!str)return"";return str.trim().replace(/&/g,'&').replace(/\s+/g,' ');}});angular.forEach($scope.filterSummary,function(filterSummary){if(filterSummary.field==='pickup_delivery'){if(filterSummary.filterValue==='Delivery'){filterSummary.filterLabel='Ship to';filterSummary.filterValue=storeInfo?storeInfo.client_postcode:'';$scope.facets.all[1].values.forEach(function(value){if(value.type==='delivery'){value.active=true;}})}else{filterSummary.filterLabel='Pickup';$scope.facets.all[1].values.forEach(function(value){if(value.type==='pickup'&&value.isDisabled){value.active=false;filterSummary.remove.go();}else if(value.type==='pickup'){value.active=true;value.buttonLabel=filterSummary.filterValue;}}
28)}}});if(typeof searchSpringConfig.banner!=='undefined'&&searchSpringConfig.banner.content){const bannerPosition=parseInt(searchSpringConfig.banner.position);const index=bannerPosition>0?bannerPosition-1:0;$scope.results.splice(index,0,{isInlineBanner:true,content:`<div class="promotion-4 category-banner">${searchSpringConfig.banner.content}</div>`});}})})

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.