mirror of
https://github.com/LemmyNet/lemmy.git
synced 2025-02-05 00:24:52 +00:00
9d3a0cef56
* Combined tables try 2
* Finishing up combined report table.
* Fix ts optionals.
* Adding tests, triggers, and history updates for report_combined.
* Adding profile.
* Add cursor pagination to report_combined view (#5244)
* add pagination cursor
* store timestamp instead of id in cursor (partial)
* Revert "store timestamp instead of id in cursor (partial)"
This reverts commit 89359dde4b
.
* use paginated query builder
* Fixing migration and paged API.
* Using dullbananas trigger procedure
* Removing pointless list routes, reorganizing tests.
* Fixing column XOR check.
* Forgot to remove list report actions.
* Cleanup.
* Use internal tagging.
* Fixing api tests.
* Adding a few indexes.
* Fixing migration name.
* Fixing unique constraints.
* Addressing PR comments.
* Fixing api tests.
* Update crates/db_views/src/report_combined_view.rs
Co-authored-by: dullbananas <dull.bananas0@gmail.com>
* Update crates/db_views/src/report_combined_view.rs
Co-authored-by: dullbananas <dull.bananas0@gmail.com>
* Update crates/db_views/src/report_combined_view.rs
Co-authored-by: dullbananas <dull.bananas0@gmail.com>
* Update migrations/2024-12-02-181601_add_report_combined_table/up.sql
Co-authored-by: dullbananas <dull.bananas0@gmail.com>
* Update migrations/2024-12-02-181601_add_report_combined_table/up.sql
Co-authored-by: dullbananas <dull.bananas0@gmail.com>
* Fixing import and fmt.
* Fixing null types in postgres.
* Comment out err.
* Addressing PR comments.
* Removing serialization
---------
Co-authored-by: dullbananas <dull.bananas0@gmail.com>
26 lines
806 B
Rust
26 lines
806 B
Rust
use actix_web::web::{Data, Json, Query};
|
|
use lemmy_api_common::{
|
|
context::LemmyContext,
|
|
person::{GetReportCount, GetReportCountResponse},
|
|
utils::check_community_mod_of_any_or_admin_action,
|
|
};
|
|
use lemmy_db_views::structs::{LocalUserView, ReportCombinedViewInternal};
|
|
use lemmy_utils::error::LemmyResult;
|
|
|
|
#[tracing::instrument(skip(context))]
|
|
pub async fn report_count(
|
|
data: Query<GetReportCount>,
|
|
context: Data<LemmyContext>,
|
|
local_user_view: LocalUserView,
|
|
) -> LemmyResult<Json<GetReportCountResponse>> {
|
|
check_community_mod_of_any_or_admin_action(&local_user_view, &mut context.pool()).await?;
|
|
|
|
let count = ReportCombinedViewInternal::get_report_count(
|
|
&mut context.pool(),
|
|
&local_user_view,
|
|
data.community_id,
|
|
)
|
|
.await?;
|
|
|
|
Ok(Json(GetReportCountResponse { count }))
|
|
}
|