- Fixed song add form (3 HTMX bugs: reset on typeahead, wrong query param, artist-only find-or-create) - Added Played checkbox to add form; inline edit (✎/Save/Cancel) for setlist rows - View fixes: date format, location name instead of ID in jam list, notes on location detail, song count column, location name links to detail - Title typeahead + cross-filtering (artist↔title filter each other) - Fixed datalist accumulation bug: HTMX 2.0 inherits hx-swap from parent; added explicit hx-swap="innerHTML" on both inputs - Setlist sort by id (ULID = insertion order); created rejected by PocketBase - Location delete guard: OnRecordDelete hook blocks if jams exist; FK enforcement is app-level not SQLite-level Loose ends to pick up: - Focus-after-add not user-confirmed yet (setTimeout approach) - jams.participants and setlist.position still in DB schema but unused in UI (optional migration to clean up) - Logout flow and dashboard ranking not browser-tested
32 lines
927 B
Text
32 lines
927 B
Text
package views
|
|
|
|
// Layout is the base HTML layout used by all authenticated pages.
|
|
templ Layout(title string) {
|
|
<!DOCTYPE html>
|
|
<html lang="en">
|
|
<head>
|
|
<meta charset="UTF-8"/>
|
|
<meta name="viewport" content="width=device-width, initial-scale=1"/>
|
|
<title>{ title } — JamTrack</title>
|
|
<link rel="stylesheet" href="/static/bulma.min.css"/>
|
|
<script src="/static/htmx.min.js"></script>
|
|
</head>
|
|
<body>
|
|
<nav class="navbar is-dark" role="navigation">
|
|
<div class="navbar-brand">
|
|
<a class="navbar-item has-text-weight-bold" href="/">JamTrack</a>
|
|
</div>
|
|
<div class="navbar-menu">
|
|
<div class="navbar-end">
|
|
<a class="navbar-item" href="/jams">Jams</a>
|
|
<a class="navbar-item" href="/locations">Locations</a>
|
|
<a class="navbar-item" href="/logout">Logout</a>
|
|
</div>
|
|
</div>
|
|
</nav>
|
|
<main class="container mt-5">
|
|
{ children... }
|
|
</main>
|
|
</body>
|
|
</html>
|
|
}
|