diff --git a/dashboard/src/states/Dashboard/pages/Info/components/Defaults/components/Permissions/Permissions.jsx b/dashboard/src/states/Dashboard/pages/Info/components/Defaults/components/Permissions/Permissions.jsx new file mode 100644 index 0000000..d541735 --- /dev/null +++ b/dashboard/src/states/Dashboard/pages/Info/components/Defaults/components/Permissions/Permissions.jsx @@ -0,0 +1,49 @@ +import {Button, Dialog, DialogActions, DialogContent, DialogTitle, Stack, Typography} from "@mui/material"; +import {ProjectContext} from "@/states/Dashboard/contexts/Project"; +import {useContext, useState} from "react"; +import {patchRequest} from "@/common/utils/RequestUtil.js"; +import {default as PermissionDialog} from "@/states/Dashboard/pages/Licenses/components/LicenseDialog/pages/Permissions"; + +export const Permissions = () => { + + const {currentProject, updateProjects} = useContext(ProjectContext); + + const [open, setOpen] = useState(false); + + const [permissions, setPermissions] = useState(currentProject.defaults.permissions); + + const savePermissions = async () => { + try { + setOpen(false); + await patchRequest(`/project/${currentProject.id}`, {defaults: {permissions}}); + await updateProjects(); + } catch (e) { + console.error(e.message); + } + } + + return ( + + setOpen(false)}> + Update default permissions + + + + + + + + + + + Permissions + + {currentProject.defaults.permissions.length > 0 && <>Current permissions: {currentProject.defaults.permissions.join(", ")}} + {currentProject.defaults.permissions.length === 0 && <>No permissions selected} + + + + + ) +} \ No newline at end of file diff --git a/dashboard/src/states/Dashboard/pages/Info/components/Defaults/components/Permissions/index.js b/dashboard/src/states/Dashboard/pages/Info/components/Defaults/components/Permissions/index.js new file mode 100644 index 0000000..47bc9c0 --- /dev/null +++ b/dashboard/src/states/Dashboard/pages/Info/components/Defaults/components/Permissions/index.js @@ -0,0 +1 @@ +export {Permissions as default} from "./Permissions.jsx"; \ No newline at end of file