Library/routes/routes.go

50 lines
1.3 KiB
Go

package routes
import (
"github.com/labstack/echo"
"github.com/labstack/echo/middleware"
"net/http"
)
func NewEcho() *echo.Echo {
e := echo.New()
//Logger
e.Use(middleware.LoggerWithConfig(middleware.LoggerConfig{
Format: "${time_rfc3339}: ${remote_ip} ${method} ${status} ${uri} - ${user_agent}\n",
}))
//Static Content
e.Static("/assets", "assets")
return e
}
func RegisterRoutes(e *echo.Echo) {
g := e.Group("/api")
g.GET("/list", func(c echo.Context) error {
return c.String(http.StatusOK, "list")
})
/*
Alles nur mit Api machen, davor dann einen onepager mit vue.js.
Routes:
/ - entweder übersicht anzeigen (wenn der nutzer eingeloggt ist) oder auf /login weiterleiten
/login - Einloggen
/logout - ausloggen
/book/:id/edit - Buch bearbeiten (inkl mengen)
/book/:id/delete - Buch löschen
/author/:id/edit - Autor bearbeiten
/author/:id/delete - Autor löschen (auch mit allem in books_author)
/publisher/:id/edit - Verlag bearbeiten
/publisher:/id/delete - Verlag löschen (bei büchern Vertrag auf 0 setzen)
/settings - Nutzereinstellungen (Passwort, name etc)
/user - Nutzer anzeigen
/user/new - neue Nutzer anlegen
/user/:id/delete - nutzer löschen
/user/:id/edit - nutzer bearbeiten
*/
}