Skip to content

Add UI for playlist management#1579

Open
owi92 wants to merge 7 commits intoopencast:developfrom
owi92:playlists
Open

Add UI for playlist management#1579
owi92 wants to merge 7 commits intoopencast:developfrom
owi92:playlists

Conversation

@owi92
Copy link
Copy Markdown
Contributor

@owi92 owi92 commented Apr 14, 2026

Originally #1537

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.

Needs opencast/opencast#7496 to work properly.

Closes #1399
Closes opencast/opencast#6909

owi92 added 7 commits April 14, 2026 17:31
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 Apr 14, 2026
@github-actions
Copy link
Copy Markdown
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/admin-interface:pr-1579

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/admin-interface:pr-1579

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
Copy Markdown
Contributor

This pull request is deployed at test.admin-interface.opencast.org/1579/2026-04-14_16-24-02/ .
It might take a few minutes for it to become available.

@owi92 owi92 requested a review from Arnei April 16, 2026 11:58
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