return None
names = list()
for art in result.names:
- if cls.database.get_bl_artist(art, add_not=True):
- cls.log.debug('Blacklisted "%s"', art)
+ artist = Artist(name=art, mbid=result.mbid)
+ if cls.database.get_bl_artist(artist, add=False):
+ cls.log.debug('Artist "%s" in blocklist!', artist)
continue
names.append(art)
if not names:
# / decorators
-def blacklist(artist=False, album=False, track=False):
+def blocklist(album=False, track=False):
# pylint: disable=C0111,W0212
field = (album, track)
if track and cls.database.get_bl_album(elem, add=False):
# filter album as well in track mode
# (artist have already been)
- cls.log.debug('Blacklisted alb. "%s"', elem)
+ cls.log.debug('Album "%s" in blocklist', elem)
continue
results.append(elem)
return results
if not hasattr(album, 'artist'):
raise PlayerError('Album object have no artist attribute')
albums = []
- if self.use_mbid and album.mbid:
+ if album.mbid:
filt = f"(MUSICBRAINZ_ALBUMID == '{album.mbid}')"
albums = self.find(filt)
# Now look for album with no MusicBrainzIdentifier
- if not albums and album.artist.mbid and self.use_mbid: # Use album artist MBID if possible
+ if not albums and album.artist.mbid: # Use album artist MBID if possible
filt = f"((MUSICBRAINZ_ALBUMARTISTID == '{album.artist.mbid}') AND (album == '{album.name_sz}'))"
albums = self.find(filt)
if not albums: # Falls back to (album)?artist/album name
Returns an Artist object
"""
found = False
- if self.use_mbid and artist.mbid:
+ if artist.mbid:
# look for exact search w/ musicbrainz_artistid
library = self.list('artist', f"(MUSICBRAINZ_ARTISTID == '{artist.mbid}')")
if library:
return artist
return None
- @blacklist(track=True)
+ @blocklist(track=True)
def search_track(self, artist, title):
"""Fuzzy search of title by an artist
"""
mtitle, title, leven)
return tracks
- @blacklist(album=True)
+ @blocklist(album=True)
def search_albums(self, artist):
"""Find potential albums for "artist"