document.addEventListener("DOMContentLoaded", function () { positioning(); }); function repositioning(){ del_cookie("latitude"); del_cookie("longitude"); positioning() .then(() => { location.reload(); }) .catch(err => { console.error(err); }); } function positioning() { return new Promise((resolve, reject) => { if (!navigator.geolocation) { reject("Geolocation not supported"); return; } const getCookie = (name) => { const value = `; ${document.cookie}`; const parts = value.split(`; ${name}=`); if (parts.length === 2) return parts.pop().split(';').shift(); }; const latitude = getCookie("latitude"); const longitude = getCookie("longitude"); if (latitude && longitude) { resolve({ latitude, longitude }); return; } navigator.geolocation.getCurrentPosition( function (position) { const { latitude, longitude } = position.coords; const secure = location.protocol === 'https:' ? 'Secure;' : ''; document.cookie = `latitude=${latitude}; path=/; max-age=86400; ${secure} SameSite=Lax`; document.cookie = `longitude=${longitude}; path=/; max-age=86400; ${secure} SameSite=Lax`; resolve({ latitude, longitude }); }, function (error) { reject(error.message); }, { enableHighAccuracy: true, timeout: 10000, maximumAge: 0 } ); }); }