feat(webui): bootstrap session handling and login process

This commit is contained in:
Julien Dessaux 2025-01-06 00:41:32 +01:00
parent 63e2b1b09d
commit 6e069484cb
Signed by: adyxax
GPG key ID: F92E51B86E07177E
18 changed files with 447 additions and 1 deletions

22
pkg/webui/render.go Normal file
View file

@ -0,0 +1,22 @@
package webui
import (
"bytes"
"fmt"
"html/template"
"net/http"
)
func render(w http.ResponseWriter, t *template.Template, status int, data any) {
var buf bytes.Buffer
if err := t.ExecuteTemplate(&buf, "base.html", data); err != nil {
w.WriteHeader(http.StatusInternalServerError)
_, _ = w.Write([]byte(fmt.Sprintf(
"%s: failed to execute template: %+v",
http.StatusText(http.StatusInternalServerError),
err)))
} else {
w.WriteHeader(status)
_, _ = buf.WriteTo(w)
}
}