diff --git a/admin/handlers.go b/admin/handlers.go index 2898b64..6ef5b08 100644 --- a/admin/handlers.go +++ b/admin/handlers.go @@ -1,13 +1,37 @@ package admin import ( + "maps" + "fmt" "github.com/gofiber/fiber/v2" + "zedshaw.games/webapp/data" + "zedshaw.games/webapp/api" ) func GetPageIndex(c *fiber.Ctx) error { - return c.Render("admin/index", fiber.Map{}) + var tables []string + + for k := range maps.Keys(data.Models()) { + tables = append(tables, k) + } + + return c.Render("admin/index", fiber.Map{"Tables": tables}) +} + +func GetPageTableIndex(c *fiber.Ctx) error { + table := c.Params("table") + if table == "" { return c.Redirect("/admin/") } + + fmt.Println("table: ", table) + type_is := data.Models()[table] + + result, err := SelectTable(table, type_is, 20, 0); + if err != nil { return api.IfErrNil(err, c) } + + return c.Render("admin/table/index", fiber.Map{"Table": result}) } func Setup(app *fiber.App) { app.Get("/admin/", GetPageIndex); + app.Get("/admin/table/:table/", GetPageTableIndex); } diff --git a/views/admin/index.html b/views/admin/index.html index 5490645..55b97ce 100644 --- a/views/admin/index.html +++ b/views/admin/index.html @@ -1 +1,13 @@ -
ID |
---|
{{ $row }} | +