From 3626d2678eac613cd65e3fbbe6dd56ea720efd18 Mon Sep 17 00:00:00 2001 From: gaba Date: Wed, 1 Mar 2017 23:43:25 -0800 Subject: [PATCH] Accept button working. Add suspend user dialog. --- client/coral-admin/src/actions/community.js | 8 +++++++- client/coral-admin/src/constants/community.js | 3 +++ .../src/containers/Community/CommunityContainer.js | 13 ++++++++++--- .../Community/components/SuspendUserModal.js | 2 +- client/coral-admin/src/graphql/mutations/index.js | 4 ++-- client/coral-admin/src/reducers/community.js | 13 ++++++++++++- 6 files changed, 35 insertions(+), 8 deletions(-) diff --git a/client/coral-admin/src/actions/community.js b/client/coral-admin/src/actions/community.js index 82cee32f4..ea9a28efa 100644 --- a/client/coral-admin/src/actions/community.js +++ b/client/coral-admin/src/actions/community.js @@ -9,7 +9,9 @@ import { SET_ROLE, SET_COMMENTER_STATUS, SHOW_BANUSER_DIALOG, - HIDE_BANUSER_DIALOG + HIDE_BANUSER_DIALOG, + SHOW_SUSPENDUSER_DIALOG, + HIDE_SUSPENDUSER_DIALOG } from '../constants/community'; import coralApi from '../../../coral-framework/helpers/response'; @@ -62,3 +64,7 @@ export const setCommenterStatus = (id, status) => (dispatch) => { // Ban User Dialog export const showBanUserDialog = (user) => ({type: SHOW_BANUSER_DIALOG, user}); export const hideBanUserDialog = (showDialog) => ({type: HIDE_BANUSER_DIALOG, showDialog}); + +// Suspend User Dialog +export const showSuspendUserDialog = (user) => ({type: SHOW_SUSPENDUSER_DIALOG, user}); +export const hideSuspendUserDialog = (showDialog) => ({type: HIDE_SUSPENDUSER_DIALOG, showDialog}); diff --git a/client/coral-admin/src/constants/community.js b/client/coral-admin/src/constants/community.js index 9ea4568ff..a46e721a6 100644 --- a/client/coral-admin/src/constants/community.js +++ b/client/coral-admin/src/constants/community.js @@ -12,3 +12,6 @@ export const FETCH_FLAGGED_COMMENTERS_FAILURE = 'FETCH_FLAGGED_COMMENTERS_FAILUR export const SHOW_BANUSER_DIALOG = 'SHOW_BANUSER_DIALOG'; export const HIDE_BANUSER_DIALOG = 'HIDE_BANUSER_DIALOG'; + +export const SHOW_SUSPENDUSER_DIALOG = 'SHOW_SUSPENDUSER_DIALOG'; +export const HIDE_SUSPENDUSER_DIALOG = 'HIDE_SUSPENDUSER_DIALOG'; diff --git a/client/coral-admin/src/containers/Community/CommunityContainer.js b/client/coral-admin/src/containers/Community/CommunityContainer.js index eee8aa561..c9cc245c5 100644 --- a/client/coral-admin/src/containers/Community/CommunityContainer.js +++ b/client/coral-admin/src/containers/Community/CommunityContainer.js @@ -10,12 +10,13 @@ import { updateSorting, newPage, showBanUserDialog, - hideBanUserDialog + hideBanUserDialog, + hideSuspendUserDialog } from '../../actions/community'; import CommunityMenu from './components/CommunityMenu'; - import BanUserDialog from './components/BanUserDialog'; +import SuspendUserModal from './components/SuspendUserModal'; import People from './People'; import FlaggedAccounts from './FlaggedAccounts'; @@ -109,6 +110,11 @@ class CommunityContainer extends Component { handleClose={props.hideBanUserDialog} handleBanUser={props.banUser} /> + ); } @@ -136,7 +142,8 @@ const mapStateToProps = state => ({ const mapDispatchToProps = dispatch => ({ fetchAccounts: query => dispatch(fetchAccounts(query)), showBanUserDialog: (user) => dispatch(showBanUserDialog(user)), - hideBanUserDialog: () => dispatch(hideBanUserDialog(false)) + hideBanUserDialog: () => dispatch(hideBanUserDialog(false)), + hideSuspendUserDialog: () => dispatch(hideSuspendUserDialog(false)) }); export default compose( diff --git a/client/coral-admin/src/containers/Community/components/SuspendUserModal.js b/client/coral-admin/src/containers/Community/components/SuspendUserModal.js index 5afb8ffee..7fbcd87d0 100644 --- a/client/coral-admin/src/containers/Community/components/SuspendUserModal.js +++ b/client/coral-admin/src/containers/Community/components/SuspendUserModal.js @@ -1,5 +1,5 @@ import I18n from 'coral-framework/modules/i18n/i18n'; -import translations from '../translations.json'; +import translations from '../../../translations.json'; import React, {Component, PropTypes} from 'react'; import Modal from 'components/Modal'; import styles from './SuspendUserModal.css'; diff --git a/client/coral-admin/src/graphql/mutations/index.js b/client/coral-admin/src/graphql/mutations/index.js index 0fa442264..f10df6339 100644 --- a/client/coral-admin/src/graphql/mutations/index.js +++ b/client/coral-admin/src/graphql/mutations/index.js @@ -17,7 +17,7 @@ export const banUser = graphql(SET_USER_STATUS, { export const setUserStatus = graphql(SET_USER_STATUS, { props: ({mutate}) => ({ - approveUser: (userId) => { + approveUser: ({userId}) => { return mutate({ variables: { userId, @@ -26,7 +26,7 @@ export const setUserStatus = graphql(SET_USER_STATUS, { refetchQueries: ['Users'] }); }, - rejectUser: (userId) => { + rejectUser: ({userId}) => { return mutate({ variables: { userId, diff --git a/client/coral-admin/src/reducers/community.js b/client/coral-admin/src/reducers/community.js index c8868510f..e1382caaf 100644 --- a/client/coral-admin/src/reducers/community.js +++ b/client/coral-admin/src/reducers/community.js @@ -8,7 +8,9 @@ import { SET_ROLE, SET_COMMENTER_STATUS, SHOW_BANUSER_DIALOG, - HIDE_BANUSER_DIALOG + HIDE_BANUSER_DIALOG, + SHOW_SUSPENDUSER_DIALOG, + HIDE_SUSPENDUSER_DIALOG } from '../constants/community'; const initialState = Map({ @@ -76,6 +78,15 @@ export default function community (state = initialState, action) { user: Map(action.user), banDialog: true }); + case HIDE_SUSPENDUSER_DIALOG: + return state + .set('suspendDialog', false); + case SHOW_SUSPENDUSER_DIALOG: + return state + .merge({ + user: Map(action.user), + suspendDialog: true + }); default : return state; }