Skip to content

Commit ff143df

Browse files
committed
make link handling more robust, add encoder to release info
1 parent ee71cfb commit ff143df

1 file changed

Lines changed: 22 additions & 4 deletions

File tree

pythonbits/bb.py

Lines changed: 22 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1003,6 +1003,7 @@ def _render_tags(self):
10031003
'bitrate_mode': getattr(tags.info, 'bitrate_mode', None),
10041004
'bits_per_sample': getattr(tags.info, 'bits_per_sample',
10051005
None),
1006+
'encoder_info': getattr(tags.info, 'encoder_info', None),
10061007
'encoder_settings': getattr(tags.info, 'encoder_settings',
10071008
None),
10081009
}
@@ -1018,7 +1019,8 @@ def _render_release(self):
10181019
'url-rels'])['release']
10191020
rg = mb.musicbrainzngs.get_release_group_by_id(
10201021
release['release-group']['id'],
1021-
includes=['tags', 'artist-credits'])['release-group']
1022+
includes=['tags', 'artist-credits', 'url-rels']
1023+
)['release-group']
10221024

10231025
else:
10241026
if self['title_arg']:
@@ -1095,19 +1097,32 @@ def _render_form_tags(self):
10951097
else:
10961098
return ",".join(tags)
10971099

1100+
def _render_links(self):
1101+
release, rg = self['release']
1102+
try:
1103+
return rg['url-relation-list']
1104+
except KeyError:
1105+
log.warning('No links found for release group, trying release.')
1106+
1107+
try:
1108+
return release['url-relation-list']
1109+
except KeyError:
1110+
log.warning('No links found for release.')
1111+
return []
1112+
10981113
def _render_section_information(self):
10991114
release, rg = self['release']
1100-
urls = release['url-relation-list']
1115+
urls = self['links']
1116+
mb_link = "https://musicbrainz.org/release-group/" + rg['id']
1117+
urls.insert(0, {'type': 'MusicBrainz', 'target': mb_link})
11011118
return dedent("""\
11021119
[b]Title[/b]: {title} ({links})
11031120
[b]Artist(s)[/b]: {artist}
1104-
[b]MusicBrainz[/b]: [url]{releasegroup}[/url]
11051121
[b]Type[/b]: {type}
11061122
[b]Original release[/b]: {firstrel}""").format(
11071123
title=rg['title'],
11081124
artist=rg['artist-credit-phrase'],
11091125
links=", ".join(bb.link(u['type'], u['target']) for u in urls),
1110-
releasegroup="https://musicbrainz.org/release-group/" + rg['id'],
11111126
type=rg['type'],
11121127
firstrel=rg['first-release-date'],
11131128
)
@@ -1146,6 +1161,9 @@ def _render_release_desc(self):
11461161
country=release['country'],
11471162
)
11481163

1164+
if tags['encoder_info']:
1165+
s += "\n[b]Encoder[/b]: " + tags['encoder_info']
1166+
11491167
if tags['encoder_settings']:
11501168
s += "\n[b]Encoder settings[/b]: " + tags['encoder_settings']
11511169

0 commit comments

Comments
 (0)