aboutsummaryrefslogtreecommitdiff
path: root/logic/src/search.rs
diff options
context:
space:
mode:
authormetamuffin <metamuffin@disroot.org>2025-05-26 18:24:16 +0200
committermetamuffin <metamuffin@disroot.org>2025-05-26 18:24:16 +0200
commit3b15caade07e8fbe351fed9aceb3f435bf58368e (patch)
treecce91c229b78061ad36f29d76a76d67c3c737c59 /logic/src/search.rs
parent1eeff5c03e8985d16d4f2b6283741dd82b369bd3 (diff)
downloadjellything-3b15caade07e8fbe351fed9aceb3f435bf58368e.tar
jellything-3b15caade07e8fbe351fed9aceb3f435bf58368e.tar.bz2
jellything-3b15caade07e8fbe351fed9aceb3f435bf58368e.tar.zst
move all direct database access to logic crate
Diffstat (limited to 'logic/src/search.rs')
-rw-r--r--logic/src/search.rs14
1 files changed, 4 insertions, 10 deletions
diff --git a/logic/src/search.rs b/logic/src/search.rs
index 68975f1..304676b 100644
--- a/logic/src/search.rs
+++ b/logic/src/search.rs
@@ -3,23 +3,17 @@
which is licensed under the GNU Affero General Public License (version 3); see /COPYING.
Copyright (C) 2025 metamuffin <metamuffin.org>
*/
-use crate::{node::DatabaseNodeUserDataExt, session::Session};
+use crate::{DATABASE, node::DatabaseNodeUserDataExt, session::Session};
use anyhow::Result;
use jellycommon::{Visibility, api::ApiSearchResponse};
-use jellydb::Database;
use std::time::Instant;
-pub fn search(
- db: &Database,
- session: &Session,
- query: &str,
- page: Option<usize>,
-) -> Result<ApiSearchResponse> {
+pub fn search(session: &Session, query: &str, page: Option<usize>) -> Result<ApiSearchResponse> {
let timing = Instant::now();
- let (count, ids) = db.search(query, 32, page.unwrap_or_default() * 32)?;
+ let (count, ids) = DATABASE.search(query, 32, page.unwrap_or_default() * 32)?;
let mut results = ids
.into_iter()
- .map(|id| db.get_node_with_userdata(id, &session))
+ .map(|id| DATABASE.get_node_with_userdata(id, &session))
.collect::<Result<Vec<_>, anyhow::Error>>()?;
results.retain(|(n, _)| n.visibility >= Visibility::Reduced);
let duration = timing.elapsed();