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