tangled
alpha
login
or
join now
rocksky.app
/
rocksky
96
fork
atom
A decentralized music tracking and discovery platform built on AT Protocol 🎵
rocksky.app
spotify
atproto
lastfm
musicbrainz
scrobbling
listenbrainz
96
fork
atom
overview
issues
7
pulls
pipelines
fix empty dropbox parent dir value
tsiry-sandratraina.com
8 months ago
df036bcf
7460b9d6
+17
-6
2 changed files
expand all
collapse all
unified
split
crates
dropbox
src
repo
dropbox_path.rs
scan.rs
+3
-3
crates/dropbox/src/repo/dropbox_path.rs
···
9
file: &Entry,
10
track: &Track,
11
dropbox_id: &str,
12
-
parent_dir: Option<&str>,
13
) -> Result<(), sqlx::Error> {
14
let results: Vec<DropboxDirectory> = sqlx::query_as(
15
r#"
···
21
"#,
22
)
23
.bind(dropbox_id)
24
-
.bind(parent_dir)
25
.fetch_all(pool)
26
.await?;
27
28
-
let parent_dir = match parent_dir {
29
Some(_) => results.first().map(|d| d.clone().xata_id),
30
None => None,
31
};
···
9
file: &Entry,
10
track: &Track,
11
dropbox_id: &str,
12
+
parent_path: Option<String>,
13
) -> Result<(), sqlx::Error> {
14
let results: Vec<DropboxDirectory> = sqlx::query_as(
15
r#"
···
21
"#,
22
)
23
.bind(dropbox_id)
24
+
.bind(&parent_path)
25
.fetch_all(pool)
26
.await?;
27
28
+
let parent_dir = match parent_path {
29
Some(_) => results.first().map(|d| d.clone().xata_id),
30
None => None,
31
};
+14
-3
crates/dropbox/src/scan.rs
···
97
if entry.tag.clone().unwrap().as_str() == "folder" {
98
println!("Scanning folder: {}", path.bright_green());
99
100
-
create_dropbox_directory(&pool, &entry, &dropbox_id, &path).await?;
0
0
0
0
0
101
102
// TODO: publish folder metadata to nats
103
···
283
match track {
284
Some(track) => {
285
println!("Track exists: {}", title.bright_green());
286
-
let status = create_dropbox_path(&pool, &entry, &track, &dropbox_id, Some(&path)).await;
0
0
0
287
println!("status: {:?}", status);
288
289
// TODO: publish file metadata to nats
···
331
332
let track = get_track_by_hash(&pool, &hash).await?;
333
if let Some(track) = track {
334
-
create_dropbox_path(&pool, &entry, &track, &dropbox_id, Some(&path)).await?;
0
0
0
335
336
// TODO: publish file metadata to nats
337
···
97
if entry.tag.clone().unwrap().as_str() == "folder" {
98
println!("Scanning folder: {}", path.bright_green());
99
100
+
let parent_path = Path::new(&path)
101
+
.parent()
102
+
.map(|p| p.to_string_lossy().to_string())
103
+
.unwrap_or_else(|| "".to_string());
104
+
105
+
create_dropbox_directory(&pool, &entry, &dropbox_id, &parent_path).await?;
106
107
// TODO: publish folder metadata to nats
108
···
288
match track {
289
Some(track) => {
290
println!("Track exists: {}", title.bright_green());
291
+
let parent_path = Path::new(&path)
292
+
.parent()
293
+
.map(|p| p.to_string_lossy().to_string());
294
+
let status = create_dropbox_path(&pool, &entry, &track, &dropbox_id, parent_path).await;
295
println!("status: {:?}", status);
296
297
// TODO: publish file metadata to nats
···
339
340
let track = get_track_by_hash(&pool, &hash).await?;
341
if let Some(track) = track {
342
+
let parent_path = Path::new(&path)
343
+
.parent()
344
+
.map(|p| p.to_string_lossy().to_string());
345
+
create_dropbox_path(&pool, &entry, &track, &dropbox_id, parent_path).await?;
346
347
// TODO: publish file metadata to nats
348