add tracing; one time lang call
This commit is contained in:
24
src/game.rs
24
src/game.rs
@@ -19,18 +19,18 @@ async fn index(
|
||||
messages: Messages,
|
||||
headers: HeaderMap,
|
||||
) -> Response {
|
||||
let lang = language(&cookies, &headers);
|
||||
rust_i18n::set_locale(lang.to_locale());
|
||||
|
||||
tracing::info!("in /index");
|
||||
let (cookies, req) = backend.client_full(cookies, &headers).await;
|
||||
tracing::info!("cookies = {cookies:#?}");
|
||||
tracing::info!("req = {req:#?}");
|
||||
let client = req.client;
|
||||
rust_i18n::set_locale(&req.lang.to_string());
|
||||
|
||||
let sightings = backend.sightings_for_client(&client).await;
|
||||
let amount_total_cameras = backend.amount_total_cameras().await;
|
||||
let highscore = backend.highscore().await;
|
||||
|
||||
let lang = language(&cookies, &headers);
|
||||
let mut page = Page::new(lang);
|
||||
let mut page = Page::new(req.lang);
|
||||
page.messages(messages);
|
||||
let markup = page.content(html! {
|
||||
hgroup {
|
||||
@@ -101,10 +101,9 @@ async fn game(
|
||||
messages: Messages,
|
||||
Path(uuid): Path<String>,
|
||||
) -> Result<Redirect, Response> {
|
||||
let lang = language(&cookies, &headers);
|
||||
rust_i18n::set_locale(lang.to_locale());
|
||||
|
||||
let (cookies, client) = backend.client(cookies).await;
|
||||
let (cookies, req) = backend.client_full(cookies, &headers).await;
|
||||
let client = req.client;
|
||||
rust_i18n::set_locale(req.lang.to_locale());
|
||||
|
||||
let Ok(uuid) = Uuid::parse_str(&uuid) else {
|
||||
return Err(not_found(cookies, headers).await.into_response());
|
||||
@@ -147,10 +146,9 @@ async fn set_name(
|
||||
headers: HeaderMap,
|
||||
Form(form): Form<NameForm>,
|
||||
) -> Response {
|
||||
let lang = language(&cookies, &headers);
|
||||
rust_i18n::set_locale(lang.to_locale());
|
||||
|
||||
let (cookies, client) = backend.client(cookies).await;
|
||||
let (cookies, req) = backend.client_full(cookies, &headers).await;
|
||||
let client = req.client;
|
||||
rust_i18n::set_locale(req.lang.to_locale());
|
||||
|
||||
match backend.set_client_name(&client, &form.name).await {
|
||||
Ok(()) => messages.info("set-name-succ"),
|
||||
|
@@ -11,6 +11,7 @@ use std::{
|
||||
};
|
||||
use tower_http::services::ServeDir;
|
||||
use tower_sessions::{MemoryStore, SessionManagerLayer};
|
||||
use tracing_subscriber::{layer::SubscriberExt, util::SubscriberInitExt, EnvFilter};
|
||||
use uuid::Uuid;
|
||||
|
||||
#[macro_use]
|
||||
@@ -70,6 +71,7 @@ impl From<String> for Language {
|
||||
}
|
||||
}
|
||||
|
||||
#[derive(Debug)]
|
||||
struct Req {
|
||||
client: Client,
|
||||
lang: Language,
|
||||
@@ -192,6 +194,11 @@ impl Backend {
|
||||
|
||||
#[tokio::main]
|
||||
async fn main() {
|
||||
tracing_subscriber::registry()
|
||||
.with(tracing_subscriber::fmt::layer())
|
||||
.with(EnvFilter::from_default_env())
|
||||
.init();
|
||||
|
||||
let session_store = MemoryStore::default();
|
||||
let session_layer = SessionManagerLayer::new(session_store).with_secure(false);
|
||||
|
||||
|
Reference in New Issue
Block a user