package main import "github.com/go-chi/chi/v5" func (a *app) registerLiveCourseRoutes(r chi.Router) { r.Route("/live-courses", func(r chi.Router) { r.Use(a.liveCourseManagerMiddleware) r.Get("/", a.listLiveCourses) r.Post("/", a.createLiveCourse) r.Get("/{id}", a.getLiveCourse) r.Patch("/{id}", a.patchLiveCourse) r.Delete("/{id}", a.deleteLiveCourse) r.Get("/{id}/modules", a.listLiveCourseModules) r.Post("/{id}/modules", a.createLiveCourseModule) r.Patch("/{id}/modules/{moduleId}", a.patchLiveCourseModule) r.Delete("/{id}/modules/{moduleId}", a.deleteLiveCourseModule) r.Get("/{id}/modules/{moduleId}/lessons", a.listLiveCourseLessons) r.Post("/{id}/modules/{moduleId}/lessons", a.createLiveCourseLesson) r.Patch("/{id}/modules/{moduleId}/lessons/{lessonId}", a.patchLiveCourseLesson) r.Delete("/{id}/modules/{moduleId}/lessons/{lessonId}", a.deleteLiveCourseLesson) r.Get("/{id}/cohorts", a.listLiveCourseCohorts) r.Post("/{id}/cohorts", a.createLiveCourseCohort) r.Get("/{id}/cohorts/{cohortId}", a.getLiveCourseCohort) r.Patch("/{id}/cohorts/{cohortId}", a.patchLiveCourseCohort) r.Delete("/{id}/cohorts/{cohortId}", a.deleteLiveCourseCohort) r.Get("/{id}/cohorts/{cohortId}/sessions", a.listLiveCourseSessions) r.Post("/{id}/cohorts/{cohortId}/sessions", a.createLiveCourseSession) r.Get("/{id}/cohorts/{cohortId}/sessions/{sessionId}", a.getLiveCourseSession) r.Patch("/{id}/cohorts/{cohortId}/sessions/{sessionId}", a.patchLiveCourseSession) r.Delete("/{id}/cohorts/{cohortId}/sessions/{sessionId}", a.deleteLiveCourseSession) r.Get("/{id}/cohorts/{cohortId}/enrollments", a.listLiveCourseEnrollments) r.Post("/{id}/cohorts/{cohortId}/enrollments", a.createLiveCourseEnrollment) r.Patch("/{id}/cohorts/{cohortId}/enrollments/{enrollmentId}", a.patchLiveCourseEnrollment) r.Get("/{id}/cohorts/{cohortId}/sessions/{sessionId}/attendance", a.listLiveCourseAttendance) r.Post("/{id}/cohorts/{cohortId}/sessions/{sessionId}/attendance", a.createLiveCourseAttendance) r.Patch("/{id}/cohorts/{cohortId}/sessions/{sessionId}/attendance/{attendanceId}", a.patchLiveCourseAttendance) }) }