diff --git a/src/views/detail.js b/src/views/detail.js index dbed21c..2a52b73 100644 --- a/src/views/detail.js +++ b/src/views/detail.js @@ -467,11 +467,11 @@ export async function loadAlbumDetail(album) { document.getElementById('album-detail-stats').textContent = `${songs.length} Titel · ${r.album.year||''} · ${totalMin} Min.`; // r.album has sortName (album sort tag) — use it; nav album may not have sortName document.getElementById('album-detail-name').textContent = dispAlbumName(r.album); - if (songs[0]) { - artistEl.innerHTML = parseArtists(songs[0]) - .map(a => `${esc(dispArtistById(a.id, a.name))}`) - .join(' • ') || ''; - } + // Album artist comes from the album's own album-artist tags (r.album.artists / .artist), NOT the + // first track — for soundtracks/compilations track 1's artist (e.g. TWICE) is not the album artist. + artistEl.innerHTML = parseArtists(r.album) + .map(a => `${esc(dispArtistById(a.id, a.name))}`) + .join(' • ') || ''; document.getElementById('btn-play-album').onclick = () => playQueue(songs, 0); document.getElementById('btn-dl-album').onclick = () => { songs.forEach((s,i) => setTimeout(() => dlSongLocal(s), i*400));