Skip to content

Commit f49e037

Browse files
committed
feat: add has view permission check on project details page gf-567
1 parent cfc71fa commit f49e037

File tree

1 file changed

+28
-4
lines changed

1 file changed

+28
-4
lines changed

apps/frontend/src/pages/project/project.tsx

+28-4
Original file line numberDiff line numberDiff line change
@@ -119,14 +119,38 @@ const Project = (): JSX.Element => {
119119
const [contributorToSplit, setContributorToSplit] =
120120
useState<ContributorGetAllItemResponseDto | null>(null);
121121

122+
const hasViewPermission =
123+
checkHasPermission(
124+
[PermissionKey.VIEW_ALL_PROJECTS, PermissionKey.MANAGE_ALL_PROJECTS],
125+
userPermissions,
126+
) ||
127+
checkIsProjectPermitted({
128+
permission: ProjectPermissionKey.VIEW_PROJECT,
129+
projectId,
130+
projectUserPermissions,
131+
}) ||
132+
checkIsProjectPermitted({
133+
permission: ProjectPermissionKey.EDIT_PROJECT,
134+
projectId,
135+
projectUserPermissions,
136+
}) ||
137+
checkIsProjectPermitted({
138+
permission: ProjectPermissionKey.MANAGE_PROJECT,
139+
projectId,
140+
projectUserPermissions,
141+
});
142+
122143
useEffect(() => {
123144
if (projectId) {
124145
void dispatch(projectActions.getById({ id: projectId }));
125-
void dispatch(
126-
projectActions.loadAllContributorsByProjectId(Number(projectId)),
127-
);
146+
147+
if (hasViewPermission) {
148+
void dispatch(
149+
projectActions.loadAllContributorsByProjectId(Number(projectId)),
150+
);
151+
}
128152
}
129-
}, [dispatch, projectId]);
153+
}, [dispatch, hasViewPermission, projectId]);
130154

131155
useEffect(() => {
132156
if (projectPatchStatus === DataStatus.FULFILLED) {

0 commit comments

Comments
 (0)