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.
21 lines
689 B
Go
21 lines
689 B
Go
package http
|
|
|
|
import "github.com/gofiber/fiber/v3"
|
|
|
|
// RegisterRoutes registers question bank routes.
|
|
func RegisterRoutes(app *fiber.App, h *Handler, adminMiddleware fiber.Handler) {
|
|
app.Post("/questions/random", h.PostRandomQuestion)
|
|
app.Get("/questions/:id", h.GetQuestionByID)
|
|
app.Post("/questions/:id/validate-answer", h.PostValidateAnswer)
|
|
|
|
admin := app.Group("/admin")
|
|
if adminMiddleware != nil {
|
|
admin.Use(adminMiddleware)
|
|
}
|
|
admin.Post("/questions", h.AdminCreateQuestion)
|
|
admin.Put("/questions/:id", h.AdminUpdateQuestion)
|
|
admin.Delete("/questions/:id", h.AdminDeleteQuestion)
|
|
admin.Get("/themes", h.AdminListThemes)
|
|
admin.Post("/questions/bulk", h.AdminBulkImport)
|
|
}
|