If artwork retrival fails, gracefully fallback to placeholder image
This commit is contained in:
1 parent
1a88adeabc
commit
9dafff4311
1 file changed
+11
@@ -52,6 +52,7 @@
|
||||
};
|
||||
|
||||
var currentKey = null;
|
||||
var currentTrack = null;
|
||||
var siteName = CFG.siteName || 'Radio';
|
||||
|
||||
/* ---------------------------------------------------------------- utils */
|
||||
@@ -362,6 +363,15 @@
|
||||
if (track) updateMediaSession(track, src);
|
||||
}
|
||||
|
||||
// A provider can return a URL that 404s (Last.fm in particular). Fall back
|
||||
// to the placeholder once, instead of leaving a broken image on screen.
|
||||
if (el.art) {
|
||||
el.art.addEventListener('error', function () {
|
||||
if (el.art.getAttribute('src') === CFG.fallbackArt) return;
|
||||
setArt('', '', currentTrack);
|
||||
});
|
||||
}
|
||||
|
||||
function resolveArtwork(track, providerArt) {
|
||||
var source = CFG.artworkSource || 'auto';
|
||||
if (source === 'none') { setArt('', '', track); return; }
|
||||
@@ -474,6 +484,7 @@
|
||||
|
||||
/* --------------------------------------------------------------- poll */
|
||||
function onNewTrack(t, providerArt) {
|
||||
currentTrack = t;
|
||||
var joined = (t.artist && t.title) ? (t.artist + ' – ' + t.title) : (t.title || t.artist || '');
|
||||
if (el.name) el.name.textContent = t.title || siteName;
|
||||
if (el.artist) el.artist.textContent = t.artist || '';
|
||||
|
||||
Reference in new issue
Block a user