add: audit log, reports

add: theme preference setting
This commit is contained in:
trisua 2025-04-02 11:39:51 -04:00
parent b2df2739a7
commit d3d0c41334
38 changed files with 925 additions and 169 deletions

View file

@ -2,6 +2,7 @@ pub mod auth;
pub mod communities;
pub mod notifications;
pub mod reactions;
pub mod reports;
pub mod util;
use axum::{
@ -15,6 +16,7 @@ use tetratto_core::model::{
PostContext,
},
communities_permissions::CommunityPermission,
permissions::FinePermission,
reactions::AssetType,
};
@ -121,6 +123,10 @@ pub fn routes() -> Router {
"/auth/profile/{id}/settings",
post(auth::profile::update_user_settings_request),
)
.route(
"/auth/profile/{id}/role",
post(auth::profile::update_user_role_request),
)
.route(
"/auth/profile/{id}",
delete(auth::profile::delete_user_request),
@ -175,6 +181,9 @@ pub fn routes() -> Router {
// ipbans
.route("/bans/{ip}", post(auth::ipbans::create_request))
.route("/bans/id/{id}", delete(auth::ipbans::delete_request))
// reports
.route("/reports", post(reports::create_request))
.route("/reports/{id}", delete(reports::delete_request))
}
#[derive(Deserialize)]
@ -238,6 +247,13 @@ pub struct CreateReaction {
pub is_like: bool,
}
#[derive(Deserialize)]
pub struct CreateReport {
pub content: String,
pub asset: String,
pub asset_type: AssetType,
}
#[derive(Deserialize)]
pub struct UpdateUserPassword {
pub from: String,
@ -264,6 +280,11 @@ pub struct UpdateMembershipRole {
pub role: CommunityPermission,
}
#[derive(Deserialize)]
pub struct UpdateUserRole {
pub role: FinePermission,
}
#[derive(Deserialize)]
pub struct DeleteUser {
pub password: String,