Skip to content

Commit ce2ec7b

Browse files
authored
Merge pull request #2744 from objectcomputing/bugfix-2743/inactive-teams-guilds
Bugfix 2743/inactive teams guilds
2 parents db99c9f + 0789090 commit ce2ec7b

File tree

7 files changed

+63
-20
lines changed

7 files changed

+63
-20
lines changed

web-ui/src/components/guild-results/EditGuildModal.spec.jsx

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -34,12 +34,14 @@ const testGuild = {
3434
guildMembers: [
3535
{ id: 125, name: 'Guild Member' },
3636
{ id: 126, name: 'Other Member' }
37-
]
37+
],
38+
active: true,
3839
};
3940

4041
const emptyGuild = {
4142
name: 'Test Guild',
42-
description: 'A guild used for testing.'
43+
description: 'A guild used for testing.',
44+
active: true,
4345
};
4446

4547
const currentUserProfile = {

web-ui/src/components/kudos_dialog/KudosDialog.jsx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ import { AppContext } from '../../context/AppContext';
2929
import {
3030
selectCsrfToken,
3131
selectCurrentUser,
32-
selectNormalizedTeams,
32+
selectActiveTeams,
3333
selectOrderedCurrentMemberProfiles,
3434
selectProfile
3535
} from '../../context/selectors';
@@ -65,7 +65,7 @@ const KudosDialog = ({ open, recipient, teamId, onClose }) => {
6565
);
6666

6767
const currentUser = selectCurrentUser(state);
68-
const teams = selectNormalizedTeams(state, '');
68+
const teams = selectActiveTeams(state);
6969
const memberProfiles = selectOrderedCurrentMemberProfiles(state);
7070

7171
const handleSubmit = useCallback(() => {

web-ui/src/components/member_selector/member_selector_dialog/MemberSelectorDialog.jsx

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -37,14 +37,14 @@ import { AppContext } from '../../../context/AppContext';
3737
import {
3838
selectCsrfToken,
3939
selectCurrentMembers,
40-
selectGuilds,
40+
selectActiveGuilds,
4141
selectMappedUserRoles,
4242
selectRoles,
4343
selectSkills,
4444
selectSubordinates,
4545
selectSupervisors,
4646
selectTeamMembersBySupervisorId,
47-
selectTeams
47+
selectActiveTeams,
4848
} from '../../../context/selectors';
4949
import { UPDATE_TOAST } from '../../../context/actions';
5050
import { getMembersByTeam } from '../../../api/team';
@@ -172,14 +172,14 @@ const MemberSelectorDialog = ({
172172
const getFilterOptions = () => {
173173
switch (filterType) {
174174
case FilterType.TEAM:
175-
const teams = selectTeams(state);
175+
const teams = selectActiveTeams(state);
176176
return {
177177
options: teams,
178178
label: team => team.name,
179179
equals: (team1, team2) => team1.id === team2.id
180180
};
181181
case FilterType.GUILD:
182-
const guilds = selectGuilds(state);
182+
const guilds = selectActiveGuilds(state);
183183
return {
184184
options: guilds,
185185
label: guild => guild.name,

web-ui/src/components/member_selector/member_selector_dialog/MemberSelectorDialog.spec.jsx

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,8 @@ const testGuild = {
3939
name: 'Test Guild',
4040
description: 'A guild used for testing.',
4141
guildLeads: [{ id: 124, name: managerProfile.name }],
42-
guildMembers: []
42+
guildMembers: [],
43+
active: true,
4344
};
4445

4546
const initialState = {

web-ui/src/components/team-results/TeamSummaryCard.jsx

Lines changed: 18 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,8 @@ import {
1616
DialogContent,
1717
DialogContentText,
1818
DialogTitle,
19-
Tooltip
19+
Tooltip,
20+
Typography,
2021
} from '@mui/material';
2122
import PropTypes from 'prop-types';
2223
import { updateTeam } from '../../api/team.js';
@@ -34,7 +35,8 @@ const StyledCard = styled(Card)({
3435
width: '340px',
3536
display: 'flex',
3637
flexDirection: 'column',
37-
justifyContent: 'space-between'
38+
justifyContent: 'space-between',
39+
position: 'relative',
3840
},
3941
[`& .${classes.header}`]: {
4042
width: '100%'
@@ -46,6 +48,11 @@ const StyledCard = styled(Card)({
4648
}
4749
});
4850

51+
const inactiveStyle = {
52+
'color': 'var(--action-disabled)',
53+
'font-size': '0.75em',
54+
};
55+
4956
const propTypes = {
5057
team: PropTypes.shape({
5158
id: PropTypes.string,
@@ -101,7 +108,7 @@ const TeamSummaryCard = ({ team, index, onTeamSelect, selectedTeamId }) => {
101108
title: classes.title,
102109
subheader: classes.title
103110
}}
104-
title={team.name + (team.active ? ' (Active)' : ' (Inactive)')}
111+
title={team.name}
105112
subheader={
106113
<Tooltip
107114
open={tooltipIsOpen}
@@ -116,6 +123,14 @@ const TeamSummaryCard = ({ team, index, onTeamSelect, selectedTeamId }) => {
116123
}
117124
/>
118125
<CardContent>
126+
{!team.active && (
127+
<Typography sx={{ position: 'absolute', top: 10, right: 10,
128+
...inactiveStyle,
129+
}}
130+
>
131+
Inactive
132+
</Typography>
133+
)}
119134
{team.teamMembers == null ? (
120135
<React.Fragment key={`empty-team-${team.name}`}>
121136
<strong>Team Leads: </strong>None Assigned

web-ui/src/components/team-results/__snapshots__/TeamSummaryCard.test.jsx.snap

Lines changed: 21 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
exports[`renders correctly 1`] = `
44
<div>
55
<div
6-
class="MuiPaper-root MuiPaper-elevation MuiPaper-rounded MuiPaper-elevation1 MuiCard-root TeamSummaryCard-card css-2bwzc-MuiPaper-root-MuiCard-root"
6+
class="MuiPaper-root MuiPaper-elevation MuiPaper-rounded MuiPaper-elevation1 MuiCard-root TeamSummaryCard-card css-55zgp6-MuiPaper-root-MuiCard-root"
77
>
88
<div
99
class="MuiCardHeader-root css-185gdzj-MuiCardHeader-root"
@@ -14,7 +14,7 @@ exports[`renders correctly 1`] = `
1414
<span
1515
class="MuiTypography-root MuiTypography-h5 MuiCardHeader-title TeamSummaryCard-title css-1qvr50w-MuiTypography-root"
1616
>
17-
string (Inactive)
17+
string
1818
</span>
1919
<span
2020
class="MuiTypography-root MuiTypography-body1 MuiCardHeader-subheader TeamSummaryCard-title css-nrdprl-MuiTypography-root"
@@ -32,6 +32,11 @@ exports[`renders correctly 1`] = `
3232
<div
3333
class="MuiCardContent-root css-46bh2p-MuiCardContent-root"
3434
>
35+
<p
36+
class="MuiTypography-root MuiTypography-body1 css-19pemnp-MuiTypography-root"
37+
>
38+
Inactive
39+
</p>
3540
<strong>
3641
Team Leads:
3742
</strong>
@@ -52,7 +57,7 @@ exports[`renders correctly 1`] = `
5257
exports[`renders correctly for ADMIN 1`] = `
5358
<div>
5459
<div
55-
class="MuiPaper-root MuiPaper-elevation MuiPaper-rounded MuiPaper-elevation1 MuiCard-root TeamSummaryCard-card css-2bwzc-MuiPaper-root-MuiCard-root"
60+
class="MuiPaper-root MuiPaper-elevation MuiPaper-rounded MuiPaper-elevation1 MuiCard-root TeamSummaryCard-card css-55zgp6-MuiPaper-root-MuiCard-root"
5661
>
5762
<div
5863
class="MuiCardHeader-root css-185gdzj-MuiCardHeader-root"
@@ -63,7 +68,7 @@ exports[`renders correctly for ADMIN 1`] = `
6368
<span
6469
class="MuiTypography-root MuiTypography-h5 MuiCardHeader-title TeamSummaryCard-title css-1qvr50w-MuiTypography-root"
6570
>
66-
string (Inactive)
71+
string
6772
</span>
6873
<span
6974
class="MuiTypography-root MuiTypography-body1 MuiCardHeader-subheader TeamSummaryCard-title css-nrdprl-MuiTypography-root"
@@ -81,6 +86,11 @@ exports[`renders correctly for ADMIN 1`] = `
8186
<div
8287
class="MuiCardContent-root css-46bh2p-MuiCardContent-root"
8388
>
89+
<p
90+
class="MuiTypography-root MuiTypography-body1 css-19pemnp-MuiTypography-root"
91+
>
92+
Inactive
93+
</p>
8494
<strong>
8595
Team Leads:
8696
</strong>
@@ -142,7 +152,7 @@ exports[`renders correctly for ADMIN 1`] = `
142152
exports[`renders correctly for team lead 1`] = `
143153
<div>
144154
<div
145-
class="MuiPaper-root MuiPaper-elevation MuiPaper-rounded MuiPaper-elevation1 MuiCard-root TeamSummaryCard-card css-2bwzc-MuiPaper-root-MuiCard-root"
155+
class="MuiPaper-root MuiPaper-elevation MuiPaper-rounded MuiPaper-elevation1 MuiCard-root TeamSummaryCard-card css-55zgp6-MuiPaper-root-MuiCard-root"
146156
>
147157
<div
148158
class="MuiCardHeader-root css-185gdzj-MuiCardHeader-root"
@@ -153,7 +163,7 @@ exports[`renders correctly for team lead 1`] = `
153163
<span
154164
class="MuiTypography-root MuiTypography-h5 MuiCardHeader-title TeamSummaryCard-title css-1qvr50w-MuiTypography-root"
155165
>
156-
stuff (Inactive)
166+
stuff
157167
</span>
158168
<span
159169
class="MuiTypography-root MuiTypography-body1 MuiCardHeader-subheader TeamSummaryCard-title css-nrdprl-MuiTypography-root"
@@ -169,6 +179,11 @@ exports[`renders correctly for team lead 1`] = `
169179
<div
170180
class="MuiCardContent-root css-46bh2p-MuiCardContent-root"
171181
>
182+
<p
183+
class="MuiTypography-root MuiTypography-body1 css-19pemnp-MuiTypography-root"
184+
>
185+
Inactive
186+
</p>
172187
<strong>
173188
Team Leads:
174189
</strong>

web-ui/src/context/selectors.js

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -686,11 +686,21 @@ export const selectNormalizedTeams = createSelector(
686686
})
687687
);
688688

689+
export const selectActiveTeams = createSelector(
690+
selectTeams,
691+
(teams, searchText) => teams?.filter(team => team.active)
692+
);
693+
694+
export const selectActiveGuilds = createSelector(
695+
selectGuilds,
696+
(guilds, searchText) => guilds?.filter(guild => guild.active)
697+
);
698+
689699
export const selectMyGuilds = createSelector(
690700
selectCurrentUserId,
691701
selectGuilds,
692702
(id, guilds) =>
693-
guilds?.filter(guild =>
703+
guilds?.filter(guild => guild.active &&
694704
guild.guildMembers?.some(member => member.memberId === id)
695705
)
696706
);
@@ -699,7 +709,7 @@ export const selectMyTeams = createSelector(
699709
selectCurrentUserId,
700710
selectTeams,
701711
(id, teams) =>
702-
teams?.filter(team =>
712+
teams?.filter(team => team.active &&
703713
team.teamMembers?.some(member => member.memberId === id)
704714
)
705715
);

0 commit comments

Comments
 (0)