X-Git-Url: http://these/git/?a=blobdiff_plain;f=crates%2Fapi%2Fsrc%2Fpost_report%2Flist.rs;h=f5edab703e201f315c587387ab88822616f3e25a;hb=c8063f3267cf2b3622f1fdc69128c6b55feefbbc;hp=71cde96aae03d03e723bb00ff1479e4b62557f9f;hpb=a2a594b7635db2241602be56250f7d9bf992f7b9;p=lemmy.git diff --git a/crates/api/src/post_report/list.rs b/crates/api/src/post_report/list.rs index 71cde96a..f5edab70 100644 --- a/crates/api/src/post_report/list.rs +++ b/crates/api/src/post_report/list.rs @@ -1,12 +1,12 @@ use crate::Perform; use actix_web::web::Data; use lemmy_api_common::{ + context::LemmyContext, post::{ListPostReports, ListPostReportsResponse}, - utils::{blocking, get_local_user_view_from_jwt}, + utils::local_user_view_from_jwt, }; -use lemmy_db_views::post_report_view::PostReportQueryBuilder; -use lemmy_utils::{error::LemmyError, ConnectionId}; -use lemmy_websocket::LemmyContext; +use lemmy_db_views::post_report_view::PostReportQuery; +use lemmy_utils::error::LemmyError; /// Lists post reports for a community if an id is supplied /// or returns all post reports for communities a user moderates @@ -14,35 +14,28 @@ use lemmy_websocket::LemmyContext; impl Perform for ListPostReports { type Response = ListPostReportsResponse; - #[tracing::instrument(skip(context, _websocket_id))] + #[tracing::instrument(skip(context))] async fn perform( &self, context: &Data, - _websocket_id: Option, ) -> Result { let data: &ListPostReports = self; - let local_user_view = - get_local_user_view_from_jwt(&data.auth, context.pool(), context.secret()).await?; + let local_user_view = local_user_view_from_jwt(&data.auth, context).await?; - let person_id = local_user_view.person.id; - let admin = local_user_view.person.admin; let community_id = data.community_id; - let unresolved_only = data.unresolved_only; + let unresolved_only = data.unresolved_only.unwrap_or_default(); let page = data.page; let limit = data.limit; - let post_reports = blocking(context.pool(), move |conn| { - PostReportQueryBuilder::create(conn, person_id, admin) - .community_id(community_id) - .unresolved_only(unresolved_only) - .page(page) - .limit(limit) - .list() - }) - .await??; + let post_reports = PostReportQuery { + community_id, + unresolved_only, + page, + limit, + } + .list(&mut context.pool(), &local_user_view.person) + .await?; - let res = ListPostReportsResponse { post_reports }; - - Ok(res) + Ok(ListPostReportsResponse { post_reports }) } }