- 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
22 lines
570 B
Go
22 lines
570 B
Go
// Package web contains HTTP handlers, middleware, and embedded static assets.
|
|
package web
|
|
|
|
import (
|
|
"embed"
|
|
"io/fs"
|
|
"net/http"
|
|
|
|
"github.com/pocketbase/pocketbase/core"
|
|
)
|
|
|
|
//go:embed static
|
|
var staticFiles embed.FS
|
|
|
|
// RegisterStatic registers the /static/* route serving embedded Bulma and htmx assets.
|
|
func RegisterStatic(e *core.ServeEvent) {
|
|
sub, _ := fs.Sub(staticFiles, "static")
|
|
e.Router.GET("/static/{path...}", func(re *core.RequestEvent) error {
|
|
http.StripPrefix("/static", http.FileServerFS(sub)).ServeHTTP(re.Response, re.Request)
|
|
return nil
|
|
})
|
|
}
|