mirror of
https://github.com/ansible/awx.git
synced 2026-01-11 10:00:01 -03:30
Merge pull request #11850 from marshmalien/11626-hide-user-only-access-roles
Remove user_only roles from User and Team permission modal
This commit is contained in:
commit
0d0a8fdc9a
@ -1,6 +1,6 @@
|
||||
import React, { useState, useCallback } from 'react';
|
||||
import { t } from '@lingui/macro';
|
||||
import { useParams } from 'react-router-dom';
|
||||
import { useParams, useRouteMatch } from 'react-router-dom';
|
||||
import styled from 'styled-components';
|
||||
import useRequest from 'hooks/useRequest';
|
||||
import useSelected from 'hooks/useSelected';
|
||||
@ -27,6 +27,11 @@ function UserAndTeamAccessAdd({
|
||||
const [selectedResourceType, setSelectedResourceType] = useState(null);
|
||||
const [stepIdReached, setStepIdReached] = useState(1);
|
||||
const { id: userId } = useParams();
|
||||
const teamsRouteMatch = useRouteMatch({
|
||||
path: '/teams/:id/roles',
|
||||
exact: true,
|
||||
});
|
||||
|
||||
const { selected: resourcesSelected, handleSelect: handleResourceSelect } =
|
||||
useSelected([]);
|
||||
|
||||
@ -54,6 +59,19 @@ function UserAndTeamAccessAdd({
|
||||
{}
|
||||
);
|
||||
|
||||
// Object roles can be user only, so we remove them when
|
||||
// showing role choices for team access
|
||||
const selectableRoles = {
|
||||
...resourcesSelected[0]?.summary_fields?.object_roles,
|
||||
};
|
||||
if (teamsRouteMatch && resourcesSelected[0]?.type === 'organization') {
|
||||
Object.keys(selectableRoles).forEach((key) => {
|
||||
if (selectableRoles[key].user_only) {
|
||||
delete selectableRoles[key];
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
const steps = [
|
||||
{
|
||||
id: 1,
|
||||
@ -101,7 +119,7 @@ function UserAndTeamAccessAdd({
|
||||
component: resourcesSelected?.length > 0 && (
|
||||
<SelectRoleStep
|
||||
onRolesClick={handleRoleSelect}
|
||||
roles={resourcesSelected[0].summary_fields.object_roles}
|
||||
roles={selectableRoles}
|
||||
selectedListKey={
|
||||
selectedResourceType === 'users' ? 'username' : 'name'
|
||||
}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user