Fix permissioning of moderator modal

environments/review-moderation-ugbdpu/deployments/937
Alex Gleason 2 years ago
parent 8a8ef99433
commit 9610447a79
No known key found for this signature in database
GPG Key ID: 7211D1F99744FBB7

@ -470,12 +470,13 @@ const StatusActionBar: React.FC<IStatusActionBar> = ({
if (isStaff) {
menu.push(null);
menu.push({
text: intl.formatMessage(messages.adminAccount, { name: username }),
action: onModerate,
icon: require('@tabler/icons/gavel.svg'),
});
if (isAdmin) {
menu.push({
text: intl.formatMessage(messages.adminAccount, { name: username }),
action: onModerate,
icon: require('@tabler/icons/gavel.svg'),
});
menu.push({
text: intl.formatMessage(messages.admin_status),
href: `/pleroma/admin/#/statuses/${status.id}/`,

@ -431,13 +431,11 @@ const Header: React.FC<IHeader> = ({ account }) => {
if (ownAccount?.staff) {
menu.push(null);
if (ownAccount?.admin) {
menu.push({
text: intl.formatMessage(messages.adminAccount, { name: account.username }),
action: onModerate,
icon: require('@tabler/icons/gavel.svg'),
});
}
menu.push({
text: intl.formatMessage(messages.adminAccount, { name: account.username }),
action: onModerate,
icon: require('@tabler/icons/gavel.svg'),
});
}
return menu;

@ -15,7 +15,7 @@ import Account from 'soapbox/components/account';
import List, { ListItem } from 'soapbox/components/list';
import MissingIndicator from 'soapbox/components/missing_indicator';
import { Button, Text, HStack, Modal, Stack, Toggle } from 'soapbox/components/ui';
import { useAppDispatch, useAppSelector, useFeatures } from 'soapbox/hooks';
import { useAppDispatch, useAppSelector, useFeatures, useOwnAccount } from 'soapbox/hooks';
import { makeGetAccount } from 'soapbox/selectors';
import { isLocal } from 'soapbox/utils/accounts';
@ -44,12 +44,13 @@ const AccountModerationModal: React.FC<IAccountModerationModal> = ({ onClose, ac
const intl = useIntl();
const dispatch = useAppDispatch();
const ownAccount = useOwnAccount();
const features = useFeatures();
const account = useAppSelector(state => getAccount(state, accountId));
const handleClose = () => onClose('ACCOUNT_MODERATION');
if (!account) {
if (!account || !ownAccount) {
return (
<Modal onClose={handleClose}>
<MissingIndicator />
@ -118,7 +119,7 @@ const AccountModerationModal: React.FC<IAccountModerationModal> = ({ onClose, ac
</div>
<List>
{isLocal(account) && (
{(ownAccount.admin && isLocal(account)) && (
<ListItem label={<FormattedMessage id='account_moderation_modal.fields.account_role' defaultMessage='Staff level' />}>
<div className='w-auto'>
<StaffRolePicker account={account} />

Loading…
Cancel
Save