async function fetchRestaurants() { const response = await fetch('restaurants.json'); if (!response.ok) { throw new Error('Network response was not ok ' + response.statusText); } const data = await response.json(); return data; } function seededRandom(seed) { var x = Math.sin(seed++) * 10000; return x - Math.floor(x); } function getRandomRestaurants(restaurants, seed) { // Generate three random indices based on the seed const indices = []; for (let i = 0; i < 3; i++) { const randomIndex = Math.floor(seededRandom(seed + i) * restaurants.length); indices.push(randomIndex); } // Get the corresponding restaurants const randomRestaurants = indices.map(index => restaurants[index]); return randomRestaurants; } async function displayRestaurants() { const today = new Date(); const day = today.getDay(); // Format the date const options = { weekday: 'long', year: 'numeric', month: 'long', day: 'numeric' }; const formattedDate = today.toLocaleDateString(undefined, options); // Display the date document.getElementById('currentDate').innerText = `Today is ${formattedDate}`; // Only display suggestions on weekdays if (day === 0 || day === 6) { document.getElementById('restaurants').innerHTML = "No suggestions available today!"; return; } const dateKey = today.toISOString().split('T')[0]; let savedData = localStorage.getItem('restaurantSuggestions'); if (savedData) { savedData = JSON.parse(savedData); if (savedData.date === dateKey) { document.getElementById('restaurants').innerHTML = savedData.restaurants.map(restaurant => `${restaurant[0]}` ).join('
'); return; } } try { const restaurants = await fetchRestaurants(); console.log('Fetched Restaurants:', restaurants); // Debugging: Print fetched restaurants const seed = today.getFullYear() * 10000 + (today.getMonth() + 1) * 100 + today.getDate(); // Create a seed from the date const randomRestaurants = getRandomRestaurants(restaurants, seed); console.log('Random Restaurants:', randomRestaurants); // Debugging: Print random restaurants document.getElementById('restaurants').innerHTML = randomRestaurants.map(restaurant => `${restaurant[0]}` ).join('
'); const dataToSave = { date: dateKey, restaurants: randomRestaurants }; localStorage.setItem('restaurantSuggestions', JSON.stringify(dataToSave)); } catch (error) { console.error('Error fetching restaurants:', error); document.getElementById('restaurants').innerHTML = "Failed to load restaurant suggestions."; } } window.onload = displayRestaurants;