pinakes-server: relativize media paths against configured root directories

Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: I9f113e6402030c46ad97f636985b5d6c6a6a6964
This commit is contained in:
raf 2026-03-11 17:07:17 +03:00
commit 9c67c81a79
Signed by: NotAShelf
GPG key ID: 29D95B64378DB4BF
11 changed files with 212 additions and 42 deletions

View file

@ -125,7 +125,13 @@ pub async fn list_favorites(
.storage
.get_user_favorites(user_id, &Pagination::default())
.await?;
Ok(Json(items.into_iter().map(MediaResponse::from).collect()))
let roots = state.config.read().await.directories.roots.clone();
Ok(Json(
items
.into_iter()
.map(|item| MediaResponse::new(item, &roots))
.collect(),
))
}
pub async fn create_share_link(
@ -205,5 +211,6 @@ pub async fn access_shared_media(
}
state.storage.increment_share_views(&token).await?;
let item = state.storage.get_media(link.media_id).await?;
Ok(Json(MediaResponse::from(item)))
let roots = state.config.read().await.directories.roots.clone();
Ok(Json(MediaResponse::new(item, &roots)))
}