add: service edit date + browser session ids
This commit is contained in:
parent
9aee80493f
commit
cfcc2358f4
17 changed files with 148 additions and 29 deletions
|
@ -365,7 +365,7 @@ pub async fn global_view_request(
|
|||
Ok((
|
||||
[(
|
||||
"content-security-policy",
|
||||
"default-src 'self' *.spotify.com musicbrainz.org; img-src * data:; media-src *; font-src *; style-src 'unsafe-inline' 'self' *; script-src 'self' 'unsafe-inline' *; worker-src * blob:; object-src 'self' *; upgrade-insecure-requests; connect-src * localhost; frame-src 'self' *; frame-ancestors *",
|
||||
"default-src 'self' *.spotify.com musicbrainz.org; img-src * data:; media-src *; font-src *; style-src 'unsafe-inline' 'self' *; script-src 'self' 'unsafe-inline' *; worker-src * blob:; object-src 'self' *; upgrade-insecure-requests; connect-src * localhost; frame-src 'self' blob: *; frame-ancestors *",
|
||||
)],
|
||||
Html(data.1.render("journals/app.html", &context).unwrap()),
|
||||
))
|
||||
|
|
|
@ -11,6 +11,7 @@ use axum::{
|
|||
use axum_extra::extract::CookieJar;
|
||||
use tetratto_core::model::{littleweb::TLDS_VEC, permissions::SecondaryPermission, Error};
|
||||
use serde::Deserialize;
|
||||
use tetratto_shared::hash::salt;
|
||||
|
||||
/// `/services`
|
||||
pub async fn services_request(
|
||||
|
@ -230,12 +231,26 @@ pub async fn browser_home_request(
|
|||
let data = data.read().await;
|
||||
let user = get_user_from_token!(jar, data.0);
|
||||
|
||||
// update session
|
||||
let session = salt();
|
||||
|
||||
if let Some(ref ua) = user {
|
||||
if let Err(e) = data.0.update_user_browser_session(ua.id, &session).await {
|
||||
return Err(Html(render_error(e.into(), &jar, &data, &None).await));
|
||||
}
|
||||
}
|
||||
|
||||
// ...
|
||||
let lang = get_lang!(jar, data.0);
|
||||
let mut context = initial_context(&data.0.0.0, lang, &user).await;
|
||||
|
||||
context.insert("path", &"");
|
||||
context.insert("session", &session);
|
||||
|
||||
// return
|
||||
Html(data.1.render("littleweb/browser.html", &context).unwrap())
|
||||
Ok(Html(
|
||||
data.1.render("littleweb/browser.html", &context).unwrap(),
|
||||
))
|
||||
}
|
||||
|
||||
/// `/net/{uri}`
|
||||
|
@ -255,10 +270,24 @@ pub async fn browser_request(
|
|||
uri = format!("atto://{uri}");
|
||||
}
|
||||
|
||||
// update session
|
||||
let session = salt();
|
||||
|
||||
if let Some(ref ua) = user {
|
||||
if let Err(e) = data.0.update_user_browser_session(ua.id, &session).await {
|
||||
return Err(Html(render_error(e.into(), &jar, &data, &None).await));
|
||||
}
|
||||
}
|
||||
|
||||
// ...
|
||||
let lang = get_lang!(jar, data.0);
|
||||
let mut context = initial_context(&data.0.0.0, lang, &user).await;
|
||||
|
||||
context.insert("session", &session);
|
||||
context.insert("path", &uri.replace("atto://", ""));
|
||||
|
||||
// return
|
||||
Html(data.1.render("littleweb/browser.html", &context).unwrap())
|
||||
Ok(Html(
|
||||
data.1.render("littleweb/browser.html", &context).unwrap(),
|
||||
))
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue