diff --git a/backend/src/schema/resolvers/posts.js b/backend/src/schema/resolvers/posts.js index c7d2eebdb..c9bfca053 100644 --- a/backend/src/schema/resolvers/posts.js +++ b/backend/src/schema/resolvers/posts.js @@ -21,12 +21,22 @@ const maintainPinnedPosts = (params) => { return params } +const filterEventDates = (params) => { + if (params.filter?.eventStart_gte) { + const date = params.filter.eventStart_gte + delete params.filter.eventStart_gte + params.filter = { ...params.filter, OR: [{ eventStart_gte: date }, { eventEnd_gte: date }] } + } + return params +} + export default { Query: { Post: async (object, params, context, resolveInfo) => { params = await filterPostsOfMyGroups(params, context) params = await filterInvisiblePosts(params, context) params = await filterForMutedUsers(params, context) + params = filterEventDates(params) params = await maintainPinnedPosts(params) return neo4jgraphql(object, params, context, resolveInfo) }, diff --git a/backend/src/schema/types/type/Post.gql b/backend/src/schema/types/type/Post.gql index af1e14188..7c93c0b73 100644 --- a/backend/src/schema/types/type/Post.gql +++ b/backend/src/schema/types/type/Post.gql @@ -85,6 +85,7 @@ input _PostFilter { postsInMyGroups: Boolean postType_in: [PostType] eventStart_gte: String + eventEnd_gte: String } enum _PostOrdering {