mirror of
https://github.com/coder/coder.git
synced 2025-07-15 22:20:27 +00:00
fix: redirect users lacking create permissions to /workspaces (#16659)
Closes [this issue](https://github.com/coder/internal/issues/394). At the moment this behavior can be a bit confusing, but after [this issue is closed](https://github.com/coder/internal/issues/385#issuecomment-2667061358) it should be more obvious what's going on here.
This commit is contained in:
@ -1,5 +1,7 @@
|
|||||||
import { createOrganization } from "api/queries/organizations";
|
import { createOrganization } from "api/queries/organizations";
|
||||||
import { displaySuccess } from "components/GlobalSnackbar/utils";
|
import { displaySuccess } from "components/GlobalSnackbar/utils";
|
||||||
|
import { useAuthenticated } from "contexts/auth/RequireAuth";
|
||||||
|
import { RequirePermission } from "contexts/auth/RequirePermission";
|
||||||
import { useFeatureVisibility } from "modules/dashboard/useFeatureVisibility";
|
import { useFeatureVisibility } from "modules/dashboard/useFeatureVisibility";
|
||||||
import type { FC } from "react";
|
import type { FC } from "react";
|
||||||
import { useMutation, useQueryClient } from "react-query";
|
import { useMutation, useQueryClient } from "react-query";
|
||||||
@ -9,6 +11,7 @@ import { CreateOrganizationPageView } from "./CreateOrganizationPageView";
|
|||||||
const CreateOrganizationPage: FC = () => {
|
const CreateOrganizationPage: FC = () => {
|
||||||
const navigate = useNavigate();
|
const navigate = useNavigate();
|
||||||
const feats = useFeatureVisibility();
|
const feats = useFeatureVisibility();
|
||||||
|
const { permissions } = useAuthenticated();
|
||||||
|
|
||||||
const queryClient = useQueryClient();
|
const queryClient = useQueryClient();
|
||||||
const createOrganizationMutation = useMutation(
|
const createOrganizationMutation = useMutation(
|
||||||
@ -19,15 +22,17 @@ const CreateOrganizationPage: FC = () => {
|
|||||||
|
|
||||||
return (
|
return (
|
||||||
<main className="py-7">
|
<main className="py-7">
|
||||||
<CreateOrganizationPageView
|
<RequirePermission isFeatureVisible={permissions.createOrganization}>
|
||||||
error={error}
|
<CreateOrganizationPageView
|
||||||
isEntitled={feats.multiple_organizations}
|
error={error}
|
||||||
onSubmit={async (values) => {
|
isEntitled={feats.multiple_organizations}
|
||||||
await createOrganizationMutation.mutateAsync(values);
|
onSubmit={async (values) => {
|
||||||
displaySuccess("Organization created.");
|
await createOrganizationMutation.mutateAsync(values);
|
||||||
navigate(`/organizations/${values.name}`);
|
displaySuccess("Organization created.");
|
||||||
}}
|
navigate(`/organizations/${values.name}`);
|
||||||
/>
|
}}
|
||||||
|
/>
|
||||||
|
</RequirePermission>
|
||||||
</main>
|
</main>
|
||||||
);
|
);
|
||||||
};
|
};
|
||||||
|
Reference in New Issue
Block a user