website/src/routes/admin/settings/+page.server.ts
bytedream 95968148a6
All checks were successful
delpoy / build-and-deploy (push) Successful in 35s
update to svelte 5
2024-12-02 00:28:43 +01:00

34 lines
968 B
TypeScript

import type { PageServerLoad } from './$types';
import { getSession } from '$lib/server/session';
import { Permissions } from '$lib/permissions';
import { redirect } from '@sveltejs/kit';
import { env } from '$env/dynamic/public';
import { Settings } from '$lib/server/database';
export const load: PageServerLoad = async ({ parent, cookies }) => {
if (getSession(cookies, { permissions: [Permissions.Settings] }) == null) {
throw redirect(302, `${env.PUBLIC_BASE_PATH}/admin`);
}
const { self } = await parent();
const settings = (await Settings.findAll()).reduce(
(prev, curr) => {
return { ...prev, [curr.key]: curr.value };
},
{} as { [key: string]: any }
);
return {
settings: {
global: {},
register: {
enabled: settings['register.enabled'] ?? true,
disabled_title: settings['register.disabled_title'] ?? 'Anmeldung geschlossen',
disabled_details: settings['register.disabled_details'] ?? ''
}
},
self: self
};
};