aboutsummaryrefslogtreecommitdiffstats
path: root/src/ui.rs
diff options
context:
space:
mode:
authorMatthias P. Braendli <matthias.braendli@mpb.li>2024-09-20 22:45:23 +0200
committerMatthias P. Braendli <matthias.braendli@mpb.li>2024-09-20 22:45:23 +0200
commiteadac6465d83ec6e26a45fd90d96ec5e081ce7b2 (patch)
tree7e81fffbe86bdcecb2208e3f7d72a2bdd8a04125 /src/ui.rs
parentad30bb7aedf6b2e959a0ed90e90e2b991a69f6dc (diff)
downloadodr-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.rs32
1 files changed, 20 insertions, 12 deletions
diff --git a/src/ui.rs b/src/ui.rs
index 4a73ba4..99a96a5 100644
--- a/src/ui.rs
+++ b/src/ui.rs
@@ -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()),
}
}