🎉Release v0.3.0!🎉

This commit is contained in:
Shiroyasha 2024-08-20 22:08:05 +03:00
parent dabe176e0e
commit 494de2ba0c
Signed by: shiroyashik
GPG key ID: E4953D3940D7860A
9 changed files with 60 additions and 19 deletions

View file

@ -12,6 +12,8 @@ pub fn router() -> Router<AppState> {
.route("/raw", post(http2ws::raw))
.route("/sub/raw", post(http2ws::sub_raw))
.route("/user/create", post(users::create_user))
.route("/user/:uuid/ban", post(users::ban))
.route("/user/:uuid/unban", post(users::unban))
.route("/avatar/:uuid", put(avatars::upload_avatar).layer(DefaultBodyLimit::disable()))
.route("/avatar/:uuid", delete(avatars::delete_avatar))
}

View file

@ -1,8 +1,9 @@
use axum::{
extract::State,
extract::{Path, State},
Json
};
use tracing::debug;
use tracing::{debug, info};
use uuid::Uuid;
use crate::{auth::{Token, Userinfo}, ApiResult, AppState};
@ -17,4 +18,30 @@ pub(super) async fn create_user(
state.user_manager.insert_user(json.uuid, json);
Ok("ok")
}
pub(super) async fn ban(
Token(token): Token,
State(state): State<AppState>,
Path(uuid): Path<Uuid>
) -> ApiResult<&'static str> {
state.config.read().await.clone().verify_token(&token)?;
info!("Trying ban user: {uuid}");
state.user_manager.ban(&Userinfo { uuid: uuid, banned: true, ..Default::default() });
Ok("ok")
}
pub(super) async fn unban(
Token(token): Token,
State(state): State<AppState>,
Path(uuid): Path<Uuid>
) -> ApiResult<&'static str> {
state.config.read().await.clone().verify_token(&token)?;
info!("Trying unban user: {uuid}");
state.user_manager.unban(&uuid);
Ok("ok")
}