diff options
-rw-r--r-- | import/src/lib.rs | 20 | ||||
-rw-r--r-- | import/src/trakt.rs | 3 | ||||
-rw-r--r-- | server/src/routes/compat/jellyfin/mod.rs | 11 | ||||
-rw-r--r-- | server/src/routes/mod.rs | 6 | ||||
-rw-r--r-- | tool/src/add.rs | 1 |
5 files changed, 39 insertions, 2 deletions
diff --git a/import/src/lib.rs b/import/src/lib.rs index eee7a42..0d8a10a 100644 --- a/import/src/lib.rs +++ b/import/src/lib.rs @@ -460,6 +460,7 @@ fn apply_node_flag( "movie" | "" => TraktKind::Movie, "show" => TraktKind::Show, "season" => TraktKind::Season, + "episode" => TraktKind::Episode, _ => bail!("unknown trakt kind"), }; apply_trakt_tmdb(db, rthandle, apis, node, kind, id)?; @@ -476,6 +477,25 @@ fn apply_node_flag( Ok(()) })?; } + if let Some(kind) = flag.strip_prefix("kind-").or(flag.strip_prefix("kind=")) { + let kind = match kind { + "movie" => NodeKind::Movie, + "video" => NodeKind::Video, + "music" => NodeKind::Music, + "short_form_video" => NodeKind::ShortFormVideo, + "collection" => NodeKind::Collection, + "channel" => NodeKind::Channel, + "show" => NodeKind::Show, + "series" => NodeKind::Series, + "season" => NodeKind::Season, + "episode" => NodeKind::Episode, + _ => bail!("unknown node kind"), + }; + db.update_node_init(node, |node| { + node.kind = kind; + Ok(()) + })?; + } Ok(()) } diff --git a/import/src/trakt.rs b/import/src/trakt.rs index 98532c5..c7a25ad 100644 --- a/import/src/trakt.rs +++ b/import/src/trakt.rs @@ -8,6 +8,7 @@ use jellybase::{ cache::async_cache_memory, common::{Appearance, ObjectIds, PeopleGroup, Person, TraktKind}, }; +use log::info; use reqwest::{ header::{HeaderMap, HeaderName, HeaderValue}, Client, ClientBuilder, @@ -76,6 +77,7 @@ impl Trakt { async_cache_memory( &["api-trakt-lookup", &format!("{id} {extended}")], || async move { + info!("trakt lookup {kind:?}:{id:?}"); let url = format!( "https://api.trakt.tv/{}/{}{}", kind.plural(), @@ -98,6 +100,7 @@ impl Trakt { async_cache_memory( &["api-trakt-people", &format!("{id} {extended}")], || async move { + info!("trakt people {kind:?}:{id:?}"); let url = format!( "https://api.trakt.tv/{}/{}/people{}", kind.plural(), diff --git a/server/src/routes/compat/jellyfin/mod.rs b/server/src/routes/compat/jellyfin/mod.rs index 9c0c6fb..eac2f55 100644 --- a/server/src/routes/compat/jellyfin/mod.rs +++ b/server/src/routes/compat/jellyfin/mod.rs @@ -509,6 +509,17 @@ struct AuthData { username: String, } +#[post("/Users/AuthenticateByName", data = "<data>")] +#[allow(private_interfaces)] +pub fn r_jellyfin_users_authenticatebyname_case( + client_addr: IpAddr, + database: &State<Database>, + data: Json<AuthData>, + jar: &CookieJar, +) -> MyResult<Json<Value>> { + r_jellyfin_users_authenticatebyname(client_addr, database, data, jar) +} + #[post("/Users/authenticatebyname", data = "<data>")] #[allow(private_interfaces)] pub fn r_jellyfin_users_authenticatebyname( diff --git a/server/src/routes/mod.rs b/server/src/routes/mod.rs index dae4909..371f088 100644 --- a/server/src/routes/mod.rs +++ b/server/src/routes/mod.rs @@ -20,8 +20,9 @@ use compat::{ r_jellyfin_sessions_playing_progress, r_jellyfin_shows_nextup, r_jellyfin_socket, r_jellyfin_system_endpoint, r_jellyfin_system_info, r_jellyfin_system_info_public, r_jellyfin_system_info_public_case, r_jellyfin_users_authenticatebyname, - r_jellyfin_users_id, r_jellyfin_users_items, r_jellyfin_users_items_item, - r_jellyfin_users_public, r_jellyfin_users_views, r_jellyfin_video_stream, + r_jellyfin_users_authenticatebyname_case, r_jellyfin_users_id, r_jellyfin_users_items, + r_jellyfin_users_items_item, r_jellyfin_users_public, r_jellyfin_users_views, + r_jellyfin_video_stream, }, youtube::{r_youtube_channel, r_youtube_embed, r_youtube_watch}, }; @@ -200,6 +201,7 @@ pub fn build_rocket(database: Database, federation: Federation) -> Rocket<Build> r_jellyfin_system_info_public, r_jellyfin_system_info, r_jellyfin_users_authenticatebyname, + r_jellyfin_users_authenticatebyname_case, r_jellyfin_users_id, r_jellyfin_users_items_item, r_jellyfin_users_items, diff --git a/tool/src/add.rs b/tool/src/add.rs index 06487c9..a0a3951 100644 --- a/tool/src/add.rs +++ b/tool/src/add.rs @@ -72,6 +72,7 @@ pub async fn add(action: Action) -> anyhow::Result<()> { TraktKind::Movie => "movie", TraktKind::Show => "show", TraktKind::Season => "season", + TraktKind::Episode => "episode", _ => unreachable!(), }, trakt_object.ids.trakt.unwrap() |