diff options
author | Matthias P. Braendli <matthias.braendli@mpb.li> | 2024-09-20 22:45:23 +0200 |
---|---|---|
committer | Matthias P. Braendli <matthias.braendli@mpb.li> | 2024-09-20 22:45:23 +0200 |
commit | eadac6465d83ec6e26a45fd90d96ec5e081ce7b2 (patch) | |
tree | 7e81fffbe86bdcecb2208e3f7d72a2bdd8a04125 /src/ui.rs | |
parent | ad30bb7aedf6b2e959a0ed90e90e2b991a69f6dc (diff) | |
download | odr-dabmux-gui-eadac6465d83ec6e26a45fd90d96ec5e081ce7b2.tar.gz odr-dabmux-gui-eadac6465d83ec6e26a45fd90d96ec5e081ce7b2.tar.bz2 odr-dabmux-gui-eadac6465d83ec6e26a45fd90d96ec5e081ce7b2.zip |
Get stats working
Diffstat (limited to 'src/ui.rs')
-rw-r--r-- | src/ui.rs | 32 |
1 files changed, 20 insertions, 12 deletions
@@ -7,6 +7,7 @@ use axum::{ http::StatusCode, routing::{get, post}, }; +use log::info; use serde::Deserialize; use tower_http::services::ServeDir; @@ -52,26 +53,31 @@ struct DashboardTemplate<'a> { title: &'a str, page: ActivePage, conf: config::Config, - errors: Option<String>, params: Vec<crate::dabmux::Param>, + params_errors: Option<String>, + stats: Option<crate::dabmux::Stats>, + stats_errors: Option<String>, } async fn dashboard(State(state): State<SharedState>) -> DashboardTemplate<'static> { - let (conf, params_result) = { + let (conf, params_result, stats_result) = { let mut st = state.lock().unwrap(); let params_result = st.dabmux.get_rc_parameters(); + let stats_result = st.dabmux.get_stats(); + info!("STATS: {:?}", stats_result); - (st.conf.clone(), params_result) + (st.conf.clone(), params_result, stats_result) }; - let (params, errors) = match params_result { - Ok(v) => { - (v, None) - }, - Err(e) => { - (Vec::new(), Some(format!("{}", e))) - }, + let (params, params_errors) = match params_result { + Ok(v) => (v, None), + Err(e) => (Vec::new(), Some(format!("{}", e))), + }; + + let (stats, stats_errors) = match stats_result { + Ok(v) => (Some(v), None), + Err(e) => (None, Some(format!("{}", e))), }; DashboardTemplate { @@ -79,7 +85,9 @@ async fn dashboard(State(state): State<SharedState>) -> DashboardTemplate<'stati conf, page: ActivePage::Dashboard, params, - errors, + params_errors, + stats, + stats_errors, } } @@ -100,7 +108,7 @@ async fn post_rc( }; match set_rc_result { - Ok(v) => (StatusCode::OK, v.as_str().or(Some("")).unwrap().to_owned()), + Ok(()) => (StatusCode::OK, "".to_owned()), Err(e) => (StatusCode::BAD_REQUEST, e.to_string()), } } |