use std::sync::Arc;
use axum::body::Bytes;
use axum::extract::State;
use axum::http::StatusCode;
use axum::response::IntoResponse;
pub async fn reset_totp_start(
State(state): State<Arc<crate::server::OrdinaryAppServerState>>,
body: Bytes,
) -> impl IntoResponse {
let span = tracing::info_span!("auth", flv = %"wasm");
span.in_scope(|| match state.auth.reset_totp_mfa_start(body) {
Ok(v) => (StatusCode::OK, v),
Err(e) => {
tracing::error!("{e}");
(StatusCode::INTERNAL_SERVER_ERROR, Bytes::new())
}
})
}
pub async fn reset_totp_finish(
State(state): State<Arc<crate::server::OrdinaryAppServerState>>,
body: Bytes,
) -> impl IntoResponse {
let span = tracing::info_span!("auth", flv = %"wasm");
span.in_scope(|| match state.auth.reset_totp_mfa_finish(body) {
Ok(v) => (StatusCode::OK, v),
Err(e) => {
tracing::error!("{e}");
(StatusCode::INTERNAL_SERVER_ERROR, Bytes::new())
}
})
}
pub async fn lost_totp_start(
State(state): State<Arc<crate::server::OrdinaryAppServerState>>,
body: Bytes,
) -> impl IntoResponse {
let span = tracing::info_span!("auth", flv = %"wasm");
span.in_scope(|| match state.auth.lost_totp_mfa_start(body) {
Ok(v) => (StatusCode::OK, v),
Err(e) => {
tracing::error!("{e}");
(StatusCode::INTERNAL_SERVER_ERROR, Bytes::new())
}
})
}
pub async fn lost_totp_finish(
State(state): State<Arc<crate::server::OrdinaryAppServerState>>,
body: Bytes,
) -> impl IntoResponse {
let span = tracing::info_span!("auth", flv = %"wasm");
span.in_scope(|| match state.auth.lost_totp_mfa_finish(body) {
Ok(v) => (StatusCode::OK, v),
Err(e) => {
tracing::error!("{e}");
(StatusCode::INTERNAL_SERVER_ERROR, Bytes::new())
}
})
}