mirror of
https://github.com/IT4Change/Ocelot-Social.git
synced 2025-12-13 07:45:56 +00:00
Remove reviewedByModerator from resources
- moved to Report node, as the report was reviewed by the moderator... a resource can have many reports on them, so we are interested in grouping reviewed/filed by report
This commit is contained in:
parent
eceeecd9b7
commit
d03d669056
@ -1,6 +1,5 @@
|
||||
import uuid from 'uuid/v4'
|
||||
import Resolver from './helpers/Resolver'
|
||||
import { queryReviewedByModerator } from './helpers/reportResource.js'
|
||||
|
||||
export default {
|
||||
Mutation: {
|
||||
@ -72,8 +71,5 @@ export default {
|
||||
post: '-[:COMMENTS]->(related:Post)',
|
||||
},
|
||||
}),
|
||||
reviewedByModerator: async (parent, _params, context, _resolveInfo) => {
|
||||
return queryReviewedByModerator('Comment', parent, context)
|
||||
},
|
||||
},
|
||||
}
|
||||
|
||||
@ -1,21 +0,0 @@
|
||||
export async function queryReviewedByModerator(label, parent, context) {
|
||||
if (typeof parent.reviewedByModerator !== 'undefined') return parent.reviewedByModerator
|
||||
const { id } = parent
|
||||
const statement = `
|
||||
MATCH (resource {id: $id})<-[:BELONGS_TO]-(report:Report)<-[review:REVIEWED]-(moderator:User)
|
||||
WHERE $label IN labels(resource)
|
||||
RETURN moderator
|
||||
ORDER BY report.updatedAt DESC, review.updatedAt DESC
|
||||
LIMIT 1
|
||||
`
|
||||
let reviewedByModerator
|
||||
const session = context.driver.session()
|
||||
try {
|
||||
const result = await session.run(statement, { label, id })
|
||||
const [firstElement] = result.records.map(r => r.get('moderator').properties)
|
||||
reviewedByModerator = firstElement
|
||||
} finally {
|
||||
session.close()
|
||||
}
|
||||
return reviewedByModerator
|
||||
}
|
||||
@ -5,7 +5,6 @@ import { getBlockedUsers, getBlockedByUsers } from './users.js'
|
||||
import { mergeWith, isArray, isEmpty } from 'lodash'
|
||||
import { UserInputError } from 'apollo-server'
|
||||
import Resolver from './helpers/Resolver'
|
||||
import { queryReviewedByModerator } from './helpers/reportResource.js'
|
||||
|
||||
const filterForBlockedUsers = async (params, context) => {
|
||||
if (!context.user) return params
|
||||
@ -342,8 +341,5 @@ export default {
|
||||
}
|
||||
return relatedContributions
|
||||
},
|
||||
reviewedByModerator: async (parent, _params, context, _resolveInfo) => {
|
||||
return queryReviewedByModerator('Post', parent, context)
|
||||
},
|
||||
},
|
||||
}
|
||||
|
||||
@ -3,7 +3,6 @@ import fileUpload from './fileUpload'
|
||||
import { neode } from '../../bootstrap/neo4j'
|
||||
import { UserInputError, ForbiddenError } from 'apollo-server'
|
||||
import Resolver from './helpers/Resolver'
|
||||
import { queryReviewedByModerator } from './helpers/reportResource.js'
|
||||
|
||||
const instance = neode()
|
||||
|
||||
@ -215,8 +214,5 @@ export default {
|
||||
badges: '<-[:REWARDED]-(related:Badge)',
|
||||
},
|
||||
}),
|
||||
reviewedByModerator: async (parent, _params, context, _resolveInfo) => {
|
||||
return queryReviewedByModerator('User', parent, context)
|
||||
},
|
||||
},
|
||||
}
|
||||
|
||||
@ -47,15 +47,6 @@ type Comment {
|
||||
updatedAt: String
|
||||
deleted: Boolean
|
||||
disabled: Boolean
|
||||
reviewedByModerator: User
|
||||
@cypher(
|
||||
statement: """
|
||||
MATCH (this)<-[:BELONGS_TO]-(report:Report)<-[review:REVIEWED]-(moderator:User)
|
||||
RETURN moderator
|
||||
ORDER BY report.updatedAt DESC, review.updatedAt DESC
|
||||
LIMIT 1
|
||||
"""
|
||||
)
|
||||
}
|
||||
|
||||
type Query {
|
||||
|
||||
@ -121,15 +121,6 @@ type Post {
|
||||
visibility: Visibility
|
||||
deleted: Boolean
|
||||
disabled: Boolean
|
||||
reviewedByModerator: User
|
||||
@cypher(
|
||||
statement: """
|
||||
MATCH (this)<-[:BELONGS_TO]-(report:Report)<-[review:REVIEWED]-(moderator:User)
|
||||
RETURN moderator
|
||||
ORDER BY report.updatedAt DESC, review.updatedAt DESC
|
||||
LIMIT 1
|
||||
"""
|
||||
)
|
||||
pinned: Boolean
|
||||
createdAt: String
|
||||
updatedAt: String
|
||||
|
||||
@ -33,15 +33,6 @@ type User {
|
||||
coverImg: String
|
||||
deleted: Boolean
|
||||
disabled: Boolean
|
||||
reviewedByModerator: User
|
||||
@cypher(
|
||||
statement: """
|
||||
MATCH (this)<-[:BELONGS_TO]-(report:Report)<-[review:REVIEWED]-(moderator:User)
|
||||
RETURN moderator
|
||||
ORDER BY report.updatedAt DESC, review.updatedAt DESC
|
||||
LIMIT 1
|
||||
"""
|
||||
)
|
||||
role: UserGroup!
|
||||
publicKey: String
|
||||
invitedBy: User @relation(name: "INVITED", direction: "IN")
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user