albums = self.player.search_albums(artist)
if not albums:
return None
- self.log.debug('Albums candidates: %s', albums)
+ self.log.debug('Albums to choose from: %s', albums)
albums_hist = self.get_album_history(artist)
self.log.trace('Albums history: %s', [a.name for a in albums_hist])
albums_not_in_hist = [a for a in albums if a.name not in albums_hist]
return None
random.shuffle(albums_not_in_hist)
albums_not_in_hist.extend(albums_hist)
- self.log.debug('Albums candidate: %s', albums_not_in_hist)
+ self.log.trace('Album candidates: %s', albums_not_in_hist)
album_to_queue = []
for album in albums_not_in_hist:
# Controls the album found is not already queued
- if album in {t.album for t in self.player.queue}:
+ if album in {t.Album.name for t in self.player.queue}:
self.log.debug('"%s" already queued, skipping!', album)
continue
# In random play mode use complete playlist to filter
+ # Yes indeed, some users play in random with album mode :|
if self.player.playmode.get('random'):
- if album in {t.album for t in self.player.playlist}:
+ if album in {t.Album.name for t in self.player.playlist}:
self.log.debug('"%s" already in playlist, skipping!',
album)
continue
for trk in [_ for _ in not_in_hist if _ not in deny_list]:
# Should use albumartist heuristic as well
if self.plugin_conf.getboolean('single_album', False): # pylint: disable=no-member
- albums = [tr.album for tr in deny_list]
- albums += [tr.album for tr in self.to_add]
- if (trk.album == self.player.current.album or
- trk.album in albums):
+ albums = [tr.Album for tr in deny_list]
+ albums += [tr.Album for tr in self.to_add]
+ if (trk.Album == self.player.current.Album or
+ trk.Album in albums):
self.log.debug('Found unplayed track ' +
'but from an album already queued: %s', trk)
continue