Fix #258: Implemented getCovertArt in Subsonic API to serve album covers

This commit is contained in:
Eliot Berriot 2018-05-31 23:46:15 +02:00
parent 218a92547e
commit 8d50743b3b
No known key found for this signature in database
GPG key ID: DD6965E2476E5C27
6 changed files with 77 additions and 4 deletions

View file

@ -57,8 +57,10 @@ class GetArtistSerializer(serializers.Serializer):
'name': album.title,
'artist': artist.name,
'created': album.creation_date,
'songCount': len(album.tracks.all())
'songCount': len(album.tracks.all()),
}
if album.cover:
album_data['coverArt'] = 'al-{}'.format(album.id)
if album.release_date:
album_data['year'] = album.release_date.year
payload['album'].append(album_data)
@ -81,6 +83,8 @@ def get_track_data(album, track, tf):
'artistId': album.artist.pk,
'type': 'music',
}
if track.album.cover:
data['coverArt'] = 'al-{}'.format(track.album.id)
if tf.bitrate:
data['bitrate'] = int(tf.bitrate/1000)
if tf.size:
@ -98,6 +102,9 @@ def get_album2_data(album):
'artist': album.artist.name,
'created': album.creation_date,
}
if album.cover:
payload['coverArt'] = 'al-{}'.format(album.id)
try:
payload['songCount'] = album._tracks_count
except AttributeError: