This commit is contained in:
@ -22,6 +22,9 @@ export const load: PageServerLoad = async ({ parent, cookies }) => {
|
||||
|
||||
return {
|
||||
settings: {
|
||||
global: {
|
||||
paypal_link: settings['global.paypal_link'] ?? ''
|
||||
},
|
||||
register: {
|
||||
enabled: settings['register.enabled'] ?? true,
|
||||
disabled_title: settings['register.disabled_title'] ?? 'Anmeldung geschlossen',
|
||||
|
@ -8,6 +8,9 @@
|
||||
await fetch(`${env.PUBLIC_BASE_PATH}/admin/settings`, {
|
||||
method: 'POST',
|
||||
body: JSON.stringify({
|
||||
global: {
|
||||
paypal_link: returnIfNoDup(settings.global.paypal_link, data.settings.global.paypal_link)
|
||||
},
|
||||
register: {
|
||||
enabled: returnIfNoDup(settings.register.enabled, data.settings.register.enabled),
|
||||
disabled_title: returnIfNoDup(
|
||||
@ -32,6 +35,13 @@
|
||||
|
||||
<div class="h-full flex flex-col items-center justify-between">
|
||||
<div class="grid grid-cols-3 w-full [&>*]:mx-8">
|
||||
<div>
|
||||
<div class="divider">Global</div>
|
||||
<label class="label">
|
||||
<span class="label-text">PayPal-Spendenlink</span>
|
||||
<input type="text" class="input input-bordered" bind:value={settings.global.paypal_link} />
|
||||
</label>
|
||||
</div>
|
||||
<div>
|
||||
<div class="divider">Anmeldung</div>
|
||||
<label class="label cursor-pointer">
|
||||
|
@ -13,16 +13,18 @@ export const POST = (async ({ request, cookies }) => {
|
||||
|
||||
const settings: PageData['settings'] = await request.json();
|
||||
|
||||
for (const [key, value] of Object.entries(settings.register)) {
|
||||
const setting = await Settings.findOne({ where: { key: `register.${key}` } });
|
||||
if (setting) {
|
||||
setting.value = JSON.stringify(value);
|
||||
await setting.save();
|
||||
} else {
|
||||
await Settings.create({
|
||||
key: `register.${key}`,
|
||||
value: JSON.stringify(value)
|
||||
});
|
||||
for (const [group, entries] of Object.entries(settings)) {
|
||||
for (const [key, value] of Object.entries(entries)) {
|
||||
const setting = await Settings.findOne({ where: { key: `${group}.${key}` } });
|
||||
if (setting) {
|
||||
setting.value = JSON.stringify(value);
|
||||
await setting.save();
|
||||
} else {
|
||||
await Settings.create({
|
||||
key: `${group}.${key}`,
|
||||
value: JSON.stringify(value)
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user