X-Git-Url: https://git.kaliko.me/?a=blobdiff_plain;f=sima%2Fplugins%2Finternal%2Ftags.py;h=ef95606a43e2b7d0a9e5ebd5bf6bc5ae4300ab89;hb=8b43513906e53e658d77aa133dd027d8e57b4773;hp=e0d26d2f277f4ae3540f4f63f7211e09823f003a;hpb=00b983c12bf5d0b9b94086a444bfd425a31593cd;p=mpd-sima.git diff --git a/sima/plugins/internal/tags.py b/sima/plugins/internal/tags.py index e0d26d2..ef95606 100644 --- a/sima/plugins/internal/tags.py +++ b/sima/plugins/internal/tags.py @@ -22,14 +22,13 @@ Add titles based on tags """ # standard library import -import random # third parties components from musicpd import CommandError # local import from ...lib.plugin import AdvancedPlugin -from ...lib.meta import Artist +from ...lib.meta import Artist, MetaContainer from ...utils.utils import PluginException @@ -115,13 +114,15 @@ class Tags(AdvancedPlugin): queue_mode = self.plugin_conf.get('queue_mode', 'track') target = self.plugin_conf.getint(f'{queue_mode}_to_add') # look for artists acording to filter - artists = self.player.list('artist', self.mpd_filter) - random.shuffle(artists) + artists = MetaContainer([Artist(name=a) for a in self.player.list('artist', self.mpd_filter)]) + if not artists: + self.log.info('Tags plugin found nothing to queue') + return candidates artists = self.get_reorg_artists_list(artists) - self.log.debug('Tags artists found: %s', ' / '.join(artists)) + self.log.debug('Tags plugin found: %s', ' / '.join(map(str, artists))) for artist in artists: self.log.debug('looking for %s', artist) - tracks = self.player.find_tracks(Artist(name=artist)) + tracks = self.player.find_tracks(artist) trk = self.filter_track(tracks) if not trk: continue