package handlers import ( "net/http" "git.eeqj.de/sneak/upaas/internal/models" "git.eeqj.de/sneak/upaas/templates" ) // HandleDashboard returns the dashboard handler. func (h *Handlers) HandleDashboard() http.HandlerFunc { tmpl := templates.GetParsed() return func(writer http.ResponseWriter, request *http.Request) { apps, fetchErr := models.AllApps(request.Context(), h.db) if fetchErr != nil { h.log.Error("failed to fetch apps", "error", fetchErr) http.Error(writer, "Internal Server Error", http.StatusInternalServerError) return } data := map[string]any{ "Apps": apps, } execErr := tmpl.ExecuteTemplate(writer, "dashboard.html", data) if execErr != nil { h.log.Error("template execution failed", "error", execErr) http.Error(writer, "Internal Server Error", http.StatusInternalServerError) } } }