package main import ( "net/http" "time" "riedstra.dev/mitch/go-website/page" ) func (a *App) Err5xx(w http.ResponseWriter, r *http.Request, statusCode int, title, desc string) { page.Render5xx(w, r, map[string]interface{}{ "Error": title, "Description": desc, }, statusCode) } func (a *App) Err500Default(w http.ResponseWriter, r *http.Request) { a.Err5xx(w, r, http.StatusInternalServerError, "Internal server error", "Internal server error.") } func (a *App) LogoutHandler() http.Handler { return http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) { http.SetCookie(w, &http.Cookie{ Name: "Auth", HttpOnly: a.auth.HTTPOnly, SameSite: a.auth.SameSiteStrict, Secure: a.auth.Secure, Value: "logout", Expires: time.Now().Add(time.Second), }) http.Redirect(w, r, "/", http.StatusFound) }) }