mirror of
https://github.com/scottlamb/moonfire-nvr.git
synced 2025-11-24 11:37:48 -05:00
@@ -21,7 +21,7 @@ pub struct TopLevel<'a> {
|
||||
pub cameras: (&'a db::LockedDatabase, bool, bool),
|
||||
|
||||
#[serde(skip_serializing_if = "Option::is_none")]
|
||||
pub session: Option<Session>,
|
||||
pub user: Option<ToplevelUser>,
|
||||
|
||||
#[serde(serialize_with = "TopLevel::serialize_signals")]
|
||||
pub signals: (&'a db::LockedDatabase, bool),
|
||||
@@ -33,8 +33,6 @@ pub struct TopLevel<'a> {
|
||||
#[derive(Debug, Serialize)]
|
||||
#[serde(rename_all = "camelCase")]
|
||||
pub struct Session {
|
||||
pub username: String,
|
||||
|
||||
#[serde(serialize_with = "Session::serialize_csrf")]
|
||||
pub csrf: SessionHash,
|
||||
}
|
||||
@@ -519,3 +517,25 @@ impl VideoSampleEntry {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
#[derive(Debug, Serialize)]
|
||||
#[serde(rename_all = "camelCase")]
|
||||
pub struct ToplevelUser {
|
||||
pub name: String,
|
||||
pub id: i32,
|
||||
pub preferences: db::auth::UserPreferences,
|
||||
pub session: Option<Session>,
|
||||
}
|
||||
|
||||
#[derive(Debug, Deserialize)]
|
||||
#[serde(rename_all = "camelCase")]
|
||||
pub struct PostUser {
|
||||
pub update: Option<UserSubset>,
|
||||
pub precondition: Option<UserSubset>,
|
||||
}
|
||||
|
||||
#[derive(Debug, Deserialize)]
|
||||
#[serde(rename_all = "camelCase")]
|
||||
pub struct UserSubset {
|
||||
pub preferences: Option<db::auth::UserPreferences>,
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user