mirror of
https://github.com/Ocelot-Social-Community/Ocelot-Social.git
synced 2025-12-13 07:46:06 +00:00
Rename decide mutation to review
This commit is contained in:
parent
02bdc5ea5d
commit
ec8910d6eb
@ -147,7 +147,7 @@ const permissions = shield(
|
||||
shout: isAuthenticated,
|
||||
unshout: isAuthenticated,
|
||||
changePassword: isAuthenticated,
|
||||
decide: isModerator,
|
||||
review: isModerator,
|
||||
CreateComment: isAuthenticated,
|
||||
UpdateComment: isAuthor,
|
||||
DeleteComment: isAuthor,
|
||||
|
||||
@ -111,9 +111,9 @@ beforeAll(async () => {
|
||||
mutate = client.mutate
|
||||
|
||||
authenticatedUser = await moderator.toJson()
|
||||
const decideMutation = gql`
|
||||
const reviewMutation = gql`
|
||||
mutation($resourceId: ID!, $disable: Boolean, $closed: Boolean) {
|
||||
decide(resourceId: $resourceId, disable: $disable, closed: $closed) {
|
||||
review(resourceId: $resourceId, disable: $disable, closed: $closed) {
|
||||
disable
|
||||
}
|
||||
}
|
||||
@ -124,9 +124,9 @@ beforeAll(async () => {
|
||||
closed: false,
|
||||
}
|
||||
await Promise.all([
|
||||
mutate({ mutation: decideMutation, variables: { ...disableVariables, resourceId: 'c1' } }),
|
||||
mutate({ mutation: decideMutation, variables: { ...disableVariables, resourceId: 'u2' } }),
|
||||
mutate({ mutation: decideMutation, variables: { ...disableVariables, resourceId: 'p2' } }),
|
||||
mutate({ mutation: reviewMutation, variables: { ...disableVariables, resourceId: 'c1' } }),
|
||||
mutate({ mutation: reviewMutation, variables: { ...disableVariables, resourceId: 'u2' } }),
|
||||
mutate({ mutation: reviewMutation, variables: { ...disableVariables, resourceId: 'p2' } }),
|
||||
])
|
||||
authenticatedUser = null
|
||||
})
|
||||
|
||||
@ -25,14 +25,15 @@
|
||||
|
||||
export default {
|
||||
Mutation: {
|
||||
decide: async (_object, params, context, _resolveInfo) => {
|
||||
// Wolle console.log('params: ', params)
|
||||
review: async (_object, params, context, _resolveInfo) => {
|
||||
const { resourceId } = params
|
||||
// Wolle console.log('resourceId: ', resourceId)
|
||||
let { disable, closed } = params
|
||||
// Wolle console.log('disable: ', disable)
|
||||
// console.log('closed: ', closed)
|
||||
disable = disable === undefined ? null : disable
|
||||
closed = closed === undefined ? null : closed
|
||||
// Wolle console.log('disable: ', disable)
|
||||
// console.log('closed: ', closed)
|
||||
const { user: moderator, driver } = context
|
||||
|
||||
let createdRelationshipWithNestedAttributes = null // return value
|
||||
@ -134,10 +135,10 @@ export default {
|
||||
MERGE (claim)<-[review:REVIEWED]-(moderator)
|
||||
ON CREATE SET review.createdAt = $dateTime, review.updatedAt = review.createdAt,
|
||||
review.disable = CASE WHEN $disable IS NULL
|
||||
THEN false
|
||||
THEN claim.disable
|
||||
ELSE $disable END,
|
||||
review.closed = CASE WHEN $closed IS NULL
|
||||
THEN false
|
||||
THEN claim.closed
|
||||
ELSE $closed END
|
||||
ON MATCH SET
|
||||
review.updatedAt = $dateTime,
|
||||
@ -151,7 +152,7 @@ export default {
|
||||
SET claim.disable = review.disable, claim.closed = review.closed
|
||||
SET resource.disabled = review.disable
|
||||
|
||||
RETURN moderator, review, claim {.id}, resource, labels(resource)[0] AS type
|
||||
RETURN moderator, review, claim, resource, labels(resource)[0] AS type
|
||||
`
|
||||
|
||||
// Wolle console.log('cypher: ', cypher)
|
||||
@ -191,18 +192,18 @@ export default {
|
||||
})
|
||||
const txResult = await mutateDecisionWriteTxResultPromise
|
||||
if (!txResult[0]) return null
|
||||
// const { decision, resource, moderator: moderatorInResult, type } = txResult[0]
|
||||
// createdRelationshipWithNestedAttributes = {
|
||||
// ...decision.properties,
|
||||
// moderator: moderatorInResult.properties,
|
||||
// type,
|
||||
// post: null,
|
||||
// comment: null,
|
||||
// user: null,
|
||||
// }
|
||||
const { moderator: moderatorInResult, review, claim, resource, type } = txResult[0]
|
||||
// Wolle console.log('review.properties.disable: ', review.properties.disable)
|
||||
// console.log('claim.properties.disable: ', claim.properties.disable)
|
||||
// console.log('resource.properties.disabled: ', resource.properties.disabled)
|
||||
// console.log('review.properties.closed: ', review.properties.closed)
|
||||
// console.log('claim.properties.closed: ', claim.properties.closed)
|
||||
createdRelationshipWithNestedAttributes = {
|
||||
...review.properties,
|
||||
claimId: claim.properties.id,
|
||||
claimUpdatedAt: claim.properties.updatedAt,
|
||||
claimDisable: claim.properties.disable,
|
||||
claimClosed: claim.properties.closed,
|
||||
moderator: moderatorInResult.properties,
|
||||
claimId: claim.id,
|
||||
type,
|
||||
|
||||
@ -17,9 +17,9 @@ let query,
|
||||
moderator,
|
||||
nonModerator
|
||||
|
||||
const decideMutation = gql`
|
||||
const reviewMutation = gql`
|
||||
mutation($resourceId: ID!, $disable: Boolean, $closed: Boolean) {
|
||||
decide(resourceId: $resourceId, disable: $disable, closed: $closed) {
|
||||
review(resourceId: $resourceId, disable: $disable, closed: $closed) {
|
||||
post {
|
||||
id
|
||||
}
|
||||
@ -96,11 +96,11 @@ describe('moderate resources', () => {
|
||||
await factory.cleanDatabase()
|
||||
})
|
||||
|
||||
describe('decide to disable', () => {
|
||||
describe('review to disable', () => {
|
||||
describe('unauthenticated', () => {
|
||||
it('throws authorization error', async () => {
|
||||
await expect(
|
||||
mutate({ mutation: decideMutation, variables: disableVariables }),
|
||||
mutate({ mutation: reviewMutation, variables: disableVariables }),
|
||||
).resolves.toMatchObject({
|
||||
errors: [{ message: 'Not Authorised!' }],
|
||||
})
|
||||
@ -121,7 +121,7 @@ describe('moderate resources', () => {
|
||||
|
||||
it('throws authorization error', async () => {
|
||||
await expect(
|
||||
mutate({ mutation: decideMutation, variables: disableVariables }),
|
||||
mutate({ mutation: reviewMutation, variables: disableVariables }),
|
||||
).resolves.toMatchObject({
|
||||
errors: [{ message: 'Not Authorised!' }],
|
||||
})
|
||||
@ -144,9 +144,9 @@ describe('moderate resources', () => {
|
||||
|
||||
it('returns null', async () => {
|
||||
await expect(
|
||||
mutate({ mutation: decideMutation, variables: disableVariables }),
|
||||
mutate({ mutation: reviewMutation, variables: disableVariables }),
|
||||
).resolves.toMatchObject({
|
||||
data: { decide: null },
|
||||
data: { review: null },
|
||||
})
|
||||
})
|
||||
})
|
||||
@ -165,9 +165,9 @@ describe('moderate resources', () => {
|
||||
resourceId: 'comment-id',
|
||||
}
|
||||
await expect(
|
||||
mutate({ mutation: decideMutation, variables: disableVariables }),
|
||||
mutate({ mutation: reviewMutation, variables: disableVariables }),
|
||||
).resolves.toMatchObject({
|
||||
data: { decide: { comment: { id: 'comment-id' } } },
|
||||
data: { review: { comment: { id: 'comment-id' } } },
|
||||
errors: undefined,
|
||||
})
|
||||
})
|
||||
@ -190,9 +190,9 @@ describe('moderate resources', () => {
|
||||
query({ query: commentQuery, variables: resourceVariables }),
|
||||
).resolves.toMatchObject(before)
|
||||
await expect(
|
||||
mutate({ mutation: decideMutation, variables: disableVariables }),
|
||||
mutate({ mutation: reviewMutation, variables: disableVariables }),
|
||||
).resolves.toMatchObject({
|
||||
data: { decide: { comment: { id: 'comment-id' } } },
|
||||
data: { review: { comment: { id: 'comment-id' } } },
|
||||
})
|
||||
await expect(
|
||||
query({ query: commentQuery, variables: resourceVariables }),
|
||||
@ -214,9 +214,9 @@ describe('moderate resources', () => {
|
||||
query({ query: commentQuery, variables: resourceVariables }),
|
||||
).resolves.toMatchObject(before)
|
||||
await expect(
|
||||
mutate({ mutation: decideMutation, variables: disableVariables }),
|
||||
mutate({ mutation: reviewMutation, variables: disableVariables }),
|
||||
).resolves.toMatchObject({
|
||||
data: { decide: { comment: { id: 'comment-id' } } },
|
||||
data: { review: { comment: { id: 'comment-id' } } },
|
||||
})
|
||||
await expect(
|
||||
query({ query: commentQuery, variables: resourceVariables }),
|
||||
@ -237,9 +237,9 @@ describe('moderate resources', () => {
|
||||
resourceId: 'sample-post-id',
|
||||
}
|
||||
await expect(
|
||||
mutate({ mutation: decideMutation, variables: disableVariables }),
|
||||
mutate({ mutation: reviewMutation, variables: disableVariables }),
|
||||
).resolves.toMatchObject({
|
||||
data: { decide: { post: { id: 'sample-post-id' } } },
|
||||
data: { review: { post: { id: 'sample-post-id' } } },
|
||||
})
|
||||
})
|
||||
|
||||
@ -262,9 +262,9 @@ describe('moderate resources', () => {
|
||||
query({ query: postQuery, variables: resourceVariables }),
|
||||
).resolves.toMatchObject(before)
|
||||
await expect(
|
||||
mutate({ mutation: decideMutation, variables: disableVariables }),
|
||||
mutate({ mutation: reviewMutation, variables: disableVariables }),
|
||||
).resolves.toMatchObject({
|
||||
data: { decide: { post: { id: 'sample-post-id' } } },
|
||||
data: { review: { post: { id: 'sample-post-id' } } },
|
||||
})
|
||||
await expect(
|
||||
query({ query: postQuery, variables: resourceVariables }),
|
||||
@ -286,9 +286,9 @@ describe('moderate resources', () => {
|
||||
query({ query: postQuery, variables: resourceVariables }),
|
||||
).resolves.toMatchObject(before)
|
||||
await expect(
|
||||
mutate({ mutation: decideMutation, variables: disableVariables }),
|
||||
mutate({ mutation: reviewMutation, variables: disableVariables }),
|
||||
).resolves.toMatchObject({
|
||||
data: { decide: { post: { id: 'sample-post-id' } } },
|
||||
data: { review: { post: { id: 'sample-post-id' } } },
|
||||
})
|
||||
await expect(
|
||||
query({ query: postQuery, variables: resourceVariables }),
|
||||
@ -307,7 +307,7 @@ describe('moderate resources', () => {
|
||||
resourceId: 'sample-post-id',
|
||||
}
|
||||
await expect(
|
||||
mutate({ mutation: decideMutation, variables: enableVariables }),
|
||||
mutate({ mutation: reviewMutation, variables: enableVariables }),
|
||||
).resolves.toMatchObject({
|
||||
errors: [{ message: 'Not Authorised!' }],
|
||||
})
|
||||
@ -332,7 +332,7 @@ describe('moderate resources', () => {
|
||||
resourceId: 'sample-post-id',
|
||||
}
|
||||
await expect(
|
||||
mutate({ mutation: decideMutation, variables: enableVariables }),
|
||||
mutate({ mutation: reviewMutation, variables: enableVariables }),
|
||||
).resolves.toMatchObject({
|
||||
errors: [{ message: 'Not Authorised!' }],
|
||||
})
|
||||
@ -355,9 +355,9 @@ describe('moderate resources', () => {
|
||||
resourceId: 'sample-tag-id',
|
||||
}
|
||||
await expect(
|
||||
mutate({ mutation: decideMutation, variables: enableVariables }),
|
||||
mutate({ mutation: reviewMutation, variables: enableVariables }),
|
||||
).resolves.toMatchObject({
|
||||
data: { decide: null },
|
||||
data: { review: null },
|
||||
})
|
||||
})
|
||||
})
|
||||
@ -378,14 +378,14 @@ describe('moderate resources', () => {
|
||||
await factory.create('Comment', {
|
||||
id: 'comment-id',
|
||||
})
|
||||
await mutate({ mutation: decideMutation, variables: disableVariables })
|
||||
await mutate({ mutation: reviewMutation, variables: disableVariables })
|
||||
})
|
||||
|
||||
it('returns enabled resource id', async () => {
|
||||
await expect(
|
||||
mutate({ mutation: decideMutation, variables: enableVariables }),
|
||||
mutate({ mutation: reviewMutation, variables: enableVariables }),
|
||||
).resolves.toMatchObject({
|
||||
data: { decide: { comment: { id: 'comment-id' } } },
|
||||
data: { review: { comment: { id: 'comment-id' } } },
|
||||
})
|
||||
})
|
||||
|
||||
@ -397,9 +397,9 @@ describe('moderate resources', () => {
|
||||
}
|
||||
|
||||
await expect(
|
||||
mutate({ mutation: decideMutation, variables: enableVariables }),
|
||||
mutate({ mutation: reviewMutation, variables: enableVariables }),
|
||||
).resolves.toMatchObject({
|
||||
data: { decide: { comment: { id: 'comment-id' } } },
|
||||
data: { review: { comment: { id: 'comment-id' } } },
|
||||
})
|
||||
await expect(
|
||||
query({ query: commentQuery, variables: resourceVariables }),
|
||||
@ -412,9 +412,9 @@ describe('moderate resources', () => {
|
||||
}
|
||||
|
||||
await expect(
|
||||
mutate({ mutation: decideMutation, variables: enableVariables }),
|
||||
mutate({ mutation: reviewMutation, variables: enableVariables }),
|
||||
).resolves.toMatchObject({
|
||||
data: { decide: { comment: { id: 'comment-id' } } },
|
||||
data: { review: { comment: { id: 'comment-id' } } },
|
||||
})
|
||||
await expect(
|
||||
query({ query: commentQuery, variables: resourceVariables }),
|
||||
@ -436,14 +436,14 @@ describe('moderate resources', () => {
|
||||
await factory.create('Post', {
|
||||
id: 'post-id',
|
||||
})
|
||||
await mutate({ mutation: decideMutation, variables: disableVariables })
|
||||
await mutate({ mutation: reviewMutation, variables: disableVariables })
|
||||
})
|
||||
|
||||
it('returns enabled resource id', async () => {
|
||||
await expect(
|
||||
mutate({ mutation: decideMutation, variables: enableVariables }),
|
||||
mutate({ mutation: reviewMutation, variables: enableVariables }),
|
||||
).resolves.toMatchObject({
|
||||
data: { decide: { post: { id: 'post-id' } } },
|
||||
data: { review: { post: { id: 'post-id' } } },
|
||||
})
|
||||
})
|
||||
|
||||
@ -452,9 +452,9 @@ describe('moderate resources', () => {
|
||||
data: { Post: [{ id: 'post-id', reviewedByModerator: { id: 'moderator-id' } }] },
|
||||
}
|
||||
await expect(
|
||||
mutate({ mutation: decideMutation, variables: enableVariables }),
|
||||
mutate({ mutation: reviewMutation, variables: enableVariables }),
|
||||
).resolves.toMatchObject({
|
||||
data: { decide: { post: { id: 'post-id' } } },
|
||||
data: { review: { post: { id: 'post-id' } } },
|
||||
})
|
||||
await expect(
|
||||
query({ query: postQuery, variables: resourceVariables }),
|
||||
@ -467,9 +467,9 @@ describe('moderate resources', () => {
|
||||
}
|
||||
|
||||
await expect(
|
||||
mutate({ mutation: decideMutation, variables: enableVariables }),
|
||||
mutate({ mutation: reviewMutation, variables: enableVariables }),
|
||||
).resolves.toMatchObject({
|
||||
data: { decide: { post: { id: 'post-id' } } },
|
||||
data: { review: { post: { id: 'post-id' } } },
|
||||
})
|
||||
await expect(
|
||||
query({ query: postQuery, variables: resourceVariables }),
|
||||
|
||||
@ -20,7 +20,7 @@ const disable = async id => {
|
||||
await mutate({
|
||||
mutation: gql`
|
||||
mutation($resourceId: ID!, $disable: Boolean, $closed: Boolean) {
|
||||
decide(resourceId: $resourceId, disable: $disable, closed: $closed) {
|
||||
review(resourceId: $resourceId, disable: $disable, closed: $closed) {
|
||||
disable
|
||||
}
|
||||
}
|
||||
|
||||
@ -8,16 +8,10 @@ type REPORTED {
|
||||
claimUpdatedAt: String!
|
||||
claimClosed: Boolean!
|
||||
|
||||
# Wolle decision: DECIDED
|
||||
# @cypher(statement: "MATCH (resource)<-[decision:DECIDED {uuid: $decisionUuid}]-(user:User) RETURN decision")
|
||||
|
||||
submitter: User
|
||||
@cypher(statement: "MATCH (resource)<-[:REPORTED]-(user:User) RETURN user")
|
||||
# not yet supported
|
||||
# resource: ReportResource
|
||||
# @cypher(statement: "MATCH (resource)<-[:REPORTED]-(user:User) RETURN resource")
|
||||
# @cypher(statement: "MATCH (resource)<-[:REPORTED]-(user:User) RETURN user")
|
||||
type: String
|
||||
@cypher(statement: "MATCH (resource)<-[:REPORTED]-(user:User) RETURN labels(resource)[0]")
|
||||
# @cypher(statement: "MATCH (resource)<-[:REPORTED]-(user:User) RETURN labels(resource)[0]")
|
||||
user: User
|
||||
post: Post
|
||||
comment: Comment
|
||||
|
||||
@ -5,13 +5,16 @@ type REVIEWED {
|
||||
# reasonDescription: String
|
||||
disable: Boolean!
|
||||
closed: Boolean!
|
||||
|
||||
claimId: ID!
|
||||
# Wolle last: Boolean!
|
||||
claimDisable: Boolean!
|
||||
claimUpdatedAt: String!
|
||||
claimClosed: Boolean!
|
||||
|
||||
moderator: User
|
||||
# @cypher(statement: "MATCH (resource)<-[:DECIDED]-(moderator:User) RETURN moderator")
|
||||
# Wolle @cypher(statement: "MATCH (resource)<-[:DECIDED]-(moderator:User) RETURN moderator")
|
||||
# not yet supported
|
||||
# resource: ReportResource
|
||||
# Wolle resource: ReportResource
|
||||
# @cypher(statement: "MATCH (resource)<-[:DECIDED]-(:User) RETURN resource")
|
||||
type: String
|
||||
# @cypher(statement: "MATCH (resource)<-[:DECIDED]-(user:User) RETURN labels(resource)[0]")
|
||||
@ -21,5 +24,5 @@ type REVIEWED {
|
||||
}
|
||||
|
||||
type Mutation {
|
||||
decide(resourceId: ID!, disable: Boolean, closed: Boolean): REVIEWED
|
||||
review(resourceId: ID!, disable: Boolean, closed: Boolean): REVIEWED
|
||||
}
|
||||
|
||||
@ -737,10 +737,10 @@ const languages = ['de', 'en', 'es', 'fr', 'it', 'pt', 'pl']
|
||||
])
|
||||
authenticatedUser = null
|
||||
|
||||
// only decide after report !!!
|
||||
const decideMutation = gql`
|
||||
// only review after report !!!
|
||||
const reviewMutation = gql`
|
||||
mutation($resourceId: ID!, $disable: Boolean, $closed: Boolean) {
|
||||
decide(resourceId: $resourceId, disable: $disable, closed: $closed) {
|
||||
review(resourceId: $resourceId, disable: $disable, closed: $closed) {
|
||||
disable
|
||||
}
|
||||
}
|
||||
@ -753,14 +753,14 @@ const languages = ['de', 'en', 'es', 'fr', 'it', 'pt', 'pl']
|
||||
authenticatedUser = await bobDerBaumeister.toJson()
|
||||
await Promise.all([
|
||||
mutate({
|
||||
mutation: decideMutation,
|
||||
mutation: reviewMutation,
|
||||
variables: {
|
||||
...disableVariables,
|
||||
resourceId: 'p11',
|
||||
},
|
||||
}),
|
||||
mutate({
|
||||
mutation: decideMutation,
|
||||
mutation: reviewMutation,
|
||||
variables: {
|
||||
...disableVariables,
|
||||
resourceId: 'c5',
|
||||
|
||||
@ -78,6 +78,7 @@ export default {
|
||||
}, 1500)
|
||||
} catch (err) {
|
||||
this.success = false
|
||||
this.isOpen = false
|
||||
} finally {
|
||||
this.loading = false
|
||||
}
|
||||
|
||||
@ -55,7 +55,7 @@ export default {
|
||||
await this.$apollo.mutate({
|
||||
mutation: gql`
|
||||
mutation($resourceId: ID!, $disable: Boolean, $closed: Boolean) {
|
||||
decide(resourceId: $resourceId, disable: $disable, closed: $closed) {
|
||||
review(resourceId: $resourceId, disable: $disable, closed: $closed) {
|
||||
disable
|
||||
}
|
||||
}
|
||||
@ -69,6 +69,7 @@ export default {
|
||||
}, 1000)
|
||||
} catch (err) {
|
||||
this.$toast.error(err.message)
|
||||
this.isOpen = false
|
||||
}
|
||||
},
|
||||
},
|
||||
|
||||
@ -149,6 +149,7 @@ export default {
|
||||
default:
|
||||
this.$toast.error(err.message)
|
||||
}
|
||||
this.isOpen = false
|
||||
this.loading = false
|
||||
})
|
||||
},
|
||||
|
||||
@ -54,7 +54,7 @@ export default {
|
||||
await this.$apollo.mutate({
|
||||
mutation: gql`
|
||||
mutation($resourceId: ID!, $disable: Boolean, $closed: Boolean) {
|
||||
decide(resourceId: $resourceId, disable: $disable, closed: $closed) {
|
||||
review(resourceId: $resourceId, disable: $disable, closed: $closed) {
|
||||
disable
|
||||
}
|
||||
}
|
||||
@ -68,6 +68,7 @@ export default {
|
||||
}, 1000)
|
||||
} catch (err) {
|
||||
this.$toast.error(err.message)
|
||||
this.isOpen = false
|
||||
}
|
||||
},
|
||||
},
|
||||
|
||||
@ -111,10 +111,10 @@ export const reportMutation = () => {
|
||||
`
|
||||
}
|
||||
|
||||
export const decideMutation = () => {
|
||||
export const reviewMutation = () => {
|
||||
return gql`
|
||||
mutation($resourceId: ID!, $disable: Boolean, $closed: Boolean) {
|
||||
decide(resourceId: $resourceId, disable: $disable, closed: $closed) {
|
||||
review(resourceId: $resourceId, disable: $disable, closed: $closed) {
|
||||
disable
|
||||
}
|
||||
}
|
||||
|
||||
@ -168,7 +168,7 @@
|
||||
<script>
|
||||
import HcEmpty from '~/components/Empty/Empty'
|
||||
import HcUser from '~/components/User/User'
|
||||
import { reportListQuery, decideMutation } from '~/graphql/Moderation.js'
|
||||
import { reportListQuery, reviewMutation } from '~/graphql/Moderation.js'
|
||||
|
||||
export default {
|
||||
components: {
|
||||
@ -253,7 +253,7 @@ export default {
|
||||
async confirmCallback(resourceId) {
|
||||
this.$apollo
|
||||
.mutate({
|
||||
mutation: decideMutation(),
|
||||
mutation: reviewMutation(),
|
||||
variables: { resourceId, closed: true },
|
||||
})
|
||||
.then(() => {
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user