Phase 2: Create admin UI for system configuration - Add new /admin/settings route in frontend.go (protected by AdminMiddleware) - Create admin_settings.templ with HTMX-powered form for base URL - Add Settings link to admin sidebar navigation - Admin settings form submits via HTMX to PUT /api/system/config - Success message displays after save with updated form The settings page allows admins to configure the base URL used for device sync URLs, OPDS endpoints, and API access.
23 lines
940 B
Templ
23 lines
940 B
Templ
package templates
|
|
|
|
templ AdminSidebar(user User, currentPath string) {
|
|
<aside class="w-64 border-r" style="background-color: var(--bg-secondary); border-color: var(--border)">
|
|
<div class="p-6">
|
|
<h2 class="text-lg font-semibold mb-6" style="color: var(--text-primary)">Admin Panel</h2>
|
|
<nav class="space-y-2">
|
|
<a href="/admin" class={activeClass(currentPath, "/admin")} style="color: var(--text-primary)">
|
|
🏠 Dashboard
|
|
</a>
|
|
<a href="/admin/users" class={activeClass(currentPath, "/admin/users")} style="color: var(--text-primary)">
|
|
👤 User Administration
|
|
</a>
|
|
<a href="/admin/library" class={activeClass(currentPath, "/admin/library")} style="color: var(--text-primary)">
|
|
📚 Library Management
|
|
</a>
|
|
<a href="/admin/settings" class={activeClass(currentPath, "/admin/settings")} style="color: var(--text-primary)">
|
|
⚙️ System Settings
|
|
</a>
|
|
</nav>
|
|
</div>
|
|
</aside>
|
|
} |