bibekyess commited on
Commit
a8504b7
·
1 Parent(s): 1960505

Adds seeds for fixing the results on same day

Browse files
Files changed (1) hide show
  1. script.js +10 -4
script.js CHANGED
@@ -7,10 +7,15 @@ async function fetchRestaurants() {
7
  return data;
8
  }
9
 
10
- function getRandomRestaurants(restaurants) {
11
- // Fisher-Yates Shuffle Algorithm
 
 
 
 
 
12
  for (let i = restaurants.length - 1; i > 0; i--) {
13
- const j = Math.floor(Math.random() * (i + 1));
14
  [restaurants[i], restaurants[j]] = [restaurants[j], restaurants[i]];
15
  }
16
  return restaurants.slice(0, 3);
@@ -49,7 +54,8 @@ async function displayRestaurants() {
49
  try {
50
  const restaurants = await fetchRestaurants();
51
  console.log('Fetched Restaurants:', restaurants); // Debugging: Print fetched restaurants
52
- const randomRestaurants = getRandomRestaurants(restaurants);
 
53
  console.log('Random Restaurants:', randomRestaurants); // Debugging: Print random restaurants
54
  document.getElementById('restaurants').innerHTML = randomRestaurants.map(restaurant =>
55
  `<a href="${restaurant[1]}" target="_blank">${restaurant[0]}</a>`
 
7
  return data;
8
  }
9
 
10
+ function seededRandom(seed) {
11
+ var x = Math.sin(seed++) * 10000;
12
+ return x - Math.floor(x);
13
+ }
14
+
15
+ function getRandomRestaurants(restaurants, seed) {
16
+ // Shuffle using seeded random
17
  for (let i = restaurants.length - 1; i > 0; i--) {
18
+ const j = Math.floor(seededRandom(seed + i) * (i + 1));
19
  [restaurants[i], restaurants[j]] = [restaurants[j], restaurants[i]];
20
  }
21
  return restaurants.slice(0, 3);
 
54
  try {
55
  const restaurants = await fetchRestaurants();
56
  console.log('Fetched Restaurants:', restaurants); // Debugging: Print fetched restaurants
57
+ const seed = today.getFullYear() * 10000 + (today.getMonth() + 1) * 100 + today.getDate(); // Create a seed from the date
58
+ const randomRestaurants = getRandomRestaurants(restaurants, seed);
59
  console.log('Random Restaurants:', randomRestaurants); // Debugging: Print random restaurants
60
  document.getElementById('restaurants').innerHTML = randomRestaurants.map(restaurant =>
61
  `<a href="${restaurant[1]}" target="_blank">${restaurant[0]}</a>`