headless_lms_server/controllers/cms/
course_instances.rs1use crate::prelude::*;
4
5#[instrument(skip(pool))]
12async fn get_organization_id(
13    course_instance_id: web::Path<Uuid>,
14    pool: web::Data<PgPool>,
15    user: AuthUser,
16) -> ControllerResult<web::Json<Uuid>> {
17    let mut conn = pool.acquire().await?;
18    let token = authorize(
19        &mut conn,
20        Act::View,
21        Some(user.id),
22        Res::CourseInstance(*course_instance_id),
23    )
24    .await?;
25    let organization =
26        models::course_instances::get_organization_id(&mut conn, *course_instance_id).await?;
27    token.authorized_ok(web::Json(organization))
28}
29
30pub fn _add_routes(cfg: &mut ServiceConfig) {
38    cfg.route(
39        "/{course_instance_id}/organization",
40        web::get().to(get_organization_id),
41    );
42}