commit ca4421450c2eca9ef225507c6dfbb7cc4ef98674
parent 098279a7864876d9049d64f8a1d6b9d12f0ff0b9
Author: Hunter
Date:   Sat,  1 Nov 2025 19:49:19 -0400

add optional shuffle flag

Diffstat:
Mscript.js | 13++++++++++++-
1 file changed, 12 insertions(+), 1 deletion(-)

diff --git a/script.js b/script.js @@ -8,6 +8,17 @@ const progressContainer = document.getElementById('progressContainer'); const audio = document.getElementById('audioPlayer'); audio.controls = true; // Enable controls for iOS media session +const shuffle = false; + +function shuffleArray(array) { + const shuffled = [...array]; + for (let i = shuffled.length - 1; i > 0; i--) { + const j = Math.floor(Math.random() * (i + 1)); + [shuffled[i], shuffled[j]] = [shuffled[j], shuffled[i]]; + } + return shuffled; +} + let currentSongIndex = 0; let isPlaying = false; let progressInterval; @@ -29,7 +40,7 @@ fetch('tracks.json') return response.json(); }) .then(data => { - songs = data; + songs = shuffle ? shuffleArray(data) : data; if (songs.length > 0) { playerReady = true; updateCurrentSongDisplay(`Ready to play: ${songs[0].artist} – ${songs[0].title}`);