From 5e3b917023a6c5d78489728f838cf4c6044cdada Mon Sep 17 00:00:00 2001 From: Matt Walsh Date: Tue, 3 Jun 2025 21:09:26 -0500 Subject: [PATCH] add music track names to info block close #100 --- server/scripts/modules/media.mjs | 10 ++++++++++ views/index.ejs | 1 + 2 files changed, 11 insertions(+) diff --git a/server/scripts/modules/media.mjs b/server/scripts/modules/media.mjs index 5250653..235b6af 100644 --- a/server/scripts/modules/media.mjs +++ b/server/scripts/modules/media.mjs @@ -79,6 +79,7 @@ const startMedia = async () => { } else { try { await player.play(); + setTrackName(playlist.availableFiles[currentTrack]); } catch (e) { // report the error console.error('Couldn\'t play music'); @@ -86,6 +87,7 @@ const startMedia = async () => { // set state back to not playing for good UI experience mediaPlaying.value = false; stateChanged(); + setTrackName('Not playing'); } } }; @@ -93,6 +95,7 @@ const startMedia = async () => { const stopMedia = () => { if (!player) return; player.pause(); + setTrackName('Not playing'); }; const stateChanged = () => { @@ -140,6 +143,7 @@ const initializePlayer = () => { // get the first file player.src = `music/${playlist.availableFiles[currentTrack]}`; + setTrackName(playlist.availableFiles[currentTrack]); player.type = 'audio/mpeg'; }; @@ -160,6 +164,12 @@ const playerEnded = () => { } // update the player source player.src = `music/${playlist.availableFiles[currentTrack]}`; + setTrackName(playlist.availableFiles[currentTrack]); +}; + +const setTrackName = (fileName) => { + const trackName = fileName.replace(/\.mp3/gi, '').replace(/(_-)/gi, ''); + document.getElementById('musicTrack').innerHTML = trackName; }; export { diff --git a/views/index.ejs b/views/index.ejs index e315cc5..8bbe2eb 100644 --- a/views/index.ejs +++ b/views/index.ejs @@ -186,6 +186,7 @@ Station Id:
Radar Id:
Zone Id:
+ Music: Not playing
Ws4kp Version: <%- version %>