Playlists #20

Open
opened 2026-05-17 20:18:54 +00:00 by firepear · 5 comments
Owner

We want to have them. A full implementation won't be simple.

We want to have them. A full implementation won't be simple.
Author
Owner

https://developer.mozilla.org/en-US/docs/Web/API/Node/replaceChild

Might be useful if the approach taken is to swap out the track list with an edit interface (and/or the media catalog)

https://developer.mozilla.org/en-US/docs/Web/API/Node/replaceChild Might be useful if the approach taken is to swap out the track list with an edit interface (and/or the media catalog)
Author
Owner

For the playlists themselves: a simple struct {"name": NAME, "ids": [IDS]} where IDS is a list of rowids.

Adding is simple, and can be borrowed from spotify:

  • An add button, which when clicked pops up a list of extant playlists and "New"
For the playlists themselves: a simple struct `{"name": NAME, "ids": [IDS]}` where `IDS` is a list of `rowid`s. Adding is simple, and can be borrowed from spotify: - An add button, which when clicked pops up a list of extant playlists and "New"
Author
Owner

allow playlists to be public or not?

allow playlists to be public or not?
Author
Owner

instead of a dedicated edit interface, add a flag to a queryset indicating that it is/not a playlist.

when it is, add a td with up, down, remove buttons

the remainder of logic is server-side

EDIT: also, if queue is a playlist, its name can be displayed in the trackinfo box, with an edit control. that pops up a dialog that allows renaming, setting public status, and deleting. no dedicated UI needed.

instead of a dedicated edit interface, add a flag to a queryset indicating that it is/not a playlist. when it is, add a td with up, down, remove buttons the remainder of logic is server-side EDIT: also, if queue is a playlist, its name can be displayed in the trackinfo box, with an edit control. that pops up a dialog that allows renaming, setting public status, and deleting. no dedicated UI needed.
firepear added this to the v0.29 milestone 2026-06-07 18:16:59 +00:00
firepear modified the milestone from v0.29 to v0.30 2026-06-08 03:29:25 +00:00
Author
Owner

I still like the plan in the last comment, but one thing I hadn't thought about in that moment is that it means an edit to a playlist becomes a refresh of that playlist. none of the edits actually happen locally, but are treated as the modification and redelivery of a query.

I still like the plan in the last comment, but one thing I hadn't thought about in that moment is that it means an edit to a playlist becomes a refresh of that playlist. none of the edits actually happen locally, but are treated as the modification and redelivery of a query.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
firepear/thrasher-media-service#20
No description provided.