[WEB-2606] fix: project members shouldn't be able to change others roles (#5802)
* [WEB-2606] fix: project members should not be able to change other project member's roles * add better logic
This commit is contained in:
parent
8d837eddb3
commit
d7c5645948
1 changed files with 6 additions and 2 deletions
|
|
@ -100,7 +100,7 @@ export const AccountTypeColumn: React.FC<AccountTypeProps> = observer((props) =>
|
||||||
} = useForm();
|
} = useForm();
|
||||||
// store hooks
|
// store hooks
|
||||||
const {
|
const {
|
||||||
project: { updateMember },
|
project: { updateMember, getProjectMemberDetails },
|
||||||
workspace: { getWorkspaceMemberDetails },
|
workspace: { getWorkspaceMemberDetails },
|
||||||
} = useMember();
|
} = useMember();
|
||||||
const { data: currentUser } = useUser();
|
const { data: currentUser } = useUser();
|
||||||
|
|
@ -111,7 +111,11 @@ export const AccountTypeColumn: React.FC<AccountTypeProps> = observer((props) =>
|
||||||
const isWorkspaceMember = [EUserPermissions.MEMBER].includes(
|
const isWorkspaceMember = [EUserPermissions.MEMBER].includes(
|
||||||
Number(getWorkspaceMemberDetails(rowData.member.id)?.role) ?? EUserPermissions.GUEST
|
Number(getWorkspaceMemberDetails(rowData.member.id)?.role) ?? EUserPermissions.GUEST
|
||||||
);
|
);
|
||||||
const isRoleNonEditable = isCurrentUser || (isProjectAdminOrGuest && !isWorkspaceMember);
|
const isCurrentUserProjectMember = currentUser
|
||||||
|
? getProjectMemberDetails(currentUser.id)?.role === EUserPermissions.MEMBER
|
||||||
|
: false;
|
||||||
|
const isRoleNonEditable =
|
||||||
|
isCurrentUser || (isProjectAdminOrGuest && !isWorkspaceMember) || isCurrentUserProjectMember;
|
||||||
|
|
||||||
const checkCurrentOptionWorkspaceRole = (value: string) => {
|
const checkCurrentOptionWorkspaceRole = (value: string) => {
|
||||||
const currentMemberWorkspaceRole = getWorkspaceMemberDetails(value)?.role as EUserPermissions | undefined;
|
const currentMemberWorkspaceRole = getWorkspaceMemberDetails(value)?.role as EUserPermissions | undefined;
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue