Skip to content

Add UI for playlist management#1537

Open
owi92 wants to merge 7 commits intoopencast:developfrom
owi92:playlist-ui
Open

Add UI for playlist management#1537
owi92 wants to merge 7 commits intoopencast:developfrom
owi92:playlist-ui

Conversation

@owi92
Copy link
Contributor

@owi92 owi92 commented Mar 22, 2026

This adds the necessary interface elements that are needed to use playlists in the admin interface.
Structure and UI design follows what is already present for events and series, and reuses components whenever possible.

A notable addition is the modal tab for entries management, where users can add, reorder, and remove playlist entries.

Bildschirmfoto 2026-03-22 um 18 06 42 (Note that this is using the green icon for the "details view" button, but [this comment](https://github.com//issues/1399#issuecomment-3273881024) suggests that it should be blue. I don't mind making it blue, but then the one in the series table should probably be blue as well. Edit: why isn't that markdown link working) Bildschirmfoto 2026-03-22 um 18 07 04 Bildschirmfoto 2026-03-22 um 18 03 02

This needs opencast/opencast#7496 to work properly.

I realize that the timing on this is a little unfortunate because of https://github.com/orgs/opencast/discussions/7493,
but I've been working on this for a while and wanted to get it out before the next dev meeting.

Closes #1399
Closes opencast/opencast#6909

owi92 added 7 commits March 20, 2026 15:08
This adds the titular table and everything necessary to
show all playlists.

On its own not of much use, apart from looking at the playlist
names.

Creating, editing, deleting etc. will be added in a later
commit.

Needs https://github.com/owi92/opencast/tree/playlist-admin-ui-api to work.
Features metadata and ACL display and editing.
Todo: Figure out UI/UX for adding and removing entries.
I think this project should really get away from scss or at
least reconsider and rewrite some styles.
Why are there `first-child` selectors with `float: right`?
That means you have to write column layouts all backwards,
which is unintuitive and confusing.

Anyway. This just removes some styles/rules from the `SaveEditFooter`
component that would not only hide but completely remove certain buttons
from the dom while they're disabled.
That can lead to layout shifts and confused margins whenever they
do pop in.
So with this change, they are now always visible and simply use disabled
styles and behaviour when appropriate.
Like most of these playlist related additions,
this is heavily based on the structure and
components that are used for events and series.
I'm sure there is a lot of potential for
deduplication, but I don't want to touch too many
non-playlist files. I think that should be done in
a dedicated PR.
This let users add and removes entries to and from their
playlists using a GUI.
The UI reuses the drag n drop approach that is present
for editing table view columns.
Entries are shown with some additional metadata, so they
are easier to tell apart if some names are repeated (hopefully).
Events don't remove themselves automatically from
playlists when they are deleted. Previously I would
just show their UUID, but that isn't very helpful.
This will now show an "unknown entry" note, which is
slightly better I suppose.
@owi92 owi92 added the type:enhancement New feature or request label Mar 22, 2026
@github-actions
Copy link
Contributor

Use docker or podman to test this pull request locally.

Run test server using develop.opencast.org as backend:

podman run --rm -it -p 127.0.0.1:3000:3000 ghcr.io/opencast/opencast-admin-interface:pr-1537

Specify a different backend like stable.opencast.org:

podman run --rm -it -p 127.0.0.1:3000:3000 -e PROXY_TARGET=https://stable.opencast.org ghcr.io/opencast/opencast-admin-interface:pr-1537

It may take a few seconds for the interface to spin up.
It will then be available at http://127.0.0.1:3000.
For more options you can pass on to the proxy, take a look at the README.md.

@github-actions
Copy link
Contributor

This pull request is deployed at test.admin-interface.opencast.org/1537/2026-03-22_16-57-37/ .
It might take a few minutes for it to become available.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

type:enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Add UI for managing playlists Integration of Playlists into Admin UI

1 participant