mirror of
https://github.com/Ocelot-Social-Community/Ocelot-Social.git
synced 2026-01-20 20:01:25 +00:00
22 lines
770 B
JavaScript
22 lines
770 B
JavaScript
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
|
|
}
|