Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit0b4b00b

Browse files
committed
Use old permission for old pages
Originally I thought I should update these to use the org-basedpermissions query but I think maybe I should scope my changes to justthe multi-org settings page and leave the old pages alone for now.
1 parente58b032 commit0b4b00b

File tree

4 files changed

+12
-25
lines changed

4 files changed

+12
-25
lines changed

‎site/src/contexts/auth/permissions.tsx

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@ export const checks = {
1515
createOrganization:"createOrganization",
1616
editAnyOrganization:"editAnyOrganization",
1717
viewAnyGroup:"viewAnyGroup",
18+
createGroup:"createGroup",
1819
viewAllLicenses:"viewAllLicenses",
1920
}asconst;
2021

@@ -118,6 +119,12 @@ export const permissionsToCheck = {
118119
},
119120
action:"read",
120121
},
122+
[checks.createGroup]:{
123+
object:{
124+
resource_type:"group",
125+
},
126+
action:"create",
127+
},
121128
[checks.viewAllLicenses]:{
122129
object:{
123130
resource_type:"license",

‎site/src/pages/GroupsPage/GroupsPage.tsx

Lines changed: 2 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -3,20 +3,16 @@ import { Helmet } from "react-helmet-async";
33
import{useQuery}from"react-query";
44
import{getErrorMessage}from"api/errors";
55
import{groups}from"api/queries/groups";
6-
import{organizationPermissions}from"api/queries/organizations";
76
import{displayError}from"components/GlobalSnackbar/utils";
8-
import{Loader}from"components/Loader/Loader";
9-
import{useDashboard}from"modules/dashboard/useDashboard";
7+
import{useAuthenticated}from"contexts/auth/RequireAuth";
108
import{useFeatureVisibility}from"modules/dashboard/useFeatureVisibility";
119
import{pageTitle}from"utils/page";
1210
importGroupsPageViewfrom"./GroupsPageView";
1311

1412
exportconstGroupsPage:FC=()=>{
15-
const{organizations}=useDashboard();
13+
const{permissions}=useAuthenticated();
1614
const{template_rbac:isTemplateRBACEnabled}=useFeatureVisibility();
17-
constorganization=organizations.find((o)=>o.is_default);
1815
constgroupsQuery=useQuery(groups("default"));
19-
constpermissionsQuery=useQuery(organizationPermissions(organization?.id));
2016

2117
useEffect(()=>{
2218
if(groupsQuery.error){
@@ -26,19 +22,6 @@ export const GroupsPage: FC = () => {
2622
}
2723
},[groupsQuery.error]);
2824

29-
useEffect(()=>{
30-
if(permissionsQuery.error){
31-
displayError(
32-
getErrorMessage(permissionsQuery.error,"Unable to load permissions."),
33-
);
34-
}
35-
},[permissionsQuery.error]);
36-
37-
constpermissions=permissionsQuery.data;
38-
if(!permissions){
39-
return<Loader/>;
40-
}
41-
4225
return(
4326
<>
4427
<Helmet>

‎site/src/pages/UsersPage/UsersLayout.tsx

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -2,14 +2,12 @@ import GroupAdd from "@mui/icons-material/GroupAddOutlined";
22
importPersonAddfrom"@mui/icons-material/PersonAddOutlined";
33
importButtonfrom"@mui/material/Button";
44
import{typeFC,Suspense}from"react";
5-
import{useQuery}from"react-query";
65
import{
76
LinkasRouterLink,
87
Outlet,
98
useNavigate,
109
useLocation,
1110
}from"react-router-dom";
12-
import{organizationPermissions}from"api/queries/organizations";
1311
import{Loader}from"components/Loader/Loader";
1412
import{Margins}from"components/Margins/Margins";
1513
import{PageHeader,PageHeaderTitle}from"components/PageHeader/PageHeader";
@@ -21,13 +19,11 @@ import { linkToUsers } from "modules/navigation";
2119

2220
exportconstUsersLayout:FC=()=>{
2321
const{ permissions}=useAuthenticated();
24-
const{ experiments, organizations}=useDashboard();
22+
const{ experiments}=useDashboard();
2523
constnavigate=useNavigate();
2624
constfeats=useFeatureVisibility();
2725
constlocation=useLocation();
2826
constactiveTab=location.pathname.endsWith("groups") ?"groups" :"users";
29-
constorganization=organizations.find((o)=>o.is_default);
30-
constpermissionsQuery=useQuery(organizationPermissions(organization?.id));
3127

3228
constcanViewOrganizations=
3329
feats.multiple_organizations&&experiments.includes("multi-organization");
@@ -48,7 +44,7 @@ export const UsersLayout: FC = () => {
4844
Create user
4945
</Button>
5046
)}
51-
{permissionsQuery.data?.createGroup&&feats.template_rbac&&(
47+
{permissions.createGroup&&feats.template_rbac&&(
5248
<Button
5349
component={RouterLink}
5450
startIcon={<GroupAdd/>}

‎site/src/testHelpers/entities.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2499,6 +2499,7 @@ export const MockPermissions: Permissions = {
24992499
createOrganization:true,
25002500
editAnyOrganization:true,
25012501
viewAnyGroup:true,
2502+
createGroup:true,
25022503
viewAllLicenses:true,
25032504
};
25042505

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp