X-Git-Url: https://git.arvados.org/arvados-workbench2.git/blobdiff_plain/64c8c2628cbeadba5dce7e18e41028108142b766..df60d34060e3031bdec0ea58c25bcff99d4d3817:/src/store/virtual-machines/virtual-machines-actions.ts diff --git a/src/store/virtual-machines/virtual-machines-actions.ts b/src/store/virtual-machines/virtual-machines-actions.ts index ea6d1aff..62564959 100644 --- a/src/store/virtual-machines/virtual-machines-actions.ts +++ b/src/store/virtual-machines/virtual-machines-actions.ts @@ -5,7 +5,7 @@ import { Dispatch } from "redux"; import { RootState } from '~/store/store'; import { ServiceRepository } from "~/services/services"; -import { navigateToUserVirtualMachines, navigateToAdminVirtualMachines } from "~/store/navigation/navigation-action"; +import { navigateToUserVirtualMachines, navigateToAdminVirtualMachines, navigateToRootProject } from "~/store/navigation/navigation-action"; import { bindDataExplorerActions } from '~/store/data-explorer/data-explorer-action'; import { formatDate } from "~/common/formatters"; import { unionize, ofType, UnionOf } from "~/common/unionize"; @@ -35,7 +35,13 @@ export const openUserVirtualMachines = () => export const openAdminVirtualMachines = () => async (dispatch: Dispatch, getState: () => RootState, services: ServiceRepository) => { - dispatch(navigateToAdminVirtualMachines); + const user = getState().auth.user; + if (user && user.isAdmin) { + dispatch(navigateToAdminVirtualMachines); + } else { + dispatch(navigateToRootProject); + dispatch(snackbarActions.OPEN_SNACKBAR({ message: "You don't have permissions to view this page", hideDuration: 2000, kind: SnackbarKind.ERROR })); + } }; export const openVirtualMachineAttributes = (uuid: string) => @@ -95,7 +101,7 @@ export const openRemoveVirtualMachineDialog = (uuid: string) => export const removeVirtualMachine = (uuid: string) => async (dispatch: Dispatch, getState: () => RootState, services: ServiceRepository) => { - dispatch(snackbarActions.OPEN_SNACKBAR({ message: 'Removing ...' })); + dispatch(snackbarActions.OPEN_SNACKBAR({ message: 'Removing ...', kind: SnackbarKind.INFO })); await services.virtualMachineService.delete(uuid); dispatch(snackbarActions.OPEN_SNACKBAR({ message: 'Removed.', hideDuration: 2000, kind: SnackbarKind.SUCCESS })); dispatch(loadVirtualMachinesAdminData());