fix: enhance changeCover function for URL safety and improve title updates in now-playing component
This commit is contained in:
@@ -31,7 +31,15 @@ async function checkNowPlaying(api: string, username: string) {
|
||||
}
|
||||
|
||||
function changeCover(artist: string, album: string, mbid: string): string {
|
||||
return `${backendUrl}/cover/${artist.replace('/', '')}/${album}/${mbid ? mbid : '0'}`
|
||||
// Убираем слеш на конце домена, если он там случайно остался
|
||||
const baseUrl = backendUrl.replace(/\/$/, '')
|
||||
|
||||
// Кодируем спецсимволы и задаём 'unknown' для пустых значений
|
||||
const safeArtist = encodeURIComponent(artist || 'unknown')
|
||||
const safeAlbum = encodeURIComponent(album || 'unknown')
|
||||
const safeMbid = mbid || '0'
|
||||
|
||||
return `${baseUrl}/cover/${safeArtist}/${safeAlbum}/${safeMbid}`
|
||||
}
|
||||
|
||||
let timerId: ReturnType<typeof setTimeout>
|
||||
@@ -61,9 +69,8 @@ onMounted(() => {
|
||||
if (header.value !== 'silence...') ChangeTitle(header, header.value, 'silence...')
|
||||
primary_color.value = '#656565'
|
||||
labelurl.value = '/default-cover.png'
|
||||
if (artist.value != trackData[0].artist['#text'])
|
||||
ChangeTitle(artist, artist.value, trackData[0].artist['#text'])
|
||||
if (track.value != trackData[0].name) ChangeTitle(track, track.value, trackData[0].name)
|
||||
ChangeTitle(artist, artist.value, 'today...')
|
||||
ChangeTitle(track, track.value, "we're silnce...")
|
||||
}
|
||||
}
|
||||
timerId = setTimeout(updateSong, 10000)
|
||||
|
||||
Reference in New Issue
Block a user