diff --git a/src/js/services/mopidy/middleware.js b/src/js/services/mopidy/middleware.js index cef8b731..2b236d1a 100755 --- a/src/js/services/mopidy/middleware.js +++ b/src/js/services/mopidy/middleware.js @@ -1629,22 +1629,24 @@ const MopidyMiddleware = (function(){ .then(response => { if (response.length <= 0) return - var albums = [] - for(var i = 0; i < response.length; i++){ - var album = Object.assign( - {}, - response[i].album, - { - uri: response[i].album.uri, - } - ); - if (album){ - function getByURI(albumToCheck){ - return album.uri == albumToCheck.uri - } - var existingAlbum = albums.find(getByURI); - if (!existingAlbum){ - albums.push(album); + var albums = []; + for (var i = 0; i < response.length; i++){ + if (response[i].album){ + var album = Object.assign( + {}, + response[i].album, + { + uri: response[i].album.uri, + } + ); + if (album){ + function getByURI(albumToCheck){ + return album.uri == albumToCheck.uri + } + var existingAlbum = albums.find(getByURI); + if (!existingAlbum){ + albums.push(album); + } } } } @@ -1652,7 +1654,7 @@ const MopidyMiddleware = (function(){ store.dispatch({ type: 'ALBUMS_LOADED', albums: albums - }) + }); } var artist = Object.assign( @@ -1668,7 +1670,7 @@ const MopidyMiddleware = (function(){ type: 'ARTIST_LOADED', key: artist.uri, artist: artist - }) + }); // load artwork from LastFM if (!artist.images || artist.images.length <= 0){ diff --git a/src/js/views/Track.js b/src/js/views/Track.js index a0dcde1b..f31ff179 100755 --- a/src/js/views/Track.js +++ b/src/js/views/Track.js @@ -125,11 +125,14 @@ class Track extends React.Component{ } renderLyricsSelector(){ - if (!this.props.track.lyrics_results){ + if (this.props.track.lyrics_results === undefined || this.props.track.lyrics_results === null){ + return null; + + } else if (this.props.track.lyrics_results.length <= 0){ return (
- +
Switch to another lyrics seach result
@@ -213,7 +216,7 @@ class Track extends React.Component{ uiActions={this.props.uiActions} /> : null}
- +
@@ -221,7 +224,12 @@ class Track extends React.Component{

{track.name}

-

{track.album ? {track.album.name} : "Unknown album"} by

+

+ {track.album && track.album.uri ? {track.album.name} : null} + {track.album && !track.album.uri ? track.album.name : null} + {!track.album ? "Unknown album" : null} +  by +

    {!this.props.slim_mode ?
  • {helpers.uriSource(this.props.params.uri)} track
  • : null}