You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
43 lines
1.1 KiB
Go
43 lines
1.1 KiB
Go
package main
|
|
|
|
import (
|
|
"git.tad17.ru/itman/stem/stemdb"
|
|
"github.com/gofiber/fiber/v2"
|
|
"github.com/jmoiron/sqlx"
|
|
)
|
|
|
|
// The function `initRouter` initializes the router for a Fiber app, sets up static file serving, and
|
|
// defines routes for a test page and a list of books.
|
|
func initRouter(app *fiber.App) {
|
|
db := stemdb.Connect()
|
|
|
|
app.Static("/", "app/dist")
|
|
app.Static("/assets", "app/dist/assets", fiber.Static{
|
|
Compress: true,
|
|
})
|
|
app.Static("/fonts", "app/dist/fonts", fiber.Static{
|
|
Compress: true,
|
|
})
|
|
|
|
app.Get("/test", testPage)
|
|
app.Get("/books", list_books(db))
|
|
}
|
|
|
|
func testPage(c *fiber.Ctx) error {
|
|
return c.SendString("простая проверка")
|
|
}
|
|
|
|
// The function `list_books` returns a Fiber handler that lists all books based on the provided query
|
|
// parameters.
|
|
func list_books(db *sqlx.DB) fiber.Handler {
|
|
return func(c *fiber.Ctx) error {
|
|
deleted := c.Query("deleted")
|
|
selected := c.Query("selected")
|
|
books, err := stemdb.ListAllBooks(deleted, selected)
|
|
return c.JSON(&fiber.Map{
|
|
"success": err == nil,
|
|
"books": books,
|
|
})
|
|
}
|
|
}
|