diff options
author | metamuffin <metamuffin@disroot.org> | 2025-04-29 15:19:36 +0200 |
---|---|---|
committer | metamuffin <metamuffin@disroot.org> | 2025-04-29 15:19:36 +0200 |
commit | f73aa32549743b2967160d38c1622199c41524a4 (patch) | |
tree | 0fa290fbf9b14d7bfd3803f8cc4618c6c9829330 /common | |
parent | f62c7f2a8cc143454779dc99334ca9fc80ddabd5 (diff) | |
download | jellything-f73aa32549743b2967160d38c1622199c41524a4.tar jellything-f73aa32549743b2967160d38c1622199c41524a4.tar.bz2 jellything-f73aa32549743b2967160d38c1622199c41524a4.tar.zst |
aaaaaaa
Diffstat (limited to 'common')
-rw-r--r-- | common/src/api.rs | 31 | ||||
-rw-r--r-- | common/src/routes.rs | 21 |
2 files changed, 51 insertions, 1 deletions
diff --git a/common/src/api.rs b/common/src/api.rs index aaff940..c4751a3 100644 --- a/common/src/api.rs +++ b/common/src/api.rs @@ -3,7 +3,12 @@ which is licensed under the GNU Affero General Public License (version 3); see /COPYING. Copyright (C) 2025 metamuffin <metamuffin.org> */ -use crate::{url_enum, user::NodeUserData, Node, NodeKind}; +use crate::{ + url_enum, + user::{NodeUserData, User}, + Node, NodeKind, +}; +use chrono::{DateTime, Utc}; use serde::{Deserialize, Serialize}; use std::{collections::BTreeMap, sync::Arc, time::Duration}; @@ -43,6 +48,30 @@ pub struct ApiStatsResponse { pub total: StatsBin, } +#[derive(Serialize, Deserialize)] +pub struct ApiAdminUsersResponse { + pub users: Vec<User>, +} + +#[derive(Serialize, Deserialize)] +pub struct LogLine { + pub time: DateTime<Utc>, + pub module: Option<&'static str>, + pub level: LogLevel, + pub message: String, +} + +url_enum!( + #[derive(Serialize, Deserialize, Clone, Copy, PartialEq)] + enum LogLevel { + Trace = "trace", + Debug = "debug", + Info = "info", + Warn = "warn", + Error = "error", + } +); + #[derive(Default, Serialize, Deserialize)] pub struct StatsBin { pub runtime: f64, diff --git a/common/src/routes.rs b/common/src/routes.rs index 9472c85..437f469 100644 --- a/common/src/routes.rs +++ b/common/src/routes.rs @@ -65,6 +65,24 @@ pub fn u_admin_user_permission(name: &str) -> String { pub fn u_admin_user_remove(name: &str) -> String { format!("/admin/user/{name}/remove") } +pub fn u_admin_log(warn_only: bool) -> String { + format!("/admin/log?warn_only={warn_only}") +} +pub fn u_admin_invite_create() -> String { + format!("/admin/generate_invite") +} +pub fn u_admin_invite_remove() -> String { + format!("/admin/remove_invite") +} +pub fn u_admin_import(incremental: bool) -> String { + format!("/admin/import?incremental={incremental}") +} +pub fn u_admin_transcode_posters() -> String { + format!("/admin/transcode_posters") +} +pub fn u_admin_update_search() -> String { + format!("/admin/update_search") +} pub fn u_account_register() -> String { "/account/register".to_owned() } @@ -86,3 +104,6 @@ pub fn u_stats() -> String { pub fn u_search() -> String { "/search".to_owned() } +pub fn u_asset(token: &str, width: usize) -> String { + format!("/asset/{token}?width={width}") +} |