-#[async_trait::async_trait(?Send)]
-impl Perform for CreatePostReport {
- type Response = PostReportResponse;
-
- #[tracing::instrument(skip(context, websocket_id))]
- async fn perform(
- &self,
- context: &Data<LemmyContext>,
- websocket_id: Option<ConnectionId>,
- ) -> Result<PostReportResponse, LemmyError> {
- let data: &CreatePostReport = self;
- let local_user_view =
- get_local_user_view_from_jwt(&data.auth, context.pool(), context.secret()).await?;
- let local_site = LocalSite::read(context.pool()).await?;
-
- let reason = self.reason.trim();
- check_report_reason(reason, &local_site)?;
-
- let person_id = local_user_view.person.id;
- let post_id = data.post_id;
- let post_view = PostView::read(context.pool(), post_id, None).await?;
+#[tracing::instrument(skip(context))]
+pub async fn create_post_report(
+ data: Json<CreatePostReport>,
+ context: Data<LemmyContext>,
+) -> Result<Json<PostReportResponse>, LemmyError> {
+ let local_user_view = local_user_view_from_jwt(&data.auth, &context).await?;
+ let local_site = LocalSite::read(&mut context.pool()).await?;