From a1a067138288d2f57e66e7fd2c84ef7acef60d5b Mon Sep 17 00:00:00 2001 From: Belen Curcio Date: Mon, 11 Dec 2017 09:36:42 -0300 Subject: [PATCH] unBan Update --- client/coral-admin/src/graphql/index.js | 77 +++++++++++++++++++++++++ 1 file changed, 77 insertions(+) diff --git a/client/coral-admin/src/graphql/index.js b/client/coral-admin/src/graphql/index.js index dbdacd2cd..9cc65b1a5 100644 --- a/client/coral-admin/src/graphql/index.js +++ b/client/coral-admin/src/graphql/index.js @@ -3,6 +3,83 @@ import {mapLeaves} from 'coral-framework/utils'; export default { mutations: { + UnBanUser: ({variables: {input: {id: userId}}}) => ({ + updateQueries: { + CoralAdmin_Moderation: (prev) => { + + const updated = update(prev, { + new: { + nodes: { + $apply: (nodes) => nodes.map((node) => { + if (node.user.id === userId) { + node.user.state.status.banned.status = false; + } + + return node; + }) + }, + }, + all: { + nodes: { + $apply: (nodes) => nodes.map((node) => { + if (node.user.id === userId) { + node.user.state.status.banned.status = false; + } + + return node; + }) + }, + }, + approved: { + nodes: { + $apply: (nodes) => nodes.map((node) => { + if (node.user.id === userId) { + node.user.state.status.banned.status = false; + } + + return node; + }) + }, + }, + premod: { + nodes: { + $apply: (nodes) => nodes.map((node) => { + if (node.user.id === userId) { + node.user.state.status.banned.status = false; + } + + return node; + }) + }, + }, + rejected: { + nodes: { + $apply: (nodes) => nodes.map((node) => { + if (node.user.id === userId) { + node.user.state.status.banned.status = false; + } + + return node; + }) + }, + }, + reported: { + nodes: { + $apply: (nodes) => nodes.map((node) => { + if (node.user.id === userId) { + node.user.state.status.banned.status = false; + } + + return node; + }) + }, + } + }); + + return updated; + } + } + }), SetUserBanStatus: ({variables: {status, id}}) => ({ updateQueries: { TalkAdmin_Community: (prev) => {