39 lines
1.3 KiB
Go
39 lines
1.3 KiB
Go
package routes
|
|
|
|
import (
|
|
admin "synlotto-website/internal/handlers/admin"
|
|
|
|
"synlotto-website/internal/http/middleware"
|
|
"synlotto-website/internal/platform/bootstrap"
|
|
|
|
"github.com/gin-gonic/gin"
|
|
)
|
|
|
|
func RegisterAdminRoutes(app *bootstrap.App) {
|
|
r := app.Router
|
|
|
|
adminGroup := r.Group("/admin")
|
|
adminGroup.Use(middleware.AuthMiddleware(), middleware.RequireAuth())
|
|
|
|
// Logs
|
|
adminGroup.GET("/access", gin.WrapH(admin.AdminAccessLogHandler(app.DB)))
|
|
adminGroup.GET("/audit", gin.WrapH(admin.AuditLogHandler(app.DB)))
|
|
|
|
// Dashboard
|
|
//adminGroup.GET("/dashboard", gin.WrapH(admin.AdminDashboardHandler(app.DB)))
|
|
|
|
// Triggers
|
|
adminGroup.GET("/triggers", gin.WrapH(admin.AdminTriggersHandler(app.DB)))
|
|
|
|
// Draw management
|
|
adminGroup.GET("/draws", gin.WrapH(admin.ListDrawsHandler(app.DB)))
|
|
// adminGroup.GET("/draws/new", gin.WrapH(admin.RenderNewDrawForm(app.DB))) // if/when you re-enable AdminOnly
|
|
// adminGroup.POST("/draws", gin.WrapH(admin.CreateDrawHandler(app.DB))) // example submit route
|
|
adminGroup.POST("/draws/modify", gin.WrapH(admin.ModifyDrawHandler(app.DB)))
|
|
adminGroup.POST("/draws/delete", gin.WrapH(admin.DeleteDrawHandler(app.DB)))
|
|
|
|
// Prize management
|
|
adminGroup.POST("/draws/prizes/add", gin.WrapH(admin.AddPrizesHandler(app.DB)))
|
|
adminGroup.POST("/draws/prizes/modify", gin.WrapH(admin.ModifyPrizesHandler(app.DB)))
|
|
}
|