Display release country in matching releases
This simplifies choosing the correct release when there are multiple matches. If a certain release has multiple countries associated, all will be shown. Thanks to the user "the-confessor" for testing this new feature. Fixes #451. Signed-off-by: JoeLametta <JoeLametta@users.noreply.github.com>
This commit is contained in:
@@ -69,6 +69,8 @@ class DiscMetadata:
|
||||
:param title: title of the disc (with disambiguation)
|
||||
:param releaseTitle: title of the release (without disambiguation)
|
||||
:type tracks: list of :any:`TrackMetadata`
|
||||
:param countries: MusicBrainz release countries
|
||||
:type countries: list or None
|
||||
"""
|
||||
artist = None
|
||||
sortName = None
|
||||
@@ -87,6 +89,7 @@ class DiscMetadata:
|
||||
|
||||
catalogNumber = None
|
||||
barcode = None
|
||||
countries = None
|
||||
|
||||
def __init__(self):
|
||||
self.tracks = []
|
||||
@@ -262,6 +265,13 @@ def _getMetadata(release, discid=None, country=None):
|
||||
discMD.url = 'https://musicbrainz.org/release/' + release['id']
|
||||
|
||||
discMD.barcode = release.get('barcode', None)
|
||||
mb_rel = release.get('release-event-list', None)
|
||||
# NOTE: check included as I don't know if this one is always available
|
||||
if mb_rel is not None:
|
||||
countries = [rel.get('area', {}).get('name', None) for rel in mb_rel]
|
||||
discMD.countries = list(filter(None, countries))
|
||||
else:
|
||||
discMD.countries = list(filter(None, [release.get('country', None)]))
|
||||
lil = release.get('label-info-list', [{}])
|
||||
if lil:
|
||||
discMD.catalogNumber = lil[0].get('catalog-number')
|
||||
|
||||
@@ -318,6 +318,8 @@ class Program:
|
||||
print('Type : %s' % metadata.releaseType)
|
||||
if metadata.barcode:
|
||||
print("Barcode : %s" % metadata.barcode)
|
||||
if metadata.countries:
|
||||
print("Country : %s" % ', '.join(metadata.countries))
|
||||
# TODO: Add test for non ASCII catalog numbers: see issue #215
|
||||
if metadata.catalogNumber:
|
||||
print("Cat no : %s" % metadata.catalogNumber)
|
||||
|
||||
Reference in New Issue
Block a user