Skip to content
Snippets Groups Projects
Unverified Commit fac5176c authored by Hadi Cheaito's avatar Hadi Cheaito Committed by GitHub
Browse files

Adding ban to verified users + localization (#4068)

* Adding ban to verified users

* localization
parent b50384d5
No related branches found
No related tags found
No related merge requests found
......@@ -33,11 +33,11 @@ export default function BannedPendingUsersTable({ users, pendingTable }) {
<Dropdown.Menu>
<Dropdown.Item onClick={() => updateUserStatus.mutate({ id: user.id, status: 'active' })}>
<CheckCircleIcon className="hi-s me-2" />
Approve
{t('admin.manage_users.approve')}
</Dropdown.Item>
<Dropdown.Item onClick={() => updateUserStatus.mutate({ id: user.id, status: 'banned' })}>
<XCircleIcon className="hi-s me-2" />
Decline
{t('admin.manage_users.decline')}
</Dropdown.Item>
</Dropdown.Menu>
</Dropdown>
......@@ -48,7 +48,7 @@ export default function BannedPendingUsersTable({ users, pendingTable }) {
<Dropdown.Menu>
<Dropdown.Item onClick={() => updateUserStatus.mutate({ id: user.id, status: 'active' })}>
<CheckCircleIcon className="hi-s me-2" />
Unban
{t('admin.manage_users.unban')}
</Dropdown.Item>
</Dropdown.Menu>
</Dropdown>
......
......@@ -2,10 +2,11 @@ import React from 'react';
import PropTypes from 'prop-types';
import {
Stack, Navbar, NavDropdown, Container,
Dropdown,
} from 'react-bootstrap';
import { Link } from 'react-router-dom';
import {
EllipsisVerticalIcon, HomeIcon, PencilSquareIcon, TrashIcon,
EllipsisVerticalIcon, HomeIcon, PencilSquareIcon, TrashIcon, XCircleIcon,
} from '@heroicons/react/24/outline';
import { useTranslation } from 'react-i18next';
import Avatar from '../../users/user/Avatar';
......@@ -14,10 +15,12 @@ import CreateRoomForm from '../../rooms/room/forms/CreateRoomForm';
import useCreateServerRoom from '../../../hooks/mutations/admin/manage_users/useCreateServerRoom';
import DeleteUserForm from './forms/DeleteUserForm';
import RolePill from '../roles/RolePill';
import useUpdateUserStatus from '../../../hooks/mutations/admin/manage_users/useUpdateUserStatus';
export default function ManageUserRow({ user }) {
const { t } = useTranslation();
const mutationWrapper = (args) => useCreateServerRoom({ userId: user.id, ...args });
const updateUserStatus = useUpdateUserStatus();
return (
<tr key={user.id} className="align-middle text-muted">
......@@ -51,6 +54,10 @@ export default function ManageUserRow({ user }) {
title={t('admin.manage_users.create_new_room')}
body={<CreateRoomForm mutation={mutationWrapper} userId={user.id} />}
/>
<Dropdown.Item onClick={() => updateUserStatus.mutate({ id: user.id, status: 'banned' })}>
<XCircleIcon className="hi-s me-2" />
{t('admin.manage_users.ban')}
</Dropdown.Item>
</NavDropdown>
</div>
</Container>
......
......@@ -13,6 +13,8 @@ export default function useUpdateUserStatus() {
onSuccess: () => {
queryClient.invalidateQueries(['getPendingUsers']);
queryClient.invalidateQueries(['getBannedUsers']);
queryClient.invalidateQueries(['getAdminUsers']);
toast.success(t('toast.success.user.user_updated'));
},
onError: () => {
......
......@@ -157,8 +157,12 @@
"manage_users": {
"manage_users": "Manage Users",
"active": "Active",
"approve": "Approve",
"decline": "Decline",
"pending": "Pending",
"banned": "Banned",
"ban": "Ban",
"unban": "Unban",
"deleted": "Deleted",
"invited_tab": "Invited",
"invite_user": "Invite User",
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment