Skip to content

Commit 4196435

Browse files
authored
Merge pull request #2688 from objectcomputing/feature-2687/show-all-toggle-open-review-periods
Show the "Show All" toggle based on the update review period permission…
2 parents b0e11eb + b7fed3a commit 4196435

File tree

2 files changed

+9
-10
lines changed

2 files changed

+9
-10
lines changed

server/src/test/java/com/objectcomputing/checkins/services/reviews/ReviewPeriodControllerTest.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -552,7 +552,7 @@ void testPUTReviewPeriodOpen() {
552552
assertEquals(2, emailSender.events.size());
553553
EmailHelper.validateEmail("SEND_EMAIL", "null", "null",
554554
"It's time for performance reviews!",
555-
"Help us make this a valuable experience for everyone!",
555+
"Your feedback helps us improve as a team!",
556556
member.getWorkEmail() + "," + supervisor.getWorkEmail(),
557557
emailSender.events.get(1)
558558
);

web-ui/src/components/reviews/TeamReviews.jsx

Lines changed: 8 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -64,7 +64,6 @@ import {
6464
selectHasDeleteReviewPeriodPermission,
6565
selectHasLaunchReviewPeriodPermission,
6666
selectHasUpdateReviewPeriodPermission,
67-
selectIsAdmin,
6867
selectReviewPeriod,
6968
selectSupervisors,
7069
selectProfile,
@@ -130,7 +129,6 @@ const TeamReviews = ({ onBack, periodId }) => {
130129
const location = useLocation();
131130

132131
const [openMode, setOpenMode] = useState(false);
133-
const [managerApprovalMode, setManagerApprovalMode] = useState(false);
134132
const [approvalState, setApprovalState] = useState(false);
135133
const [assignments, setAssignments] = useState([]);
136134
const [canUpdate, setCanUpdate] = useState(false);
@@ -148,6 +146,7 @@ const TeamReviews = ({ onBack, periodId }) => {
148146
const [selectedReviewers, setSelectedReviewers] = useState([]);
149147
const [selfReviews, setSelfReviews] = useState({});
150148
const [showAll, setShowAll] = useState(false);
149+
const [hasShowAll, setHasShowAll] = useState(false);
151150
const [teamMembers, setTeamMembers] = useState([]);
152151
const [toDelete, setToDelete] = useState(null);
153152
const [unapproved, setUnapproved] = useState([]);
@@ -165,7 +164,6 @@ const TeamReviews = ({ onBack, periodId }) => {
165164
return map;
166165
}, {});
167166
const currentUser = selectCurrentUser(state);
168-
const isAdmin = selectIsAdmin(state);
169167
const period = selectReviewPeriod(state, periodId);
170168

171169
useEffect(() => {
@@ -179,7 +177,6 @@ const TeamReviews = ({ onBack, periodId }) => {
179177
const period = selectReviewPeriod(state, periodId);
180178
if (period) {
181179
setApprovalState(period.reviewStatus === ReviewStatus.AWAITING_APPROVAL);
182-
setManagerApprovalMode(isManager && approvalState);
183180
}
184181

185182
setOpenMode(period?.reviewStatus === ReviewStatus.OPEN);
@@ -189,11 +186,13 @@ const TeamReviews = ({ onBack, periodId }) => {
189186
selectHasUpdateReviewAssignmentsPermission(state));
190187

191188

189+
setHasShowAll((isManager || selectHasUpdateReviewPeriodPermission(state)) &&
190+
(approvalState || openMode));
192191
}, [state]);
193192

194193
useEffect(() => {
195194
loadTeamMembers();
196-
}, [managerApprovalMode, assignments, showAll]);
195+
}, [assignments, showAll]);
197196

198197
const editReviewers = member => {
199198
setSelectedMember(member);
@@ -213,7 +212,7 @@ const TeamReviews = ({ onBack, periodId }) => {
213212

214213
const loadTeamMembers = () => {
215214
let source;
216-
if (!managerApprovalMode || (isAdmin && showAll)) {
215+
if (selectHasUpdateReviewPeriodPermission(state) && showAll) {
217216
source = currentMembers;
218217
} else {
219218
// Get the direct reports of the current user who is a manager.
@@ -907,7 +906,7 @@ const TeamReviews = ({ onBack, periodId }) => {
907906

908907
const visibleTeamMembers = () => {
909908
const query = nameQuery.trim().toLowerCase();
910-
if (!managerApprovalMode || query.length === 0) return teamMembers;
909+
if (query.length === 0) return teamMembers;
911910

912911
return teamMembers.filter(member =>
913912
member.name.toLowerCase().includes(query)
@@ -968,7 +967,7 @@ const TeamReviews = ({ onBack, periodId }) => {
968967
</Alert>
969968
)}
970969

971-
{approvalState && (
970+
{(approvalState || hasShowAll) && (
972971
<div id="approval-row" style={{ display: 'flex', alignItems: 'center' }}>
973972
{/* Wrapper div for TextField and Switch */}
974973
<div style={{ display: 'flex', alignItems: 'center', flexGrow: 1 }}>
@@ -989,7 +988,7 @@ const TeamReviews = ({ onBack, periodId }) => {
989988
style={{ flexGrow: 1, maxWidth: '400px' }}
990989
/>
991990
{/* Add the Switch right next to the TextField */}
992-
{period && isAdmin && (
991+
{period && hasShowAll && (
993992
<FormControlLabel
994993
control={
995994
<Switch

0 commit comments

Comments
 (0)