headless_lms_server/controllers/cms/
mod.rs1pub mod ai_suggestions;
9pub mod chapters;
10pub mod code_giveaways;
11pub mod course_instances;
12pub mod courses;
13pub mod email_templates;
14pub mod exams;
15pub mod exercise_services;
16pub mod gutenberg;
17pub mod migration;
18pub mod organizations;
19pub mod pages;
20pub mod repository_exercises;
21
22use actix_web::web::{self, ServiceConfig};
23use utoipa::OpenApi;
24
25#[derive(OpenApi)]
26#[openapi(
27 nest(
28 (path = "/ai-suggestions", api = ai_suggestions::CmsAiSuggestionsApiDoc),
29 (path = "/chapters", api = chapters::CmsChaptersApiDoc),
30 (path = "/course-instances", api = course_instances::CmsCourseInstancesApiDoc),
31 (path = "/courses", api = courses::CmsCoursesApiDoc),
32 (path = "/code-giveaways", api = code_giveaways::CmsCodeGiveawaysApiDoc),
33 (path = "/email-templates", api = email_templates::CmsEmailTemplatesApiDoc),
34 (path = "/exams", api = exams::CmsExamsApiDoc),
35 (path = "/exercise-services", api = exercise_services::CmsExerciseServicesApiDoc),
36 (path = "/pages", api = pages::CmsPagesApiDoc),
37 (path = "/repository-exercises", api = repository_exercises::CmsRepositoryExercisesApiDoc)
38 )
39)]
40pub struct CmsRoutesApiDoc;
41
42pub fn _add_routes(cfg: &mut ServiceConfig) {
44 cfg.service(web::scope("/pages").configure(pages::_add_routes))
45 .service(web::scope("/chapters").configure(chapters::_add_routes))
46 .service(web::scope("/course-instances").configure(course_instances::_add_routes))
47 .service(web::scope("/email-templates").configure(email_templates::_add_routes))
48 .service(web::scope("/gutenberg").configure(gutenberg::_add_routes))
49 .service(web::scope("/organizations").configure(organizations::_add_routes))
50 .service(web::scope("/courses").configure(courses::_add_routes))
51 .service(web::scope("/exams").configure(exams::_add_routes))
52 .service(web::scope("/exercise-services").configure(exercise_services::_add_routes))
53 .service(web::scope("/code-giveaways").configure(code_giveaways::_add_routes))
54 .service(web::scope("/repository-exercises").configure(repository_exercises::_add_routes))
55 .service(web::scope("/migration").configure(migration::_add_routes))
56 .service(web::scope("/ai-suggestions").configure(ai_suggestions::_add_routes));
57}