package service import ( "database/sql" "me-fit/template" "me-fit/types" "me-fit/utils" "net/http" "github.com/a-h/templ" ) func HandleIndexAnd404(db *sql.DB, serverSettings *types.ServerSettings) http.HandlerFunc { return func(w http.ResponseWriter, r *http.Request) { user := utils.GetUserFromSession(db, r) var comp templ.Component = nil userComp := UserInfoComp(user) if r.URL.Path != "/" { comp = template.Layout(template.NotFound(), userComp, serverSettings.Environment) w.WriteHeader(http.StatusNotFound) } else { comp = template.Layout(template.Index(), userComp, serverSettings.Environment) } err := comp.Render(r.Context(), w) if err != nil { utils.LogError("Failed to render index", err) http.Error(w, "Failed to render index", http.StatusInternalServerError) } } }