Auch verfügbar in: 🇩🇪 Deutsch

Admin Panel

Inhalt

🇩🇪 Deutsche Version


The admin panel provides full control over the instance — users, content, appearance, legal pages, and settings. It is accessible only to accounts with the Admin role.


Accessing Admin

Navigate to /admin while logged in as an Admin. If your account does not have the Admin role, you will see a 403 error. See Auth & Users — Admin Bootstrap for first-run setup.


Admin Sections

Section Path Description
Dashboard /admin Overview stats: total videos, users, storage used, recent activity
Users /admin/users Manage accounts — roles, bans, email lookup
Videos /admin/videos Full video list with bulk actions (hide, delete, change visibility)
Channels /admin/channels Channel directory management, feature/unfeature
Theme /admin/theme 6-layer live theme editor
Legal /admin/legal Edit Impressum, Datenschutz, AGB page content
Settings /admin/settings Instance name, registration toggle, upload limits
Reports /admin/reports User-submitted report queue

Theme Editor

The theme editor at /admin/theme provides a live, no-reload interface for customizing every visual property of the instance.

Quick workflow:

  1. Open /admin/theme
  2. Pick a built-in preset as your starting point (e.g. itsweber-dark)
  3. Use the colorpicker and sliders to adjust semantic tokens (brand color, background, text, radii)
  4. Switch to the Custom CSS tab for freeform overrides
  5. Rearrange homepage blocks in the Layout tab
  6. Click Save — changes are live for all visitors immediately

For full documentation of the 6-layer system, token mappings, and logo filter presets, see Theming System.


The instance's legal pages are editable from /admin/legal. Three pages are available:

Page Path Description
Impressum /impressum German legal imprint (required by law for DE instances)
Datenschutzerklarung /datenschutz Privacy policy / GDPR statement
AGB /agb Terms of service

Each template supports {{placeholders}} that are filled from instance settings at render time:

Placeholder Filled from
{{instance_name}} Settings → Instance Name
{{base_url}} BASE_URL environment variable
{{operator_name}} Settings → Operator Name
{{operator_email}} Settings → Operator Email
{{operator_address}} Settings → Operator Address

Templates are saved as Markdown and rendered to HTML. If a page is left blank, it shows a "Not yet configured" notice to visitors.


User Management

From /admin/users:

  • Search by email, username, or user ID
  • View profile — registration date, last login, role, video count
  • Change role — promote to Moderator, Creator, or Admin; demote back to Viewer
  • Ban / suspend — banned users cannot log in; their content remains visible (or can be bulk-hidden)
  • Delete account — permanently removes the user record; their videos can be reassigned or deleted

Role changes take effect on the user's next request (no forced logout required — the session re-checks role on each privileged action).


Moderation Workflow

Reports submitted by users appear in /admin/reports.

Report lifecycle:

  1. A viewer clicks "Report" on a video or comment
  2. They select a reason (spam, misinformation, NSFL, copyright, other) and optionally add a note
  3. The report appears in the queue with status open
  4. A Moderator or Admin reviews it and takes one of:
    • Hide — content is hidden from public view, creator is notified
    • Delete — content is permanently removed
    • Dismiss — report is closed, no action taken
  5. Each action is logged with a reason and the moderator's user ID
  6. Reporter receives a notification (if email is configured) when the report is resolved

Bulk actions are available for selecting multiple reports at once.


© Benjamin Weber · ITSWEBER — play.itsweber.net · GitHub