From 374e2482b99e5fb0d4d4bf8f57d2c26873b6c4f2 Mon Sep 17 00:00:00 2001 From: phoenix Date: Thu, 3 Apr 2025 22:56:13 -0400 Subject: [PATCH] More changes --- src/managers/commit_manager.rs | 30 +++++++++++++++++++++++++++++- src/syncers/upload.rs | 2 +- src/utilities/checks.rs | 2 +- 3 files changed, 31 insertions(+), 3 deletions(-) diff --git a/src/managers/commit_manager.rs b/src/managers/commit_manager.rs index 3286db3..8fd8abf 100644 --- a/src/managers/commit_manager.rs +++ b/src/managers/commit_manager.rs @@ -472,8 +472,12 @@ impl CommitManager { panic!("Directory does not exist"); } + let coverart_path = match self.get_cover_art_path(&sourcepath) { + Ok(path) => path, + Err(_) => String::new(), + }; let mut cover_art = - icarus_models::coverart::init::init_coverart_only_path(sourcepath.clone()); + icarus_models::coverart::init::init_coverart_only_path(coverart_path.clone()); let metadatapath = match self.get_metadata_path(&sourcepath) { Ok(o) => o, Err(_) => String::new(), @@ -511,6 +515,30 @@ impl CommitManager { Ok(()) } + fn get_cover_art_path(&self, directory_path: &String) -> Result { + for entry in read_dir(std::path::Path::new(directory_path))? { + let entry = entry?; + + let file_type = entry.file_type(); + let file_name = entry.file_name(); + + println!("file type: {:?}", file_type); + println!("file name: {:?}", file_name); + + match self.find_file_extension(&file_name) { + En::ImageFile => { + let directory_part = directory_path.clone(); + let fname = utilities::string::o_to_string(&file_name); + let fullpath = directory_part + "/" + &fname.unwrap(); + return Ok(fullpath); + } + _ => {} + } + } + + Ok(String::new()) + } + fn find_file_extension(&self, file_name: &std::ffi::OsString) -> En { let file_name_str = Some(file_name.clone().into_string()); diff --git a/src/syncers/upload.rs b/src/syncers/upload.rs index f0ef628..f4a6e7d 100644 --- a/src/syncers/upload.rs +++ b/src/syncers/upload.rs @@ -26,7 +26,7 @@ impl Upload { cover: &icarus_models::coverart::CoverArt, ) -> Result { self.api.endpoint = String::from("song/data/upload/with/data"); - let url = syncers::common::retrieve_url(&self.api, false, &uuid::Uuid::new_v4()); + let url = syncers::common::retrieve_url(&self.api, false, &uuid::Uuid::nil()); let access_token = token.bearer_token(); if url.is_empty() { diff --git a/src/utilities/checks.rs b/src/utilities/checks.rs index 5495b95..76f69a5 100644 --- a/src/utilities/checks.rs +++ b/src/utilities/checks.rs @@ -23,7 +23,7 @@ impl Checks { index += 1; } - return index; + index } }