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