Files
Gardomatic/internal/web/handlers.go
T
kleiax 904d14b64c
CI / test (push) Canceled after 0s
Initial commit
2026-09-12 22:22:17 +02:00

39 lines
988 B
Go

package web
import (
"net/http"
"time"
"gardomatic.kleiax.de/lib/client"
)
func (app *application) home(w http.ResponseWriter, r *http.Request) {
if app.isAuthenticated(r) {
http.Redirect(w, r, webPath("gardens"), http.StatusSeeOther)
return
}
data := app.newTemplateData(r)
app.render(w, http.StatusOK, "home.tmpl", data)
}
func ping(w http.ResponseWriter, _ *http.Request) {
_, _ = w.Write([]byte("OK"))
}
func (app *application) healthcheck(w http.ResponseWriter, r *http.Request) {
data := app.newTemplateData(r)
data.SystemTime = time.Now()
data.WebVersion = version
health, _, err := client.FromContext(r.Context()).Healthcheck(r.Context())
if err != nil {
data.HealthError = "Die API ist derzeit nicht erreichbar."
} else {
data.Health = &health
}
app.render(w, http.StatusOK, "healthcheck.tmpl", data)
}
func (app *application) privacy(w http.ResponseWriter, r *http.Request) {
app.render(w, http.StatusOK, "privacy.tmpl", app.newTemplateData(r))
}