From e5a2dfaadee9de08c2be28c12b9b3fff65bcdb59 Mon Sep 17 00:00:00 2001 From: JMARyA Date: Fri, 4 Oct 2024 20:17:09 +0200 Subject: [PATCH] fix --- src/library/playlist.rs | 6 ++++-- src/route/playlist.rs | 8 +++++--- 2 files changed, 9 insertions(+), 5 deletions(-) diff --git a/src/library/playlist.rs b/src/library/playlist.rs index f50124b..f34cbca 100644 --- a/src/library/playlist.rs +++ b/src/library/playlist.rs @@ -5,7 +5,9 @@ use crate::{get_pg, library::user::User}; #[derive(Debug, Clone, Serialize, Deserialize, FromRow)] pub struct Playlist { - pub id: String, + pub id: uuid::Uuid, + #[sqlx(default)] + pub id_str: Option, pub owner: String, pub title: String, pub visibility: Visibility, @@ -62,7 +64,7 @@ impl Playlist { impl Playlist { pub async fn api(&self) -> serde_json::Value { serde_json::json!({ - "id": self.id, + "id": if let Some(id) = &self.id_str { id.clone() } else { self.id.to_string() }, "owner": self.owner, "visibility": serde_json::to_value(&self.visibility).unwrap(), "title": self.title, diff --git a/src/route/playlist.rs b/src/route/playlist.rs index 17aeb45..ad4d7e3 100644 --- a/src/route/playlist.rs +++ b/src/route/playlist.rs @@ -42,7 +42,8 @@ pub async fn recently_added_playlist() -> FallibleApiResponse { pub async fn playlist_route(id: &str, u: User) -> FallibleApiResponse { if id == "recents" { return Ok(Playlist { - id: "recents".to_string(), + id: uuid::Uuid::nil(), + id_str: Some("recents".to_string()), owner: u.username, title: "Recently Played".to_string(), visibility: Visibility::Public, @@ -54,7 +55,8 @@ pub async fn playlist_route(id: &str, u: User) -> FallibleApiResponse { if id == "recentlyAdded" { return Ok(Playlist { - id: "recentlyAdded".to_string(), + id: uuid::Uuid::nil(), + id_str: Some("recentlyAdded".to_string()), owner: u.username, title: "Recently Added".to_string(), visibility: Visibility::Public, @@ -170,7 +172,7 @@ pub async fn playlist_edit_route( .bind(new_title) .bind(new_vis) .bind(tracks_ref) - .bind(&to_uuid(&playlist_id)?) + .bind(&playlist_id) .fetch_one(get_pg!()) .await .unwrap();