Added the playlist generator
This commit is contained in:
@@ -22,6 +22,8 @@ pub fn configure(cfg: &mut web::ServiceConfig) {
|
||||
.service(web::resource("/watchlist/{id}").route(web::delete().to(remove_watchlist)))
|
||||
.service(web::resource("/monitor/check").route(web::post().to(trigger_monitor_check)))
|
||||
.service(web::resource("/monitor/status").route(web::get().to(get_monitor_status)))
|
||||
.service(web::resource("/scheduler/skip-pipeline").route(web::post().to(skip_pipeline)))
|
||||
.service(web::resource("/scheduler/skip-monitor").route(web::post().to(skip_monitor)))
|
||||
.service(
|
||||
web::resource("/config")
|
||||
.route(web::get().to(get_config))
|
||||
@@ -303,3 +305,25 @@ async fn save_config(
|
||||
tracing::info!("config updated via API");
|
||||
Ok(HttpResponse::Ok().json(&new_config))
|
||||
}
|
||||
|
||||
async fn skip_pipeline(
|
||||
state: web::Data<AppState>,
|
||||
session: Session,
|
||||
) -> Result<HttpResponse, ApiError> {
|
||||
auth::require_admin(&session)?;
|
||||
let mut sched = state.scheduler.lock().await;
|
||||
sched.skip_pipeline = true;
|
||||
sched.next_pipeline = None;
|
||||
Ok(HttpResponse::Ok().json(serde_json::json!({"status": "skipped"})))
|
||||
}
|
||||
|
||||
async fn skip_monitor(
|
||||
state: web::Data<AppState>,
|
||||
session: Session,
|
||||
) -> Result<HttpResponse, ApiError> {
|
||||
auth::require_admin(&session)?;
|
||||
let mut sched = state.scheduler.lock().await;
|
||||
sched.skip_monitor = true;
|
||||
sched.next_monitor = None;
|
||||
Ok(HttpResponse::Ok().json(serde_json::json!({"status": "skipped"})))
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user