From 9aa0cceedb52ddea5b08af7372f4c87f60e401d4 Mon Sep 17 00:00:00 2001 From: metamuffin Date: Thu, 3 Aug 2023 00:01:51 +0200 Subject: not exposing private data --- server/src/import.rs | 17 +++++++++++++++-- server/src/routes/ui/node.rs | 6 +++--- 2 files changed, 18 insertions(+), 5 deletions(-) (limited to 'server/src') diff --git a/server/src/import.rs b/server/src/import.rs index a172ad9..98e0504 100644 --- a/server/src/import.rs +++ b/server/src/import.rs @@ -6,7 +6,7 @@ use crate::{database::Database, federation::Federation, CONF}; use anyhow::{anyhow, bail, Context, Ok}; use async_recursion::async_recursion; -use jellycommon::{Node, RemoteImportOptions}; +use jellycommon::{MediaSource, Node, NodePrivate, RemoteImportOptions}; use log::{error, info}; use std::{ffi::OsStr, fs::File, os::unix::prelude::OsStrExt, path::PathBuf, sync::LazyLock}; use tokio::sync::Semaphore; @@ -119,9 +119,22 @@ async fn import_remote( .context("creating session")?; let node = sess.node(&opts.id).await.context("fetching remote node")?; - if !node.public.children.is_empty() { + if !node.children.is_empty() { todo!() } + let node = Node { + public: node, + private: NodePrivate { + backdrop: None, + poster: None, + import: None, + source: Some(MediaSource::Remote { + host: opts.host, + remote_id: opts.id, + }), + }, + }; + Ok(node) } diff --git a/server/src/routes/ui/node.rs b/server/src/routes/ui/node.rs index 93186bf..a784482 100644 --- a/server/src/routes/ui/node.rs +++ b/server/src/routes/ui/node.rs @@ -17,7 +17,7 @@ use crate::{ uri, }; use anyhow::{anyhow, Context}; -use jellycommon::{Node, NodeKind}; +use jellycommon::{Node, NodeKind, NodePublic}; use rocket::{get, serde::json::Json, Either, State}; #[get("/n/")] @@ -26,7 +26,7 @@ pub async fn r_library_node( id: String, db: &State, aj: AcceptJson, -) -> Result, Json>, MyError> { +) -> Result, Json>, MyError> { let node = db .node .get(&id) @@ -34,7 +34,7 @@ pub async fn r_library_node( .ok_or(anyhow!("node does not exist"))?; if *aj { - return Ok(Either::Right(Json(node))); + return Ok(Either::Right(Json(node.public))); } let children = node -- cgit v1.2.3-70-g09d2