diff options
author | tpart <tpart120@proton.me> | 2023-08-05 19:49:12 +0200 |
---|---|---|
committer | tpart <tpart120@proton.me> | 2023-08-05 19:49:12 +0200 |
commit | b22f639737e2ee0152969e2106869538a3009ce6 (patch) | |
tree | df40af2ec87c390c75cdc05470481fec92c73559 /server | |
parent | 06688775bc7bffaf96be3891a936aba32021bd57 (diff) | |
parent | 042f41a8750de8c0d2ecf30d147a62f03f758e3e (diff) | |
download | jellything-b22f639737e2ee0152969e2106869538a3009ce6.tar jellything-b22f639737e2ee0152969e2106869538a3009ce6.tar.bz2 jellything-b22f639737e2ee0152969e2106869538a3009ce6.tar.zst |
Merge branch 'master' of https://codeberg.org/metamuffin/jellything
Diffstat (limited to 'server')
-rw-r--r-- | server/src/import.rs | 18 | ||||
-rw-r--r-- | server/src/main.rs | 3 | ||||
-rw-r--r-- | server/src/routes/ui/node.rs | 8 |
3 files changed, 17 insertions, 12 deletions
diff --git a/server/src/import.rs b/server/src/import.rs index d72690c..872681f 100644 --- a/server/src/import.rs +++ b/server/src/import.rs @@ -7,7 +7,11 @@ use crate::{database::Database, federation::Federation, CONF}; use anyhow::{anyhow, bail, Context, Ok}; use async_recursion::async_recursion; use base64::Engine; -use futures::future::join_all; +use futures::{ + future::join_all, + stream::{FuturesOrdered, FuturesUnordered}, + StreamExt, +}; use jellyclient::Session; use jellycommon::{AssetLocation, MediaSource, Node, NodePrivate, RemoteImportOptions}; use log::{debug, error, info}; @@ -63,16 +67,14 @@ pub async fn import_path( .ok_or(anyhow!("non-root node requires parent"))? }; - let all = join_all( - children_paths - .into_iter() - .map(|p| import_path(p, db, fed, Some(identifier.clone()))), - ) - .await; + let mut all: FuturesUnordered<_> = children_paths + .into_iter() + .map(|p| import_path(p, db, fed, Some(identifier.clone()))) + .collect(); let mut children_ids = Vec::new(); let mut errs = 0; - for k in all { + while let Some(k) = all.next().await { match k { core::result::Result::Ok((els, errs2)) => { errs += errs2; diff --git a/server/src/main.rs b/server/src/main.rs index 3c5f7f9..60b5135 100644 --- a/server/src/main.rs +++ b/server/src/main.rs @@ -9,7 +9,6 @@ use database::Database; use federation::Federation; use jellycommon::config::GlobalConfig; use jellyremuxer::RemuxerContext; -use log::error; use once_cell::sync::Lazy; use routes::build_rocket; use std::fs::File; @@ -43,7 +42,7 @@ async fn async_main() { let federation = Federation::initialize(); database.create_admin(); // if let Err(err) = import::import(&database, &federation).await { - // error!("import not sucessful: {err:?}") + // log::error!("import not sucessful: {err:?}") // } build_rocket(remuxer, database, federation) .launch() diff --git a/server/src/routes/ui/node.rs b/server/src/routes/ui/node.rs index c87e56b..abdd299 100644 --- a/server/src/routes/ui/node.rs +++ b/server/src/routes/ui/node.rs @@ -86,9 +86,13 @@ markup::define! { } } NodePage<'a>(id: &'a str, node: &'a NodePublic, children: &'a Vec<(String, NodePublic)>) { - img.backdrop[src=uri!(r_item_assets(id, AssetRole::Backdrop))]; + @if !matches!(node.kind, NodeKind::Collection) { + img.backdrop[src=uri!(r_item_assets(id, AssetRole::Backdrop))]; + } div.page.item { - div.banner { img[src=uri!(r_item_assets(id, AssetRole::Poster))]; } + @if !matches!(node.kind, NodeKind::Collection) { + div.banner { img[src=uri!(r_item_assets(id, AssetRole::Poster))]; } + } div.title { h1 { @node.title } @if node.media.is_some() { a.play[href=&player_uri(id)] { "Watch now" }} |