headless_lms_server/controllers/cms/
exercise_services.rsuse models::exercise_services::ExerciseServiceIframeRenderingInfo;
use crate::{domain::models_requests, prelude::*};
#[instrument(skip(pool))]
async fn get_all_exercise_services(
pool: web::Data<PgPool>,
user: AuthUser,
) -> ControllerResult<web::Json<Vec<ExerciseServiceIframeRenderingInfo>>> {
let mut conn = pool.acquire().await?;
let token = authorize(&mut conn, Act::Teach, Some(user.id), Res::AnyCourse).await?;
let res = models::exercise_services::get_all_exercise_services_iframe_rendering_infos(
&mut conn,
models_requests::fetch_service_info,
)
.await?;
token.authorized_ok(web::Json(res))
}
pub fn _add_routes(cfg: &mut ServiceConfig) {
cfg.route("", web::get().to(get_all_exercise_services));
}