aboutsummaryrefslogtreecommitdiff
path: root/import/src/plugins/trakt.rs
diff options
context:
space:
mode:
Diffstat (limited to 'import/src/plugins/trakt.rs')
-rw-r--r--import/src/plugins/trakt.rs75
1 files changed, 26 insertions, 49 deletions
diff --git a/import/src/plugins/trakt.rs b/import/src/plugins/trakt.rs
index 8c66c85..706d2b7 100644
--- a/import/src/plugins/trakt.rs
+++ b/import/src/plugins/trakt.rs
@@ -416,17 +416,17 @@ impl ImportPlugin for Trakt {
}
impl Trakt {
- fn process_show(&self, ct: &ImportContext, node: NodeID, node_data: &Node) -> Result<()> {
+ fn process_show(&self, ct: &ImportContext, node: NodeID, data: &Node) -> Result<()> {
let (trakt_kind, trakt_id): (_, u64) =
- if let Some(id) = node_data.identifiers.get(&IdentifierType::TraktShow) {
+ if let Some(id) = data.identifiers.get(&IdentifierType::TraktShow) {
(TraktKind::Show, id.parse()?)
- } else if let Some(id) = node_data.identifiers.get(&IdentifierType::TraktMovie) {
+ } else if let Some(id) = data.identifiers.get(&IdentifierType::TraktMovie) {
(TraktKind::Movie, id.parse()?)
} else {
return Ok(());
};
- let data = self.lookup(trakt_kind, trakt_id, ct.rt)?;
+ let details = self.lookup(trakt_kind, trakt_id, ct.rt)?;
let people = self.people(trakt_kind, trakt_id, ct.rt)?;
let mut people_map = BTreeMap::<CreditCategory, Vec<Appearance>>::new();
@@ -445,28 +445,6 @@ impl Trakt {
}
}
- // let mut tmdb_data = None;
- // let mut backdrop = None;
- // let mut poster = None;
- // if let Some(tmdb_id) = data.ids.tmdb {
- // let data = tmdb.details(
- // match trakt_kind {
- // TraktKind::Movie => TmdbKind::Movie,
- // TraktKind::Show => TmdbKind::Tv,
- // _ => TmdbKind::Movie,
- // },
- // tmdb_id,
- // rthandle,
- // )?;
- // tmdb_data = Some(data.clone());
-
- // if let Some(path) = &data.backdrop_path {
- // backdrop = Some(tmdb.image(path, rthandle).context("tmdb backdrop image")?);
- // }
- // if let Some(path) = &data.poster_path {
- // poster = Some(tmdb.image(path, rthandle).context("tmdb poster image")?);
- // }
-
// for p in people_map.values_mut().flatten() {
// if let Some(id) = p.person.ids.tmdb {
// let k = rthandle.block_on(tmdb.person_image(id))?;
@@ -476,38 +454,37 @@ impl Trakt {
// }
// }
// }
- // }
ct.db.update_node_init(node, |node| {
- node.title = Some(data.title.clone());
- node.credits.extend(people_map);
node.kind = trakt_kind.as_node_kind();
- if let Some(overview) = &data.overview {
+ node.title = Some(details.title.clone());
+ if let Some(overview) = &details.overview {
node.description = Some(overview.clone())
}
- if let Some(tagline) = &data.tagline {
+ if let Some(tagline) = &details.tagline {
node.tagline = Some(tagline.clone())
}
- if let Some(rating) = &data.rating {
+ node.credits.extend(people_map);
+ if let Some(x) = details.ids.imdb.clone() {
+ node.identifiers.insert(IdentifierType::Imdb, x);
+ }
+ if let Some(x) = details.ids.tvdb.clone() {
+ node.identifiers.insert(IdentifierType::Tvdb, x.to_string());
+ }
+ if let Some(x) = details.ids.tmdb.clone() {
+ match trakt_kind {
+ TraktKind::Movie => node
+ .identifiers
+ .insert(IdentifierType::TmdbMovie, x.to_string()),
+ TraktKind::Show => node
+ .identifiers
+ .insert(IdentifierType::TmdbSeries, x.to_string()),
+ _ => None,
+ };
+ }
+ if let Some(rating) = &details.rating {
node.ratings.insert(RatingType::Trakt, *rating);
}
- // if let Some(poster) = poster {
- // node.pictures.insert(PictureSlot::Cover, poster);
- // }
- // if let Some(backdrop) = backdrop {
- // node.pictures.insert(PictureSlot::Backdrop, backdrop);
- // }
- // if let Some(data) = tmdb_data {
- // node.title = data.title.clone().or(node.title.clone());
- // node.tagline = data.tagline.clone().or(node.tagline.clone());
- // node.description = Some(data.overview.clone());
- // node.ratings.insert(RatingType::Tmdb, data.vote_average);
- // if let Some(date) = data.release_date.clone() {
- // if let Ok(date) = tmdb::parse_release_date(&date) {
- // node.release_date = date;
- // }
- // }
- // }
Ok(())
})?;
Ok(())