use lemmy_api_common::{
context::LemmyContext,
person::{GetPersonDetails, GetPersonDetailsResponse},
- utils::{check_private_instance, is_admin, local_user_view_from_jwt_opt},
+ utils::{check_private_instance, local_user_view_from_jwt_opt},
};
use lemmy_db_schema::{
source::{local_site::LocalSite, person::Person},
let local_user_view = local_user_view_from_jwt_opt(data.auth.as_ref(), &context).await;
let local_site = LocalSite::read(&mut context.pool()).await?;
- let is_admin = local_user_view.as_ref().map(|luv| is_admin(luv).is_ok());
check_private_instance(&local_user_view, &local_site)?;
let sort = data.sort;
let page = data.page;
let limit = data.limit;
- let saved_only = data.saved_only;
+ let saved_only = data.saved_only.unwrap_or_default();
let community_id = data.community_id;
- let local_user = local_user_view.map(|l| l.local_user);
- let local_user_clone = local_user.clone();
+ // If its saved only, you don't care what creator it was
+ // Or, if its not saved, then you only want it for that specific creator
+ let creator_id = if !saved_only {
+ Some(person_details_id)
+ } else {
+ None
+ };
let posts = PostQuery {
sort,
saved_only,
- local_user:local_user.as_ref(),
+ local_user: local_user_view.as_ref(),
community_id,
- is_mod_or_admin: is_admin,
+ is_profile_view: true,
page,
limit,
- creator_id:
- // If its saved only, you don't care what creator it was
- // Or, if its not saved, then you only want it for that specific creator
- if !saved_only.unwrap_or(false) {
- Some(person_details_id)
- } else {
- None
- }
- ,
+ creator_id,
..Default::default()
}
.list(&mut context.pool())
.await?;
let comments = CommentQuery {
- local_user: (local_user_clone.as_ref()),
- sort: (sort.map(post_to_comment_sort_type)),
- saved_only: (saved_only),
- show_deleted_and_removed: (Some(false)),
- community_id: (community_id),
- page: (page),
- limit: (limit),
- creator_id: (
- // If its saved only, you don't care what creator it was
- // Or, if its not saved, then you only want it for that specific creator
- if !saved_only.unwrap_or(false) {
- Some(person_details_id)
- } else {
- None
- }
- ),
+ local_user: local_user_view.as_ref(),
+ sort: sort.map(post_to_comment_sort_type),
+ saved_only,
+ community_id,
+ is_profile_view: true,
+ page,
+ limit,
+ creator_id,
..Default::default()
}
.list(&mut context.pool())