diff --git a/site/e2e/helpers.ts b/site/e2e/helpers.ts index 9feca1a84c909..553cb5c8fc64a 100644 --- a/site/e2e/helpers.ts +++ b/site/e2e/helpers.ts @@ -293,13 +293,15 @@ export const createTemplate = async ( * random name. */ export const createGroup = async (page: Page): Promise => { - await page.goto("/groups/create", { waitUntil: "domcontentloaded" }); - await expectUrl(page).toHavePathName("/groups/create"); + await page.goto("/deployment/groups/create", { + waitUntil: "domcontentloaded", + }); + await expectUrl(page).toHavePathName("/deployment/groups/create"); const name = randomName(); await page.getByLabel("Name", { exact: true }).fill(name); await page.getByRole("button", { name: /save/i }).click(); - await expectUrl(page).toHavePathName(`/groups/${name}`); + await expectUrl(page).toHavePathName(`/deployment/groups/${name}`); return name; }; diff --git a/site/src/modules/management/DeploymentSidebarView.tsx b/site/src/modules/management/DeploymentSidebarView.tsx index f3e1e7ad51004..052dcf8329b11 100644 --- a/site/src/modules/management/DeploymentSidebarView.tsx +++ b/site/src/modules/management/DeploymentSidebarView.tsx @@ -99,6 +99,9 @@ const DeploymentSettingsNavigation: FC = ({ {permissions.viewAllUsers && ( Users )} + {permissions.viewAnyGroup && ( + Groups + )} {permissions.viewNotificationTemplate && (
diff --git a/site/src/pages/GroupsPage/CreateGroupPage.tsx b/site/src/pages/GroupsPage/CreateGroupPage.tsx index 26c5aef6d53da..92f480d8ab959 100644 --- a/site/src/pages/GroupsPage/CreateGroupPage.tsx +++ b/site/src/pages/GroupsPage/CreateGroupPage.tsx @@ -19,7 +19,7 @@ export const CreateGroupPage: FC = () => { { const newGroup = await createGroupMutation.mutateAsync(data); - navigate(`/groups/${newGroup.name}`); + navigate(`/deployment/groups/${newGroup.name}`); }} error={createGroupMutation.error} isLoading={createGroupMutation.isLoading} diff --git a/site/src/pages/GroupsPage/CreateGroupPageView.tsx b/site/src/pages/GroupsPage/CreateGroupPageView.tsx index e1432d78e2716..dd400459d0c2c 100644 --- a/site/src/pages/GroupsPage/CreateGroupPageView.tsx +++ b/site/src/pages/GroupsPage/CreateGroupPageView.tsx @@ -50,7 +50,7 @@ export const CreateGroupPageView: FC = ({ initialTouched, }); const getFieldHelpers = getFormHelpers(form, error); - const onCancel = () => navigate("/groups"); + const onCancel = () => navigate("/deployment/groups"); return ( diff --git a/site/src/pages/GroupsPage/GroupPage.tsx b/site/src/pages/GroupsPage/GroupPage.tsx index 4af3ce30389fa..913101518c61e 100644 --- a/site/src/pages/GroupsPage/GroupPage.tsx +++ b/site/src/pages/GroupsPage/GroupPage.tsx @@ -211,7 +211,7 @@ export const GroupPage: FC = () => { try { await deleteGroupMutation.mutateAsync(groupId); displaySuccess("Group deleted successfully."); - navigate("/groups"); + navigate("/deployment/groups"); } catch (error) { displayError(getErrorMessage(error, "Failed to delete group.")); } diff --git a/site/src/pages/GroupsPage/GroupsPageView.tsx b/site/src/pages/GroupsPage/GroupsPageView.tsx index 6188cc09428b9..bd2d2ef981419 100644 --- a/site/src/pages/GroupsPage/GroupsPageView.tsx +++ b/site/src/pages/GroupsPage/GroupsPageView.tsx @@ -80,7 +80,7 @@ export const GroupsPageView: FC = ({ canCreateGroup && ( - )} +
{permissions.createGroup && feats.template_rbac && ( )} - +
} > - Users + Groups
- {!showOrganizations && ( - - - - - Users - - - Groups - - - - - )} - }> diff --git a/site/src/router.tsx b/site/src/router.tsx index 287bfd729f8e3..bb95fc1eb393a 100644 --- a/site/src/router.tsx +++ b/site/src/router.tsx @@ -353,7 +353,7 @@ const templateRouter = () => { ); }; -const groupsRouter = () => { +const organizationGroupsRouter = () => { return ( } /> @@ -433,7 +433,7 @@ export const router = createBrowserRouter( }> } /> - {groupsRouter()} + {organizationGroupsRouter()} } /> } /> @@ -488,7 +488,18 @@ export const router = createBrowserRouter( } /> } /> - {groupsRouter()} + + }> + } /> + + + } /> + } /> + } + /> + }> pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy