Subsonic API: added sortName extra field for artists

This commit is contained in:
emeric
2023-10-02 22:41:07 +02:00
parent d7bd3ca195
commit b1c6cf8d7d
3 changed files with 6 additions and 5 deletions
+2 -2
View File
@@ -93,12 +93,12 @@ namespace API::Subsonic
if (const Wt::WDateTime dateTime{ Service<Scrobbling::IScrobblingService>::get()->getStarredDateTime(user->getId(), release->getId()) }; dateTime.isValid()) if (const Wt::WDateTime dateTime{ Service<Scrobbling::IScrobblingService>::get()->getStarredDateTime(user->getId(), release->getId()) }; dateTime.isValid())
albumNode.setAttribute("starred", StringUtils::toISO8601String(dateTime)); // TODO report correct date/time albumNode.setAttribute("starred", StringUtils::toISO8601String(dateTime)); // TODO report correct date/time
// OpenSubsonic specific field // OpenSubsonic specific fields (must always be set)
{ {
std::optional<UUID> mbid {release->getMBID()}; std::optional<UUID> mbid {release->getMBID()};
albumNode.setAttribute("musicBrainzId", mbid ? mbid->getAsString() : ""); albumNode.setAttribute("musicBrainzId", mbid ? mbid->getAsString() : "");
} }
return albumNode; return albumNode;
} }
} }
+3 -2
View File
@@ -68,12 +68,13 @@ namespace API::Subsonic
if (const Wt::WDateTime dateTime{ Service<Scrobbling::IScrobblingService>::get()->getStarredDateTime(user->getId(), artist->getId()) }; dateTime.isValid()) if (const Wt::WDateTime dateTime{ Service<Scrobbling::IScrobblingService>::get()->getStarredDateTime(user->getId(), artist->getId()) }; dateTime.isValid())
artistNode.setAttribute("starred", StringUtils::toISO8601String(dateTime)); artistNode.setAttribute("starred", StringUtils::toISO8601String(dateTime));
// OpenSubsonic specific field // OpenSubsonic specific fields (must always be set)
{ {
std::optional<UUID> mbid {artist->getMBID()}; std::optional<UUID> mbid {artist->getMBID()};
artistNode.setAttribute("musicBrainzId", mbid ? mbid->getAsString() : ""); artistNode.setAttribute("musicBrainzId", mbid ? mbid->getAsString() : "");
} }
artistNode.setAttribute("sortName", artist->getSortName());
return artistNode; return artistNode;
} }
} }
+1 -1
View File
@@ -153,7 +153,7 @@ namespace API::Subsonic
trackResponse.setAttribute("genre", clusters.front().front()->getName()); trackResponse.setAttribute("genre", clusters.front().front()->getName());
} }
// OpenSubsonic specific field // OpenSubsonic specific fields (must always be set)
{ {
std::optional<UUID> mbid {track->getTrackMBID()}; std::optional<UUID> mbid {track->getTrackMBID()};
trackResponse.setAttribute("musicBrainzId", mbid ? mbid->getAsString() : ""); trackResponse.setAttribute("musicBrainzId", mbid ? mbid->getAsString() : "");