From 833bd5ff77e0bc997e942fc5aa5cd5f9e66b4bd4 Mon Sep 17 00:00:00 2001 From: Moriz Wahl Date: Tue, 4 Oct 2022 02:01:59 +0200 Subject: [PATCH] use invisible post filter --- backend/src/schema/resolvers/posts.js | 31 ++++----------------------- 1 file changed, 4 insertions(+), 27 deletions(-) diff --git a/backend/src/schema/resolvers/posts.js b/backend/src/schema/resolvers/posts.js index 65f7a1b33..aa861f2b9 100644 --- a/backend/src/schema/resolvers/posts.js +++ b/backend/src/schema/resolvers/posts.js @@ -5,6 +5,7 @@ import { UserInputError } from 'apollo-server' import { mergeImage, deleteImage } from './images/images' import Resolver from './helpers/Resolver' import { filterForMutedUsers } from './helpers/filterForMutedUsers' +import { filterInvisiblePosts } from './helpers/filterInvisiblePosts' import CONFIG from '../../config' const maintainPinnedPosts = (params) => { @@ -17,46 +18,22 @@ const maintainPinnedPosts = (params) => { return params } -const postAccessFilter = (params, user) => { - const { id } = user - const groupFilter = { - group: { - OR: [{ groupType_in: 'public' }, { memberIds_includes: id }], - }, - } - if (isEmpty(params.filter)) { - params.filter = groupFilter - } else { - if (isEmpty(params.filter.group)) { - // console.log(params.filter) - params.filter = { AND: [groupFilter, { ...params.filter }] } - // console.log(params.filter) - } else { - params.filter.group = { - AND: [{ ...groupFilter.group }, { ...params.filter.group }], - } - } - } - // console.log(params.filter.group) - return params -} - export default { Query: { Post: async (object, params, context, resolveInfo) => { + params = await filterInvisiblePosts(params, context) params = await filterForMutedUsers(params, context) params = await maintainPinnedPosts(params) - params = await postAccessFilter(params, context.user) return neo4jgraphql(object, params, context, resolveInfo) }, findPosts: async (object, params, context, resolveInfo) => { + params = await filterInvisiblePosts(params, context) params = await filterForMutedUsers(params, context) - params = await postAccessFilter(params) return neo4jgraphql(object, params, context, resolveInfo) }, profilePagePosts: async (object, params, context, resolveInfo) => { + params = await filterInvisiblePosts(params, context) params = await filterForMutedUsers(params, context) - params = await postAccessFilter(params) return neo4jgraphql(object, params, context, resolveInfo) }, PostsEmotionsCountByEmotion: async (object, params, context, resolveInfo) => {