From 019ef4d4448116b45ff850b4c06295ce786cc9c4 Mon Sep 17 00:00:00 2001 From: bytedream Date: Mon, 16 Jun 2025 13:01:08 +0200 Subject: [PATCH] add signup info message --- src/app/admin/settings/Settings.svelte | 6 ++++++ src/app/admin/settings/dynamicSettings.ts | 4 ++++ src/pages/index.astro | 2 ++ src/util/settings.ts | 2 ++ 4 files changed, 14 insertions(+) diff --git a/src/app/admin/settings/Settings.svelte b/src/app/admin/settings/Settings.svelte index c69d30c..ead12c1 100644 --- a/src/app/admin/settings/Settings.svelte +++ b/src/app/admin/settings/Settings.svelte @@ -52,6 +52,12 @@ value: dynamicSettings.signupEnabled(), onChange: dynamicSettings.signupSetEnabled }, + { + name: 'Text unter dem Anmelde Button', + type: 'textarea', + value: dynamicSettings.signupInfoText(), + onChange: dynamicSettings.signupSetInfoText + }, { name: 'Text, wenn die Anmeldung deaktiviert ist', type: 'textarea', diff --git a/src/app/admin/settings/dynamicSettings.ts b/src/app/admin/settings/dynamicSettings.ts index 76c1855..3f28ece 100644 --- a/src/app/admin/settings/dynamicSettings.ts +++ b/src/app/admin/settings/dynamicSettings.ts @@ -34,6 +34,10 @@ export class DynamicSettings { signupEnabled = () => this.get(SettingKey.SignupEnabled, false); signupSetEnabled = (active: boolean) => this.set(SettingKey.SignupEnabled, active); + /* signup info text */ + signupInfoText = () => this.get(SettingKey.SignupInfoMessage, ''); + signupSetInfoText = (text: string) => this.set(SettingKey.SignupInfoMessage, text); + /* signup disabled text */ signupDisabledText = () => this.get(SettingKey.SignupDisabledMessage, ''); signupSetDisabledText = (text: string) => this.set(SettingKey.SignupDisabledMessage, text); diff --git a/src/pages/index.astro b/src/pages/index.astro index 043ff1b..3b4a89a 100644 --- a/src/pages/index.astro +++ b/src/pages/index.astro @@ -13,6 +13,7 @@ const teams = await db.getTeams({}); const deaths = await db.getDeaths({}); const signupEnabled = await getSetting(db, SettingKey.SignupEnabled, false); +const signupInfoMessage = await getSetting(db, SettingKey.SignupInfoMessage); const information = [ { @@ -64,6 +65,7 @@ const information = [ >{signupEnabled ? 'Jetzt registrieren' : 'Infos zur Anmeldung'} + {signupInfoMessage && {signupInfoMessage}} diff --git a/src/util/settings.ts b/src/util/settings.ts index e5c08a3..5db40a3 100644 --- a/src/util/settings.ts +++ b/src/util/settings.ts @@ -39,12 +39,14 @@ export async function getSettings(db: Database, keys?: K export enum SettingKey { SignupEnabled = 'signup.enabled', + SignupInfoMessage = 'signup.infoMessage', SignupDisabledMessage = 'signup.disabledMessage', SignupDisabledSubMessage = 'signup.disabledSubMessage' } export type SettingKeyValueType = { [SettingKey.SignupEnabled]: boolean; + [SettingKey.SignupInfoMessage]: string; [SettingKey.SignupDisabledMessage]: string; [SettingKey.SignupDisabledSubMessage]: string; }[K];