channel management

This commit is contained in:
peterino2 2026-02-03 20:51:17 -08:00
parent 16774a4156
commit f027ab90b2
1 changed files with 17 additions and 16 deletions

View File

@ -306,24 +306,9 @@
currentIndex: data.currentIndex currentIndex: data.currentIndex
}); });
if (!data.track) {
M.setTrackTitle("No tracks");
return;
}
M.$("#channel-name").textContent = data.channelName || ""; M.$("#channel-name").textContent = data.channelName || "";
M.serverTimestamp = data.currentTimestamp;
M.serverTrackDuration = data.track.duration;
M.lastServerUpdate = Date.now();
const wasServerPaused = M.serverPaused;
M.serverPaused = data.paused ?? true;
// Update playback mode if provided // Update queue if provided (do this before early return for no track)
if (data.playbackMode && data.playbackMode !== M.playbackMode) {
M.playbackMode = data.playbackMode;
if (M.updateModeButton) M.updateModeButton();
}
// Update queue if provided
if (data.queue) { if (data.queue) {
M.queue = data.queue; M.queue = data.queue;
M.currentIndex = data.currentIndex ?? 0; M.currentIndex = data.currentIndex ?? 0;
@ -333,6 +318,22 @@
M.renderQueue(); M.renderQueue();
} }
// Update playback mode if provided
if (data.playbackMode && data.playbackMode !== M.playbackMode) {
M.playbackMode = data.playbackMode;
if (M.updateModeButton) M.updateModeButton();
}
if (!data.track) {
M.setTrackTitle("No tracks");
return;
}
M.serverTimestamp = data.currentTimestamp;
M.serverTrackDuration = data.track.duration;
M.lastServerUpdate = Date.now();
const wasServerPaused = M.serverPaused;
M.serverPaused = data.paused ?? true;
// Cache track info for local mode - use track.id (content hash) as the identifier // Cache track info for local mode - use track.id (content hash) as the identifier
const trackId = data.track.id || data.track.filename; // Fallback for compatibility const trackId = data.track.id || data.track.filename; // Fallback for compatibility
const isNewTrack = trackId !== M.currentTrackId; const isNewTrack = trackId !== M.currentTrackId;