From 05e91129f45d5e7ad4b7df17ff2f3316c2fdb119 Mon Sep 17 00:00:00 2001 From: blackcathacker Date: Mon, 30 Oct 2017 22:16:59 -0700 Subject: [PATCH 1/2] show staff instead of user badge when reported by staff --- client/coral-admin/src/components/CommentLabels.js | 11 ++++++++++- client/coral-admin/src/containers/CommentLabels.js | 1 + 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/client/coral-admin/src/components/CommentLabels.js b/client/coral-admin/src/components/CommentLabels.js index 7af7e9a7e..630f0c02d 100644 --- a/client/coral-admin/src/components/CommentLabels.js +++ b/client/coral-admin/src/components/CommentLabels.js @@ -6,10 +6,19 @@ import FlagLabel from 'coral-ui/components/FlagLabel'; import cn from 'classnames'; import styles from './CommentLabels.css'; +const staffRoles = ['ADMIN', 'STAFF', 'MODERATOR']; + function isUserFlagged(actions) { return actions.some((action) => action.__typename === 'FlagAction' && action.user); } +function getUserFlaggedType(actions) { + return actions + .filter((action) => action.__typename === 'FlagAction' && action.user) + .map((action) => action.user.roles.some((role) => staffRoles.includes(role))) + .some((staff) => staff) ? 'Staff' : 'User'; +} + function hasSuspectedWords(actions) { return actions.some((action) => action.__typename === 'FlagAction' && action.reason === 'Matched suspect word filter'); } @@ -24,7 +33,7 @@ const CommentLabels = ({comment, comment: {className, status, actions, hasParent
{hasParent && } {status === 'PREMOD' && } - {isUserFlagged(actions) && User} + {isUserFlagged(actions) && {getUserFlaggedType(actions)}} {hasSuspectedWords(actions) && Suspect} {hasHistoryFlag(actions) && History}
diff --git a/client/coral-admin/src/containers/CommentLabels.js b/client/coral-admin/src/containers/CommentLabels.js index 1942d1ad0..1d57aa526 100644 --- a/client/coral-admin/src/containers/CommentLabels.js +++ b/client/coral-admin/src/containers/CommentLabels.js @@ -25,6 +25,7 @@ export default withFragments({ } user { id + roles } } ${getSlotFragmentSpreads(slots, 'comment')} From 21f6caa9424185596a1fa5860981972f22991b95 Mon Sep 17 00:00:00 2001 From: blackcathacker Date: Tue, 31 Oct 2017 16:48:40 -0700 Subject: [PATCH 2/2] cleaner method chain per review --- client/coral-admin/src/components/CommentLabels.js | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/client/coral-admin/src/components/CommentLabels.js b/client/coral-admin/src/components/CommentLabels.js index 630f0c02d..bff4f575a 100644 --- a/client/coral-admin/src/components/CommentLabels.js +++ b/client/coral-admin/src/components/CommentLabels.js @@ -14,9 +14,11 @@ function isUserFlagged(actions) { function getUserFlaggedType(actions) { return actions - .filter((action) => action.__typename === 'FlagAction' && action.user) - .map((action) => action.user.roles.some((role) => staffRoles.includes(role))) - .some((staff) => staff) ? 'Staff' : 'User'; + .some((action) => + action.__typename === 'FlagAction' && + action.user && + action.user.roles.some((role) => staffRoles.includes(role)) + ) ? 'Staff' : 'User'; } function hasSuspectedWords(actions) {