Files
MyClub/internal/routes/event_routes.go
T
Tomáš Dvořák 12cba639b9 upload
2025-10-16 13:32:05 +02:00

30 lines
768 B
Go

package routes
import (
"fotbal-club/internal/controllers"
"fotbal-club/internal/middleware"
"github.com/gin-gonic/gin"
"gorm.io/gorm"
)
func RegisterEventRoutes(router *gin.RouterGroup, db *gorm.DB) {
eventController := controllers.EventController{DB: db}
events := router.Group("/events")
{
events.GET("", eventController.GetEvents)
events.GET("/upcoming", eventController.GetUpcomingEvents)
// Public single event endpoint
events.GET(":id", eventController.GetEventByID)
// Protected routes
authorized := events.Group("")
authorized.Use(middleware.JWTAuth(db))
{
authorized.POST("", eventController.CreateEvent)
authorized.PUT(":id", eventController.UpdateEvent)
authorized.DELETE(":id", eventController.DeleteEvent)
}
}
}