activate live statistics via settings
All checks were successful
deploy / build-and-deploy (push) Successful in 16s

This commit is contained in:
2025-11-11 02:06:38 +01:00
parent 607163e503
commit 87d3f7c3af
4 changed files with 22 additions and 4 deletions

View File

@@ -71,6 +71,17 @@
onChange: dynamicSettings.signupSetDisabledSubtext onChange: dynamicSettings.signupSetDisabledSubtext
} }
] ]
},
{
name: 'Live-Statistiken',
entries: [
{
name: 'Aktiviert',
type: 'checkbox',
value: dynamicSettings.liveStatisticsEnabled(),
onChange: dynamicSettings.liveStatisticsSetEnabled
}
]
} }
]; ];

View File

@@ -32,7 +32,7 @@ export class DynamicSettings {
/* signup enabled */ /* signup enabled */
signupEnabled = () => this.get(SettingKey.SignupEnabled, false); signupEnabled = () => this.get(SettingKey.SignupEnabled, false);
signupSetEnabled = (active: boolean) => this.set(SettingKey.SignupEnabled, active); signupSetEnabled = (enabled: boolean) => this.set(SettingKey.SignupEnabled, enabled);
/* signup info text */ /* signup info text */
signupInfoText = () => this.get(SettingKey.SignupInfoMessage, ''); signupInfoText = () => this.get(SettingKey.SignupInfoMessage, '');
@@ -45,4 +45,8 @@ export class DynamicSettings {
/* signup disabled subtext */ /* signup disabled subtext */
signupDisabledSubtext = () => this.get(SettingKey.SignupDisabledSubMessage, ''); signupDisabledSubtext = () => this.get(SettingKey.SignupDisabledSubMessage, '');
signupSetDisabledSubtext = (text: string) => this.set(SettingKey.SignupDisabledSubMessage, text); signupSetDisabledSubtext = (text: string) => this.set(SettingKey.SignupDisabledSubMessage, text);
/* live statistics enabled */
liveStatisticsEnabled = () => this.get(SettingKey.LiveStatisticsEnabled, false);
liveStatisticsSetEnabled = (enabled: boolean) => this.set(SettingKey.LiveStatisticsEnabled, enabled);
} }

View File

@@ -4,12 +4,13 @@ import Countdown from '@app/website/index/Countdown.svelte';
import LiveStats from '@app/website/index/LiveStats.svelte'; import LiveStats from '@app/website/index/LiveStats.svelte';
import Craftattack from '@assets/img/craftattack.webp'; import Craftattack from '@assets/img/craftattack.webp';
import Background from '@assets/img/background.webp'; import Background from '@assets/img/background.webp';
import { START_DATE, STATISTICS_ENDPOINT } from 'astro:env/server'; import { START_DATE } from 'astro:env/server';
import { getSetting, SettingKey } from '@util/settings'; import { getSetting, SettingKey } from '@util/settings';
import { db } from '@db/database.ts'; import { db } from '@db/database.ts';
const signupEnabled = await getSetting(db, SettingKey.SignupEnabled, false); const signupEnabled = await getSetting(db, SettingKey.SignupEnabled, false);
const signupInfoMessage = await getSetting(db, SettingKey.SignupInfoMessage); const signupInfoMessage = await getSetting(db, SettingKey.SignupInfoMessage);
const statisticsEnabled = await getSetting(db, SettingKey.LiveStatisticsEnabled, false);
const information = [ const information = [
{ {
@@ -98,7 +99,7 @@ const information = [
<div class="flex flex-col justify-center items-center py-20 bg-base-100"> <div class="flex flex-col justify-center items-center py-20 bg-base-100">
{ {
STATISTICS_ENDPOINT && ( statisticsEnabled && (
<> <>
<LiveStats /> <LiveStats />
<div class="divider divider-horizontal mx-auto my-6 h-18" /> <div class="divider divider-horizontal mx-auto my-6 h-18" />

View File

@@ -41,7 +41,8 @@ export enum SettingKey {
SignupEnabled = 'signup.enabled', SignupEnabled = 'signup.enabled',
SignupInfoMessage = 'signup.infoMessage', SignupInfoMessage = 'signup.infoMessage',
SignupDisabledMessage = 'signup.disabledMessage', SignupDisabledMessage = 'signup.disabledMessage',
SignupDisabledSubMessage = 'signup.disabledSubMessage' SignupDisabledSubMessage = 'signup.disabledSubMessage',
LiveStatisticsEnabled = 'liveStatistics.enabled'
} }
export type SettingKeyValueType<K extends SettingKey> = { export type SettingKeyValueType<K extends SettingKey> = {
@@ -49,4 +50,5 @@ export type SettingKeyValueType<K extends SettingKey> = {
[SettingKey.SignupInfoMessage]: string; [SettingKey.SignupInfoMessage]: string;
[SettingKey.SignupDisabledMessage]: string; [SettingKey.SignupDisabledMessage]: string;
[SettingKey.SignupDisabledSubMessage]: string; [SettingKey.SignupDisabledSubMessage]: string;
[SettingKey.LiveStatisticsEnabled]: boolean;
}[K]; }[K];