From 5a4d7d0e1d9a16d9c4760e58d2de4ff6b0f78992 Mon Sep 17 00:00:00 2001 From: SinTan1729 Date: Mon, 15 May 2023 17:55:45 -0500 Subject: [PATCH] Added support for multiple directors --- src/functions.rs | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/src/functions.rs b/src/functions.rs index 608dee8..f82129b 100644 --- a/src/functions.rs +++ b/src/functions.rs @@ -70,9 +70,16 @@ pub async fn process_file( let credits_reply = credits_search.execute(tmdb).await; if credits_reply.is_ok() { let mut crew = credits_reply.unwrap().crew; + // Only keep the director(s) crew.retain(|x| x.job == *"Director"); - for person in crew { - movie_details.director = person.person.name; + if !crew.is_empty() { + let directors: Vec = + crew.iter().map(|x| x.person.name.clone()).collect(); + let mut directors_text = directors.join(", "); + if let Some(pos) = directors_text.rfind(',') { + directors_text.replace_range(pos..pos + 2, " and "); + } + movie_details.director = directors_text; } } }