]> kaliko git repositories - mpd-sima.git/blobdiff - sima/plugins/internal/random.py
Honors artist blacklisting in Random plugin (Closes #14)
[mpd-sima.git] / sima / plugins / internal / random.py
index feca9d80275ed4b90be5de3d15c03f11274fa049..c6789502b28edccb9cca0b23a09739d90a17c0d2 100644 (file)
@@ -47,6 +47,7 @@ class Random(Plugin):
             self.log.warning('Bad value for flavour, '
                              '"%s" not in ["pure", "sensible"]', self.mode)
             self.mode = 'pure'
+        self.log.debug('Random flavour: %s', self.mode)
 
     def get_played_artist(self,):
         """Constructs list of already played artists.
@@ -81,6 +82,9 @@ class Random(Plugin):
             played_art = self.get_played_artist()
             while artists:
                 art = random.choice(artists)
+                if self.daemon.sdb.get_bl_artist(art, add_not=True):
+                    self.log.debug('Random: Blacklisted "%s"', art)
+                    continue
                 if art not in played_art:
                     break
                 artists.pop(art)