From 5c9c405e1b3cbe7b10b37e1a55439322bcf9e87e Mon Sep 17 00:00:00 2001 From: Sharktheone Date: Wed, 31 May 2023 04:36:11 +0200 Subject: [PATCH 1/2] add permission check for getServerStartup --- .../server/features/JavaVersionModalFeature.tsx | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/resources/scripts/components/server/features/JavaVersionModalFeature.tsx b/resources/scripts/components/server/features/JavaVersionModalFeature.tsx index 80d8cc2871..1783a3b89a 100644 --- a/resources/scripts/components/server/features/JavaVersionModalFeature.tsx +++ b/resources/scripts/components/server/features/JavaVersionModalFeature.tsx @@ -12,6 +12,7 @@ import useWebsocketEvent from '@/plugins/useWebsocketEvent'; import Can from '@/components/elements/Can'; import getServerStartup from '@/api/swr/getServerStartup'; import InputSpinner from '@/components/elements/InputSpinner'; +import { usePermissions } from '@/plugins/usePermissions'; const MATCH_ERRORS = [ 'minecraft 1.17 requires running the server with java 16 or above', @@ -31,14 +32,20 @@ const JavaVersionModalFeature = () => { const { clearFlashes, clearAndAddHttpError } = useFlash(); const { instance } = ServerContext.useStoreState(state => state.socket); - const { data, isValidating, mutate } = getServerStartup(uuid, undefined, { revalidateOnMount: false }); + const hasPermission = usePermissions('startup.docker-image'); + + const { data, isValidating, mutate } = hasPermission + ? getServerStartup(uuid, undefined, { revalidateOnMount: false }) + : { data: undefined, isValidating: false, mutate: undefined }; useEffect(() => { if (!visible) return; - mutate().then(value => { - setSelectedVersion(Object.values(value?.dockerImages || [])[0] || ''); - }); + if (mutate) { + mutate().then((value) => { + setSelectedVersion(Object.values(value?.dockerImages || [])[0] || ''); + }); + } }, [visible]); useWebsocketEvent(SocketEvent.CONSOLE_OUTPUT, data => { From 8e2dc727469678522865aab9115197a8d99857f8 Mon Sep 17 00:00:00 2001 From: Sharktheone Date: Wed, 31 May 2023 04:37:50 +0200 Subject: [PATCH 2/2] Add MC 1.19 invalid Java message to Java Version Modal --- .../components/server/features/JavaVersionModalFeature.tsx | 1 + 1 file changed, 1 insertion(+) diff --git a/resources/scripts/components/server/features/JavaVersionModalFeature.tsx b/resources/scripts/components/server/features/JavaVersionModalFeature.tsx index 1783a3b89a..0ddc0d34c2 100644 --- a/resources/scripts/components/server/features/JavaVersionModalFeature.tsx +++ b/resources/scripts/components/server/features/JavaVersionModalFeature.tsx @@ -17,6 +17,7 @@ import { usePermissions } from '@/plugins/usePermissions'; const MATCH_ERRORS = [ 'minecraft 1.17 requires running the server with java 16 or above', 'minecraft 1.18 requires running the server with java 17 or above', + 'minecraft 1.19 requires running the server with Java 17 or above', 'java.lang.unsupportedclassversionerror', 'unsupported major.minor version', 'has been compiled by a more recent version of the java runtime',