aboutsummaryrefslogtreecommitdiff
path: root/tools/src/tmdb.rs
diff options
context:
space:
mode:
Diffstat (limited to 'tools/src/tmdb.rs')
-rw-r--r--tools/src/tmdb.rs32
1 files changed, 16 insertions, 16 deletions
diff --git a/tools/src/tmdb.rs b/tools/src/tmdb.rs
index 6f8c341..5f21afd 100644
--- a/tools/src/tmdb.rs
+++ b/tools/src/tmdb.rs
@@ -21,14 +21,14 @@ pub struct TmdbQueryResult {
pub backdrop_path: Option<String>,
pub genre_ids: Vec<u64>,
pub id: u64,
- pub original_language: String,
- pub original_title: String,
+ pub original_language: Option<String>,
+ pub original_title: Option<String>,
pub overview: String,
pub popularity: f64,
pub poster_path: Option<String>,
- pub release_date: String,
- pub title: String,
- pub video: bool,
+ pub release_date: Option<String>,
+ pub title: Option<String>,
+ pub name: Option<String>,
pub vote_average: f64,
pub vote_count: usize,
}
@@ -39,21 +39,21 @@ pub struct TmdbDetails {
pub backdrop_path: Option<String>,
pub genres: Vec<TmdbGenre>,
pub id: u64,
- pub original_language: String,
- pub original_title: String,
+ pub original_language: Option<String>,
+ pub original_title: Option<String>,
pub overview: String,
pub popularity: f64,
pub poster_path: Option<String>,
- pub release_date: String,
- pub title: String,
- pub video: bool,
+ pub release_date: Option<String>,
+ pub title: Option<String>,
+ pub name: Option<String>,
pub vote_average: f64,
pub vote_count: usize,
- pub budget: usize,
+ pub budget: Option<usize>,
pub homepage: Option<String>,
pub imdb_id: Option<String>,
pub production_companies: Vec<TmdbProductionCompany>,
- pub revenue: usize,
+ pub revenue: Option<usize>,
pub tagline: Option<String>,
}
@@ -70,19 +70,19 @@ pub struct TmdbProductionCompany {
pub logo_path: Option<String>,
}
-pub fn tmdb_search(query: &str, key: &str) -> anyhow::Result<TmdbQuery> {
+pub fn tmdb_search(kind: &str, query: &str, key: &str) -> anyhow::Result<TmdbQuery> {
info!("searching tmdb: {query:?}");
Ok(reqwest::blocking::get(&format!(
- "https://api.themoviedb.org/3/search/movie?query={}&api_key={key}",
+ "https://api.themoviedb.org/3/search/{kind}?query={}&api_key={key}",
query.replace(" ", "+")
))?
.json::<TmdbQuery>()?)
}
-pub fn tmdb_details(id: u64, key: &str) -> anyhow::Result<TmdbDetails> {
+pub fn tmdb_details(kind: &str, id: u64, key: &str) -> anyhow::Result<TmdbDetails> {
info!("fetching details: {id:?}");
Ok(reqwest::blocking::get(&format!(
- "https://api.themoviedb.org/3/movie/{id}?api_key={key}"
+ "https://api.themoviedb.org/3/{kind}/{id}?api_key={key}"
))?
.json()?)
}