@@ -11,19 +11,14 @@ import { getServerSideTranslations } from '~/tools/server/getServerSideTranslati
|
|||||||
import { checkForSessionOrAskForLogin } from '~/tools/server/loginBuilder';
|
import { checkForSessionOrAskForLogin } from '~/tools/server/loginBuilder';
|
||||||
import { boardNamespaces } from '~/tools/server/translation-namespaces';
|
import { boardNamespaces } from '~/tools/server/translation-namespaces';
|
||||||
import { api } from '~/utils/api';
|
import { api } from '~/utils/api';
|
||||||
|
import { env } from 'process';
|
||||||
|
import fs from 'fs';
|
||||||
|
|
||||||
export default function BoardPage({
|
export default function BoardPage({
|
||||||
config: initialConfig,
|
config: initialConfig,
|
||||||
isDockerEnabled,
|
isDockerEnabled: isDockerEnabled
|
||||||
initialContainers,
|
|
||||||
}: InferGetServerSidePropsType<typeof getServerSideProps>) {
|
}: InferGetServerSidePropsType<typeof getServerSideProps>) {
|
||||||
useInitConfig(initialConfig);
|
useInitConfig(initialConfig);
|
||||||
const { data } = api.docker.containers.useQuery(undefined, {
|
|
||||||
initialData: initialContainers ?? undefined,
|
|
||||||
enabled: isDockerEnabled,
|
|
||||||
cacheTime: 60 * 1000 * 5,
|
|
||||||
staleTime: 60 * 1000 * 1,
|
|
||||||
});
|
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<BoardLayout isDockerEnabled={isDockerEnabled}>
|
<BoardLayout isDockerEnabled={isDockerEnabled}>
|
||||||
@@ -69,15 +64,8 @@ export const getServerSideProps = async (context: GetServerSidePropsContext) =>
|
|||||||
if (result) {
|
if (result) {
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
const caller = dockerRouter.createCaller({
|
|
||||||
session: session,
|
const isDockerEnabled: boolean = !!env.DOCKER_HOST || !!env.DOCKER_PORT || fs.existsSync('/var/run/docker');
|
||||||
cookies: context.req.cookies,
|
|
||||||
});
|
|
||||||
let containers = undefined;
|
|
||||||
// Fetch containers if user is admin, otherwise we don't need them
|
|
||||||
try {
|
|
||||||
if (session?.user.isAdmin == true) containers = await caller.containers();
|
|
||||||
} catch (error) {}
|
|
||||||
|
|
||||||
return {
|
return {
|
||||||
props: {
|
props: {
|
||||||
@@ -85,8 +73,7 @@ export const getServerSideProps = async (context: GetServerSidePropsContext) =>
|
|||||||
primaryColor: config.settings.customization.colors.primary,
|
primaryColor: config.settings.customization.colors.primary,
|
||||||
secondaryColor: config.settings.customization.colors.secondary,
|
secondaryColor: config.settings.customization.colors.secondary,
|
||||||
primaryShade: config.settings.customization.colors.shade,
|
primaryShade: config.settings.customization.colors.shade,
|
||||||
isDockerEnabled: containers != undefined,
|
isDockerEnabled: isDockerEnabled,
|
||||||
initialContainers: containers ?? null,
|
|
||||||
...translations,
|
...translations,
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -2,7 +2,6 @@ import { GetServerSidePropsContext, InferGetServerSidePropsType } from 'next';
|
|||||||
import { Dashboard } from '~/components/Dashboard/Dashboard';
|
import { Dashboard } from '~/components/Dashboard/Dashboard';
|
||||||
import { BoardLayout } from '~/components/layout/Templates/BoardLayout';
|
import { BoardLayout } from '~/components/layout/Templates/BoardLayout';
|
||||||
import { useInitConfig } from '~/config/init';
|
import { useInitConfig } from '~/config/init';
|
||||||
import { dockerRouter } from '~/server/api/routers/docker/router';
|
|
||||||
import { getServerAuthSession } from '~/server/auth';
|
import { getServerAuthSession } from '~/server/auth';
|
||||||
import { getDefaultBoardAsync } from '~/server/db/queries/userSettings';
|
import { getDefaultBoardAsync } from '~/server/db/queries/userSettings';
|
||||||
import { getFrontendConfig } from '~/tools/config/getFrontendConfig';
|
import { getFrontendConfig } from '~/tools/config/getFrontendConfig';
|
||||||
@@ -10,19 +9,14 @@ import { getServerSideTranslations } from '~/tools/server/getServerSideTranslati
|
|||||||
import { checkForSessionOrAskForLogin } from '~/tools/server/loginBuilder';
|
import { checkForSessionOrAskForLogin } from '~/tools/server/loginBuilder';
|
||||||
import { boardNamespaces } from '~/tools/server/translation-namespaces';
|
import { boardNamespaces } from '~/tools/server/translation-namespaces';
|
||||||
import { api } from '~/utils/api';
|
import { api } from '~/utils/api';
|
||||||
|
import { env } from 'process';
|
||||||
|
import fs from 'fs';
|
||||||
|
|
||||||
export default function BoardPage({
|
export default function BoardPage({
|
||||||
config: initialConfig,
|
config: initialConfig,
|
||||||
isDockerEnabled,
|
isDockerEnabled: isDockerEnabled,
|
||||||
initialContainers,
|
|
||||||
}: InferGetServerSidePropsType<typeof getServerSideProps>) {
|
}: InferGetServerSidePropsType<typeof getServerSideProps>) {
|
||||||
useInitConfig(initialConfig);
|
useInitConfig(initialConfig);
|
||||||
const { data } = api.docker.containers.useQuery(undefined, {
|
|
||||||
initialData: initialContainers ?? undefined,
|
|
||||||
enabled: isDockerEnabled,
|
|
||||||
cacheTime: 60 * 1000 * 5,
|
|
||||||
staleTime: 60 * 1000 * 1,
|
|
||||||
});
|
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<BoardLayout isDockerEnabled={isDockerEnabled}>
|
<BoardLayout isDockerEnabled={isDockerEnabled}>
|
||||||
@@ -51,25 +45,16 @@ export const getServerSideProps = async (context: GetServerSidePropsContext) =>
|
|||||||
if (result) {
|
if (result) {
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
const caller = dockerRouter.createCaller({
|
|
||||||
session: session,
|
const isDockerEnabled: boolean = !!env.DOCKER_HOST || !!env.DOCKER_PORT || fs.existsSync('/var/run/docker');
|
||||||
cookies: context.req.cookies,
|
|
||||||
});
|
|
||||||
let containers = undefined;
|
|
||||||
// Fetch containers if user is admin, otherwise we don't need them
|
|
||||||
try {
|
|
||||||
if (session?.user.isAdmin == true) containers = await caller.containers();
|
|
||||||
} catch (error) {
|
|
||||||
|
|
||||||
}
|
|
||||||
return {
|
return {
|
||||||
props: {
|
props: {
|
||||||
config,
|
config,
|
||||||
primaryColor: config.settings.customization.colors.primary,
|
primaryColor: config.settings.customization.colors.primary,
|
||||||
secondaryColor: config.settings.customization.colors.secondary,
|
secondaryColor: config.settings.customization.colors.secondary,
|
||||||
primaryShade: config.settings.customization.colors.shade,
|
primaryShade: config.settings.customization.colors.shade,
|
||||||
isDockerEnabled: containers != undefined,
|
isDockerEnabled: isDockerEnabled,
|
||||||
initialContainers: containers ?? null,
|
|
||||||
...translations,
|
...translations,
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
|
|||||||
Reference in New Issue
Block a user