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