PageSourceSearch

https://retique.com/cdn/shop/t/50/assets/geo-location-override.js?v=93293378561084354781780429637

js retique.com collected 2026-10-04 10:41:23 UTC 3,390 bytes, 2 lines download raw bytes

1(()=>{const testZipcode=(new URLSearchParams(window.location.search).get("testzipcode")||"").trim();if(!/^\d{5}(?:-\d{4})?$/.test(testZipcode))return;const cacheKey=`rtq_testzipcode_${testZipcode}`,state=window.RetiqueGeoLocatorOverride=window.RetiqueGeoLocatorOverride||{};state.testZipcode=testZipcode,state.getCoordinates=getCoordinates,state.applyStorepointUrlOverride=applyStorepointUrlOverride;try{const cached=JSON.parse(sessionStorage.getItem(cacheKey)||"null");if(cached&&Number.isFinite(cached.latitude)&&Number.isFinite(cached.longitude)){state.coordinates=cached,applyStorepointUrlOverride(cached),overrideGeolocation(cached),preserveZipcodeOnLinks();return}}catch{}applyStorepointUrlOverride(),preserveZipcodeOnLinks(),getCoordinates().then(coordinates=>{if(coordinates){state.coordinates=coordinates;try{sessionStorage.setItem(cacheKey,JSON.stringify(coordinates))}catch{}applyStorepointUrlOverride(coordinates),overrideGeolocation(coordinates)}});function getCoordinates(){return state.coordinates?Promise.resolve(state.coordinates):fetch(`https://api.zippopotam.us/us/${encodeURIComponent(testZipcode.slice(0,5))}`,{credentials:"omit"}).then(response=>response.ok?response.json():null).then(data=>{const place=data?.places?.[0],latitude=Number(place?.latitude),longitude=Number(place?.longitude);return!Number.isFinite(latitude)||!Number.isFinite(longitude)?null:{latitude,longitude,zipcode:testZipcode}}).catch(()=>null)}function overrideGeolocation(coordinates){const geo=navigator.geolocation;if(!geo||geo.__rtqTestZipcodeOverride)return;const position={coords:{latitude:coordinates.latitude,longitude:coordinates.longitude,accuracy:1e3,altitude:null,altitudeAccuracy:null,heading:null,speed:null},timestamp:Date.now()},original={getCurrentPosition:geo.getCurrentPosition?.bind(geo),watchPosition:geo.watchPosition?.bind(geo),clearWatch:geo.clearWatch?.bind(geo)};geo.getCurrentPosition=function(success){typeof success=="function"&&setTimeout(()=>success(position),0)},geo.watchPosition=function(success){return typeof success=="function"&&setTimeout(()=>success(position),0),1},geo.clearWatch=function(id){original.clearWatch&&id!==1&&original.clearWatch(id)},Object.defineProperty(geo,"__rtqTestZipcodeOverride",{value:!0,configurable:!0})}function applyStorepointUrlOverride(coordinates){const url=new URL(window.location.href);let changed=!1;if(url.searchParams.get("locate")!==testZipcode&&(url.searchParams.set("locate",testZipcode),changed=!0),url.searchParams.get("search_text")!==testZipcode&&(url.searchParams.set("search_text",testZipcode),changed=!0),coordinates){const lat=String(coordinates.latitude),lng=String(coordinates.longitude);url.searchParams.get("lat")!==lat&&(url.searchParams.set("lat",lat),changed=!0),url.searchParams.get("lng")!==lng&&(url.searchParams.set("lng",lng),changed=!0)}changed&&window.history.replaceState({},"",url.toString())}function preserveZipcodeOnLinks(){document.addEventListener("click",event=>{const link=event.target.closest("a[href]");if(link&&link.matches('[data-sp-open], a[href*="/pages/store-locator"]'))try{const url=new URL(link.href,window.location.href);if(url.searchParams.get("testzipcode")===testZipcode)return;url.searchParams.set("testzipcode",testZipcode),link.href=url.toString()}catch{}},!0)}})();
2//# sourceMappingURL=/cdn/shop/t/50/assets/geo-location-override.js.map?v=93293378561084354781780429637

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.