From c61df17dd5368573ef5a076f28432da1983d9697 Mon Sep 17 00:00:00 2001 From: Keith Edmunds Date: Mon, 14 Apr 2025 20:09:14 +0100 Subject: [PATCH] Mark playlist rows played in db --- app/ds.py | 11 +++++++++++ app/playlistrow.py | 4 ++++ 2 files changed, 15 insertions(+) diff --git a/app/ds.py b/app/ds.py index 32ba067..a626c4a 100644 --- a/app/ds.py +++ b/app/ds.py @@ -1034,6 +1034,17 @@ def playlistrow_update_note(playlistrow_id: int, note: str) -> PlaylistRowDTO: return new_plr + +def playlistrow_played(playlistrow_id: int, status: bool) -> None: + """Update played status of row""" + + with db.Session() as session: + session.execute( + update(PlaylistRows).where(PlaylistRows.id == playlistrow_id).values(played=status) + ) + session.commit() + + # Playdates # @log_call def playdates_get_last(track_id: int, limit: int = 5) -> str: diff --git a/app/playlistrow.py b/app/playlistrow.py index 15ffd03..18399e0 100644 --- a/app/playlistrow.py +++ b/app/playlistrow.py @@ -166,6 +166,10 @@ class PlaylistRow: def played(self): return self.dto.played + @played.setter + def played(self, value: bool) -> None: + ds.playlistrow_played(self.playlistrow_id, value) + @property def playlist_id(self): return self.dto.playlist_id