diff --git a/src/components/now-playing.vue b/src/components/now-playing.vue index 13d9b86..0d73546 100644 --- a/src/components/now-playing.vue +++ b/src/components/now-playing.vue @@ -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 @@ -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)