From 239033ad5ea77f12a0fbeca7bcc4fe18ca845fb5 Mon Sep 17 00:00:00 2001 From: Julien Maille Date: Sat, 26 Mar 2022 14:43:37 +0100 Subject: [PATCH] Try to fix genre display when playing a podcast #200 --- src/js/main.js | 24 ++++++++++++++---------- 1 file changed, 14 insertions(+), 10 deletions(-) diff --git a/src/js/main.js b/src/js/main.js index 30f0d16..8bf1538 100644 --- a/src/js/main.js +++ b/src/js/main.js @@ -761,9 +761,10 @@ Dribbblish.on("ready", () => { } const genreInfoSpan = document.getElementById("main-trackInfo-genre"); - let album_uri = Spicetify.Player.data.track.metadata.album_uri; - let artist_uri = Spicetify.Player.data.track.metadata.artist_uri; - let bgImage = Spicetify.Player.data.track.metadata.image_url; + let track = Spicetify.Player.data.track; + let album_uri = track.metadata.album_uri; + let artist_uri = track.metadata.artist_uri; + let bgImage = track.metadata.image_url; if (bgImage === undefined) { bgImage = "/images/tracklist-row-song-fallback.svg"; } @@ -774,14 +775,17 @@ Dribbblish.on("ready", () => { const albumLinkElem = /* html */ ` - ${Spicetify.Player.data.track.metadata.album_title} + ${track.metadata.album_title} `; const albumDateElem = /* html */ `${albumDate.format(moment().diff(albumDate, "months") <= 6 ? "MMM YYYY" : "YYYY")}`; albumInfoSpan.innerHTML = `${albumLinkElem}${albumDateElem}`; - const genres = await getGenres(artist_uri.replace("spotify:artist:", "")); + let genres = ""; + if (!album_uri.includes("spotify:episode")) { + genres = await getGenres(artist_uri.replace("spotify:artist:", "")); + } genreInfoSpan.innerHTML = ` @@ -789,16 +793,16 @@ Dribbblish.on("ready", () => { `; - } else if (Spicetify.Player.data.track.uri.includes("spotify:episode")) { + } else if (track.uri.includes("spotify:episode")) { // podcast bgImage = bgImage.replace("spotify:image:", "https://i.scdn.co/image/"); - albumInfoSpan.innerHTML = Spicetify.Player.data.track.metadata.album_title; + albumInfoSpan.innerHTML = track.metadata.album_title; genreInfoSpan.innerHTML = ""; - } else if (Spicetify.Player.data.track.metadata.is_local == "true") { + } else if (track.metadata.is_local == "true") { // local file - albumInfoSpan.innerHTML = Spicetify.Player.data.track.metadata.album_title; + albumInfoSpan.innerHTML = track.metadata.album_title; genreInfoSpan.innerHTML = ""; - } else if (Spicetify.Player.data.track.provider == "ad") { + } else if (track.provider == "ad") { // ad albumInfoSpan.innerHTML = "Advertisement"; genreInfoSpan.innerHTML = "";