diff --git a/app/soapbox/features/group/group-membership-requests.tsx b/app/soapbox/features/group/group-membership-requests.tsx index eebe387bb..2ea708c3d 100644 --- a/app/soapbox/features/group/group-membership-requests.tsx +++ b/app/soapbox/features/group/group-membership-requests.tsx @@ -17,8 +17,7 @@ type RouteParams = { groupId: string }; const messages = defineMessages({ heading: { id: 'column.group_pending_requests', defaultMessage: 'Pending requests' }, - authorizeFail: { id: 'group.group_mod_authorize.fail', defaultMessage: 'Failed to approve @{name}' }, - rejectFail: { id: 'group.group_mod_reject.fail', defaultMessage: 'Failed to reject @{name}' }, + authorizeRejectFail: { id: 'group.membership_requests.fail', defaultMessage: 'Group owner or admin has already taken action on this request.' }, }); interface IMembershipRequest { @@ -84,17 +83,19 @@ const GroupMembershipRequests: React.FC = ({ params }) .then(() => Promise.resolve()) .catch(() => { refetch(); - toast.error(intl.formatMessage(messages.authorizeFail, { name: account.username })); + toast.error(intl.formatMessage(messages.authorizeRejectFail)); return Promise.reject(); }); } async function handleReject(account: AccountEntity) { - try { - await reject(account.id); - } catch (_e) { - toast.error(intl.formatMessage(messages.rejectFail, { name: account.username })); - } + return reject(account.id) + .then(() => Promise.resolve()) + .catch(() => { + refetch(); + toast.error(intl.formatMessage(messages.authorizeRejectFail)); + return Promise.reject(); + }); } return ( diff --git a/app/soapbox/locales/en.json b/app/soapbox/locales/en.json index 91fad97e0..2c81f307f 100644 --- a/app/soapbox/locales/en.json +++ b/app/soapbox/locales/en.json @@ -773,14 +773,12 @@ "group.delete.success": "Group successfully deleted", "group.deleted.message": "This group has been deleted.", "group.demote.user.success": "@{name} is now a member", - "group.group_mod_authorize.fail": "Failed to approve @{name}", "group.group_mod_block": "Ban from group", "group.group_mod_block.success": "@{name} is banned", "group.group_mod_demote": "Remove {role} role", "group.group_mod_kick": "Kick @{name} from group", "group.group_mod_kick.success": "Kicked @{name} from group", "group.group_mod_promote_mod": "Assign {role} role", - "group.group_mod_reject.fail": "Failed to reject @{name}", "group.group_mod_unblock": "Unban", "group.group_mod_unblock.success": "Unbanned @{name} from group", "group.header.alt": "Group header", @@ -794,6 +792,7 @@ "group.manage": "Manage Group", "group.member.admin.limit.summary": "You can assign up to {count} admins for the group at this time.", "group.member.admin.limit.title": "Admin limit reached", + "group.membership_requests.fail": "Group owner or admin has already taken action on this request.", "group.popover.action": "View Group", "group.popover.summary": "You must be a member of the group in order to reply to this status.", "group.popover.title": "Membership required",