Fixed endpoint for getting coverart queue data

This commit is contained in:
kdeng00
2025-06-17 20:54:48 -04:00
parent 6f2e8d6e17
commit c60f7a44aa
+22 -5
View File
@@ -326,6 +326,8 @@ pub mod cov_db {
pub mod endpoint { pub mod endpoint {
use std::io::Write; use std::io::Write;
use axum::response::IntoResponse;
pub async fn queue( pub async fn queue(
axum::Extension(pool): axum::Extension<sqlx::PgPool>, axum::Extension(pool): axum::Extension<sqlx::PgPool>,
mut multipart: axum::extract::Multipart, mut multipart: axum::extract::Multipart,
@@ -447,15 +449,29 @@ pub mod endpoint {
pub async fn fetch_coverart_with_data( pub async fn fetch_coverart_with_data(
axum::Extension(pool): axum::Extension<sqlx::PgPool>, axum::Extension(pool): axum::Extension<sqlx::PgPool>,
axum::extract::Query(params): axum::extract::Query< axum::extract::Path(id): axum::extract::Path<uuid::Uuid>,
super::request::fetch_coverart_with_data::Params,
>,
) -> ( ) -> (
axum::http::StatusCode, axum::http::StatusCode,
axum::Json<super::response::fetch_coverart_with_data::Response>, axum::response::Response,
) { ) {
let mut response = super::response::fetch_coverart_with_data::Response::default(); match super::db::get_coverart_queue_data_with_id(&pool, &id).await {
Ok(data) => {
let bytes = axum::body::Bytes::from(data);
let mut response = bytes.into_response();
let headers = response.headers_mut();
// TODO: Address this hard coding for the coverart content type
headers.insert(axum::http::header::CONTENT_TYPE, "image".parse().unwrap());
// TODO: Make the conent disposition more dynamic
headers.insert(axum::http::header::CONTENT_DISPOSITION, format!("attachment; filename=\"{}.jpg\"", id).parse().unwrap());
(axum::http::StatusCode::OK, response)
}
Err(_err) => {
(axum::http::StatusCode::BAD_REQUEST, axum::response::Response::default())
}
}
/*
match params.id { match params.id {
Some(id) => match super::db::get_coverart_queue_data_with_id(&pool, &id).await { Some(id) => match super::db::get_coverart_queue_data_with_id(&pool, &id).await {
Ok(cover_art_queue) => { Ok(cover_art_queue) => {
@@ -491,6 +507,7 @@ pub mod endpoint {
} }
}, },
} }
*/
} }
pub async fn create_coverart( pub async fn create_coverart(