feat(subsonic): set sortName for OS AlbumList (#3776)

* feat(subsonic): Set SortName for OS AlbumList, test to JSON/XML

* albumlist2, star2 updated properly

* fix(subsonic): add sort or order name based on config

Signed-off-by: Deluan <deluan@navidrome.org>

---------

Signed-off-by: Deluan <deluan@navidrome.org>
Co-authored-by: Deluan <deluan@navidrome.org>
This commit is contained in:
Kendall Garner
2025-03-06 03:52:15 +00:00
committed by GitHub
parent 8732fc7226
commit 5869f7caaf
6 changed files with 145 additions and 6 deletions
@@ -0,0 +1,62 @@
{
"status": "ok",
"version": "1.8.0",
"type": "navidrome",
"serverVersion": "v0.0.0",
"openSubsonic": true,
"albumList": {
"album": [
{
"id": "1",
"isDir": false,
"isVideo": false,
"bpm": 0,
"comment": "",
"sortName": "sort name",
"mediaType": "album",
"musicBrainzId": "00000000-0000-0000-0000-000000000000",
"genres": [
{
"name": "Genre 1"
},
{
"name": "Genre 2"
}
],
"replayGain": {},
"channelCount": 0,
"samplingRate": 0,
"bitDepth": 0,
"moods": [
"mood1",
"mood2"
],
"artists": [
{
"id": "artist-1",
"name": "Artist 1"
},
{
"id": "artist-2",
"name": "Artist 2"
}
],
"displayArtist": "Display artist",
"albumArtists": [
{
"id": "album-artist-1",
"name": "Artist 1"
},
{
"id": "album-artist-2",
"name": "Artist 2"
}
],
"displayAlbumArtist": "Display album artist",
"contributors": [],
"displayComposer": "",
"explicitStatus": "explicit"
}
]
}
}
@@ -0,0 +1,14 @@
<subsonic-response xmlns="http://subsonic.org/restapi" status="ok" version="1.8.0" type="navidrome" serverVersion="v0.0.0" openSubsonic="true">
<albumList>
<album id="1" isDir="false" isVideo="false" sortName="sort name" mediaType="album" musicBrainzId="00000000-0000-0000-0000-000000000000" displayArtist="Display artist" displayAlbumArtist="Display album artist" explicitStatus="explicit">
<genres name="Genre 1"></genres>
<genres name="Genre 2"></genres>
<moods>mood1</moods>
<moods>mood2</moods>
<artists id="artist-1" name="Artist 1"></artists>
<artists id="artist-2" name="Artist 2"></artists>
<albumArtists id="album-artist-1" name="Artist 1"></albumArtists>
<albumArtists id="album-artist-2" name="Artist 2"></albumArtists>
</album>
</albumList>
</subsonic-response>