1import{i as e,n as t,r as n,t as r}from"./utils.B0Z-HZhr.js";import{t as i}from"./_virtual_include-fees-in-price.DJ563_nq.js";var a=`https://api.certus.com/Products/api/v2/Public`,o=`false`,s=`false`,c=`floridaboatingcourse.com`,l=``,u=`productsData`,d=null,f=new Set,p=!1;function m(e){let t=e.pricing;return{...e,tags:e.tags?[...e.tags]:[],pricing:{...t,priceAfterDiscount:(t.discountAmount??0)>0?Math.round((t.price-t.discountAmount)*100)/100:t.price,coupon:t.discountSource===`Coupon`?n(`_up4cc`):null}}}function h(e){d=e,sessionStorage.setItem(u,JSON.stringify(e));for(let t of f)t(e)}function g(t,i,u,d={}){let f=t&&!d.testPrice?`&testPrice=${t}`:``,p=i&&!d.groupId?`&groupId=${i}`:(d.groupId,``),_=n(`_up4cc`),v=`${a}/GetProductsBy/?host=${c}${f}${p}${u&&!d.coupon?`&couponcode=${u}`:_?`&couponcode=${_}`:``}&unpublished=${o}&fullSiteBuild=${s}`;fetch(v).then(e=>e.ok?e.json():null).then(n=>{if(n)if(n.errors){let e=n.errors;e?.testPrice&&(r(`_up4tp`),console.log(`Calling API with default testPrice!`)),e?.groupId&&(r(`_up4gid`),console.log(`Calling API with default groupId!`)),g(t,i,u,{testPrice:!!e?.testPrice,groupId:!!e?.groupId})}else{let r=n,a=!0,o=r.some(e=>e.pricing?.typePricing?.toLowerCase()===t?.toLowerCase());t&&o?e(`_up4tp`,t.toLowerCase(),30):t&&!d.testPrice&&e(`_up4tp`,t.toLowerCase());let s=r.some(e=>e.pricing?.groupId?.toLowerCase()===i?.toLowerCase()||e.pricing?.groupId?.toLowerCase()===l.toLowerCase());(i||d.groupId)&&s&&i&&!d.groupId?e(`_up4gid`,i.toLowerCase(),30):d.groupId;let c=r.some(e=>e.pricing?.discountSource===`Coupon`);u&&c&&!d.coupon?e(`_up4cc`,u.toLowerCase(),30):!d.coupon&&_&&(a=!1,console.log(`Calling API with cookie coupon!`),g(t,i,u,{coupon:!0})),a&&h(r.map(m))}}).catch(e=>console.error(`[pricing-store]`,e))}function _(e){f.add(e),d&&e(d)}function v(){if(p)return;p=!0,e(`unpublished`,`0`);let r=t(`tp`)||n(`_up4tp`)||null,i=t(`gid`)||t(`lgr`)||n(`_up4gid`)||null,a=t(`cc`)||n(`_up4cc`)||null,o=sessionStorage.getItem(u);o&&h(JSON.parse(o)),g(r,i,a)}function y(e,t){let n=e.dataset.pid;if(!n)return;let r=t.find(e=>e.id.toLowerCase()===n.toLowerCase());if(!r)return;let a=r.pricing,o=i(n)?a.price+(a.agencyFee??0):a.price,s=a.discountAmount?o-a.discountAmount:o;if(e.classList.contains(`price`)){let[t,n]=s.toFixed(2).split(`.`);e.getElementsByClassName(`dollars`)[0].innerHTML=t;let r=e.getElementsByClassName(`cents`)[0];r.innerHTML=n,r.classList.toggle(`display-none`,n===`00`),e.classList.add(`shown`)}else if(e.classList.contains(`price-display`))e.innerHTML=`$`+s.toFixed(2).replace(`.00`,``);else if(e.classList.contains(`regular-price`)){e.innerHTML=`$`+o.toFixed(2).replace(`.00`,``);let t=!a.discountAmount;e.classList.toggle(`display-none`,t),e.closest(`.regular-price-display`)?.classList.toggle(`display-none`,t)}else if(e.classList.contains(`savings-amount`)){e.innerHTML=`$`+(a.discountAmount??0).toFixed(2).replace(`.00`,``);let t=!a.discountAmount;e.classList.toggle(`display-none`,t),e.closest(`.savings-display`)?.classList.toggle(`display-none`,t)}}function b(){document.querySelectorAll(`[data-pid]`).forEach(e=>{_(t=>y(e,t))}),v()}b();
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.