]> kaliko git repositories - mpd-sima.git/blobdiff - sima/lib/track.py
Deal with multi-tag for musicbrainz_albumartistid and albumartist
[mpd-sima.git] / sima / lib / track.py
index 4e367db82b1da7b96bb14d7d2c59f5b7eb308b88..6c2835146dc9c90021c20d67e249245dee07af93 100644 (file)
@@ -46,7 +46,6 @@ class Track:
                                  'musicbrainz_artistid',
                                  'musicbrainz_albumartistid']
         #  have tags been collapsed?
-        self.collapse_tags_bool = False
         self.collapsed_tags = list()
         # Needed for multiple tags which returns a list instead of a string
         self.collapse_tags()
@@ -60,7 +59,6 @@ class Track:
             if tag not in self.tags_to_collapse:
                 continue
             if isinstance(value, list):
-                self.collapse_tags_bool = True
                 self.collapsed_tags.append(tag)
                 self.__dict__.update({tag: ', '.join(set(value))})
 
@@ -129,14 +127,15 @@ class Track:
         return time.strftime(fmt, temps)
 
     def get_artist(self):
-       """Get artist object from track"""
-       name = self.artist
-       mbid = self.musicbrainz_artistid
-       if self.albumartist != 'Various Artists':
-           name = self.albumartist
-       if self.musicbrainz_albumartistid != '89ad4ac3-39f7-470e-963a-56509c546377':
-           mbid = self.musicbrainz_albumartistid
-       return Artist(name=name, mbid=mbid)
+        """Get artist object from track"""
+        name = self.artist
+        mbid = self.musicbrainz_artistid
+        if self.albumartist and self.albumartist != 'Various Artists':
+            name = self.albumartist.split(', ')[0]
+        if (self.musicbrainz_albumartistid and
+            self.musicbrainz_albumartistid != '89ad4ac3-39f7-470e-963a-56509c546377'):
+            mbid = self.musicbrainz_albumartistid.split(', ')[0]
+        return Artist(name=name, mbid=mbid)
 
 # VIM MODLINE
 # vim: ai ts=4 sw=4 sts=4 expandtab