|
|
|
@ -1,4 +1,4 @@ |
|
|
|
package admin |
|
|
|
package admin_table |
|
|
|
|
|
|
|
|
|
|
|
import ( |
|
|
|
import ( |
|
|
|
"maps" |
|
|
|
"maps" |
|
|
|
@ -7,11 +7,10 @@ import ( |
|
|
|
"github.com/gofiber/fiber/v2" |
|
|
|
"github.com/gofiber/fiber/v2" |
|
|
|
"MY/webapp/data" |
|
|
|
"MY/webapp/data" |
|
|
|
. "MY/webapp/common" |
|
|
|
. "MY/webapp/common" |
|
|
|
"MY/webapp/auth" |
|
|
|
|
|
|
|
) |
|
|
|
) |
|
|
|
|
|
|
|
|
|
|
|
func GetApiTableIndex(c *fiber.Ctx) error { |
|
|
|
func GetApiTableIndex(c *fiber.Ctx) error { |
|
|
|
_, err := auth.Check(c, true) |
|
|
|
_, err := AuthCheck(c, true) |
|
|
|
if err != nil { return c.Redirect("/") } |
|
|
|
if err != nil { return c.Redirect("/") } |
|
|
|
|
|
|
|
|
|
|
|
var tables []string |
|
|
|
var tables []string |
|
|
|
@ -24,7 +23,7 @@ func GetApiTableIndex(c *fiber.Ctx) error { |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
func GetApiSelectAll(c *fiber.Ctx) error { |
|
|
|
func GetApiSelectAll(c *fiber.Ctx) error { |
|
|
|
_, err := auth.Check(c, true) |
|
|
|
_, err := AuthCheck(c, true) |
|
|
|
if err != nil { return c.Redirect("/") } |
|
|
|
if err != nil { return c.Redirect("/") } |
|
|
|
|
|
|
|
|
|
|
|
table := c.Params("table") |
|
|
|
table := c.Params("table") |
|
|
|
@ -48,15 +47,8 @@ func GetApiSelectAll(c *fiber.Ctx) error { |
|
|
|
return c.JSON(result) |
|
|
|
return c.JSON(result) |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
func GetPageSelectAll(c *fiber.Ctx) error { |
|
|
|
|
|
|
|
_, err := auth.Check(c, true) |
|
|
|
|
|
|
|
if err != nil { return c.Redirect("/") } |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
return c.Render("admin/table/contents", fiber.Map{"Table": c.Params("table")}) |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
func GetApiSelectOne(c *fiber.Ctx) error { |
|
|
|
func GetApiSelectOne(c *fiber.Ctx) error { |
|
|
|
_, err := auth.Check(c, true) |
|
|
|
_, err := AuthCheck(c, true) |
|
|
|
if err != nil { return c.Redirect("/") } |
|
|
|
if err != nil { return c.Redirect("/") } |
|
|
|
|
|
|
|
|
|
|
|
table := c.Params("table") |
|
|
|
table := c.Params("table") |
|
|
|
@ -69,22 +61,8 @@ func GetApiSelectOne(c *fiber.Ctx) error { |
|
|
|
return c.JSON(result.Interface()) |
|
|
|
return c.JSON(result.Interface()) |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
func GetPageSelectOne(c *fiber.Ctx) error { |
|
|
|
|
|
|
|
_, err := auth.Check(c, true) |
|
|
|
|
|
|
|
if err != nil { return c.Redirect("/") } |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
table := c.Params("table") |
|
|
|
|
|
|
|
id, err := c.ParamsInt("id", -1) |
|
|
|
|
|
|
|
if err != nil || id < 0 { return IfErrNil(err, c) } |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
return c.Render("admin/table/view", fiber.Map{ |
|
|
|
|
|
|
|
"Table": table, |
|
|
|
|
|
|
|
"Id": id, |
|
|
|
|
|
|
|
}) |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
func PostApiUpdate(c *fiber.Ctx) error { |
|
|
|
func PostApiUpdate(c *fiber.Ctx) error { |
|
|
|
_, err := auth.Check(c, true) |
|
|
|
_, err := AuthCheck(c, true) |
|
|
|
if err != nil { return c.Redirect("/") } |
|
|
|
if err != nil { return c.Redirect("/") } |
|
|
|
|
|
|
|
|
|
|
|
table := c.Params("table") |
|
|
|
table := c.Params("table") |
|
|
|
@ -98,16 +76,9 @@ func PostApiUpdate(c *fiber.Ctx) error { |
|
|
|
return c.RedirectBack("/admin/table/", 303) |
|
|
|
return c.RedirectBack("/admin/table/", 303) |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
func GetPageInsert(c *fiber.Ctx) error { |
|
|
|
|
|
|
|
_, err := auth.Check(c, true) |
|
|
|
|
|
|
|
if err != nil { return c.Redirect("/") } |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
table := c.Params("table") |
|
|
|
|
|
|
|
return c.Render("admin/table/new", fiber.Map{ "Table": table }) |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
func GetApiInsert(c *fiber.Ctx) error { |
|
|
|
func GetApiInsert(c *fiber.Ctx) error { |
|
|
|
_, err := auth.Check(c, true) |
|
|
|
_, err := AuthCheck(c, true) |
|
|
|
if err != nil { return c.Redirect("/") } |
|
|
|
if err != nil { return c.Redirect("/") } |
|
|
|
|
|
|
|
|
|
|
|
table := c.Params("table") |
|
|
|
table := c.Params("table") |
|
|
|
@ -117,7 +88,7 @@ func GetApiInsert(c *fiber.Ctx) error { |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
func PostApiInsert(c *fiber.Ctx) error { |
|
|
|
func PostApiInsert(c *fiber.Ctx) error { |
|
|
|
_, err := auth.Check(c, true) |
|
|
|
_, err := AuthCheck(c, true) |
|
|
|
if err != nil { return c.Redirect("/") } |
|
|
|
if err != nil { return c.Redirect("/") } |
|
|
|
|
|
|
|
|
|
|
|
table := c.Params("table") |
|
|
|
table := c.Params("table") |
|
|
|
@ -127,13 +98,14 @@ func PostApiInsert(c *fiber.Ctx) error { |
|
|
|
if err != nil { return IfErrNil(err, c) } |
|
|
|
if err != nil { return IfErrNil(err, c) } |
|
|
|
|
|
|
|
|
|
|
|
id, _, err := Insert(table, obj.Elem()) |
|
|
|
id, _, err := Insert(table, obj.Elem()) |
|
|
|
|
|
|
|
|
|
|
|
if err != nil { return IfErrNil(err, c) } |
|
|
|
if err != nil { return IfErrNil(err, c) } |
|
|
|
|
|
|
|
|
|
|
|
return c.Redirect(fmt.Sprintf("/admin/table/%s/%d/", table, id), 303) |
|
|
|
return c.Redirect(fmt.Sprintf("/admin/table/%s/%d/", table, id), 303) |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
func DeleteApi(c *fiber.Ctx) error { |
|
|
|
func DeleteApi(c *fiber.Ctx) error { |
|
|
|
_, err := auth.Check(c, true) |
|
|
|
_, err := AuthCheck(c, true) |
|
|
|
if err != nil { return c.Redirect("/") } |
|
|
|
if err != nil { return c.Redirect("/") } |
|
|
|
|
|
|
|
|
|
|
|
table := c.Params("table") |
|
|
|
table := c.Params("table") |
|
|
|
@ -147,18 +119,7 @@ func DeleteApi(c *fiber.Ctx) error { |
|
|
|
return c.JSON(fiber.Map{}) |
|
|
|
return c.JSON(fiber.Map{}) |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
func GetPageAdminIndex(c *fiber.Ctx) error { |
|
|
|
func SetupApi(app *fiber.App) { |
|
|
|
_, err := auth.Check(c, true) |
|
|
|
|
|
|
|
if err != nil { return c.Redirect("/") } |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
return c.Render("admin/table/index", fiber.Map{}) |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
func Setup(app *fiber.App) { |
|
|
|
|
|
|
|
app.Get("/admin/table/", GetPageAdminIndex) |
|
|
|
|
|
|
|
app.Get("/admin/table/:table/", GetPageSelectAll) |
|
|
|
|
|
|
|
app.Get("/admin/table/new/:table/", GetPageInsert) |
|
|
|
|
|
|
|
app.Get("/admin/table/:table/:id/", GetPageSelectOne) |
|
|
|
|
|
|
|
app.Get("/api/admin/table", GetApiTableIndex) |
|
|
|
app.Get("/api/admin/table", GetApiTableIndex) |
|
|
|
app.Get("/api/admin/table/:table", GetApiSelectAll) |
|
|
|
app.Get("/api/admin/table/:table", GetApiSelectAll) |
|
|
|
app.Get("/api/admin/table/new/:table", GetApiInsert) |
|
|
|
app.Get("/api/admin/table/new/:table", GetApiInsert) |