42 lines
1.1 KiB
Go
42 lines
1.1 KiB
Go
package handlers
|
|
|
|
import (
|
|
"html/template"
|
|
"log/slog"
|
|
"net/http"
|
|
|
|
"git.clustercockpit.org/moebiusband/go-http-skeleton/web"
|
|
)
|
|
|
|
type PageData struct {
|
|
Title string
|
|
}
|
|
|
|
func RootHandler() http.HandlerFunc {
|
|
return func(w http.ResponseWriter, r *http.Request) {
|
|
slog.Info("Render root handler")
|
|
tpl := template.Must(template.ParseFS(web.Templates, "templates/index.html", "templates/base.html"))
|
|
|
|
// basefile, err := web.Templates.ReadFile("templates/base.html")
|
|
// if err != nil {
|
|
// http.Error(w, "Internal Server Error", http.StatusInternalServerError)
|
|
// slog.Error("Error reading template", "error", err)
|
|
// return
|
|
// }
|
|
// file, err := web.Templates.ReadFile("templates/index.html")
|
|
// if err != nil {
|
|
// http.Error(w, "Internal Server Error", http.StatusInternalServerError)
|
|
// slog.Error("Error reading template", "error", err)
|
|
// return
|
|
// }
|
|
|
|
data := PageData{
|
|
Title: "DyeForYarn",
|
|
}
|
|
if err := tpl.ExecuteTemplate(w, "base", data); err != nil {
|
|
http.Error(w, "Internal Server Error", http.StatusInternalServerError)
|
|
slog.Error("Error executing template", "error", err)
|
|
}
|
|
}
|
|
}
|