// Shared JavaScript // Initialize analytics if (window.netlifyIdentity) { window.netlifyIdentity.on("init", user => { if (!user) { window.netlifyIdentity.on("login", () => { document.location.href = "/admin/"; }); } }); } // Mock tracking data const mockTrackingData = { "1234567890": { status: "Delivered", estimatedDelivery: "Today by 8:00 PM", history: [ { status: "Delivered", time: "Today at 2:30 PM", details: "Delivered to front door" }, { status: "Out for delivery", time: "Today at 8:15 AM" }, { status: "In transit", time: "Yesterday at 5:45 PM", details: "Departed from local facility" } ] }, "9876543210": { status: "In Transit", estimatedDelivery: "Tomorrow by 8:00 PM", history: [ { status: "In transit", time: "Today at 10:30 AM", details: "Arrived at local facility" }, { status: "Shipped", time: "Yesterday at 3:15 PM", details: "Package picked up" } ] } }; // Handle tracking from URL parameter function checkTrackingFromURL() { const urlParams = new URLSearchParams(window.location.search); const trackingNum = urlParams.get('track'); if (trackingNum && document.querySelector('form')) { const input = document.querySelector('form input'); input.value = trackingNum; document.querySelector('form').dispatchEvent(new Event('submit')); } } // Register service worker for PWA if ('serviceWorker' in navigator) { window.addEventListener('load', () => { navigator.serviceWorker.register('/sw.js').then(registration => { console.log('SW registered: ', registration); }).catch(registrationError => { console.log('SW registration failed: ', registrationError); }); }); } document.addEventListener('DOMContentLoaded', () => { checkTrackingFromURL(); // Form submission handler const trackingForm = document.querySelector('form'); if (trackingForm) { trackingForm.addEventListener('submit', (e) => { e.preventDefault(); const trackingNumber = e.target.querySelector('input').value; const trackingData = mockTrackingData[trackingNumber]; if (trackingData) { // Update UI with tracking data const resultsSection = document.querySelector('.p-6'); if (resultsSection) { resultsSection.innerHTML = `
Estimated delivery: ${trackingData.estimatedDelivery}
${item.status}
${item.time}
${item.details ? `${item.details}
` : ''}