Associate user provided images with playlists (using EXTIMG or same named file), fixes #833

This commit is contained in:
emeric
2026-06-02 12:48:54 +02:00
parent 531c5ca24d
commit 64e183da38
22 changed files with 340 additions and 7 deletions
@@ -24,6 +24,7 @@
#include "core/ILogger.hpp"
#include "database/Session.hpp"
#include "database/objects/Artwork.hpp"
#include "database/objects/Directory.hpp"
#include "database/objects/MediaLibrary.hpp"
#include "database/objects/Track.hpp"
@@ -181,4 +182,19 @@ namespace lms::db
root["files"] = std::move(fileArray);
_entries = Wt::Json::serialize(root);
}
void PlayListFile::setCoverImageFile(const std::filesystem::path& file)
{
_coverImageFile = file;
}
void PlayListFile::updatePreferredArtwork(Session& session, PlayListFileId id, ArtworkId artworkId)
{
session.checkWriteTransaction();
if (artworkId.isValid())
utils::executeCommand(*session.getDboSession(), "UPDATE playlist_file SET preferred_artwork_id = ? WHERE id = ?", artworkId, id);
else
utils::executeCommand(*session.getDboSession(), "UPDATE playlist_file SET preferred_artwork_id = NULL WHERE id = ?", id);
}
} // namespace lms::db