diff options
Diffstat (limited to 'src/api/image.rs')
-rw-r--r-- | src/api/image.rs | 54 |
1 files changed, 0 insertions, 54 deletions
diff --git a/src/api/image.rs b/src/api/image.rs deleted file mode 100644 index 84eccc7..0000000 --- a/src/api/image.rs +++ /dev/null @@ -1,54 +0,0 @@ -use axum::{extract::Query, response::Response, routing::get, Router, http::StatusCode}; -use serde::Deserialize; - -use crate::types::http::ResponseCode; - - - -#[derive(Deserialize)] -struct AvatarRequest { - user_id: u64, -} - -async fn avatar(params: Option<Query<AvatarRequest>>) -> Response { - - let Some(params) = params else { - return ResponseCode::BadRequest.text("Missing query paramaters"); - }; - - let custom = format!("/image/custom/avatar/{}.png", params.user_id); - let default = format!("/image/default/{}.png", params.user_id % 25); - - let file = ResponseCode::Success.file(&custom).await; - if file.status() != StatusCode::OK { - return ResponseCode::Success.file(&default).await - } - file -} - -#[derive(Deserialize)] -struct BannerRequest { - user_id: u64, -} - -async fn banner(params: Option<Query<BannerRequest>>) -> Response { - - let Some(params) = params else { - return ResponseCode::BadRequest.text("Missing query paramaters"); - }; - - let custom = format!("/image/custom/banner/{}.png", params.user_id); - - let file = ResponseCode::Success.file(&custom).await; - if file.status() != StatusCode::OK { - return ResponseCode::NotFound.text("User does not have a custom banner") - } - file -} - - -pub fn router() -> Router { - Router::new() - .route("/avatar", get(avatar)) - .route("/banner", get(banner)) -} |