remove paypal link settings and show link when registered successfully
All checks were successful
delpoy / build-and-deploy (push) Successful in 1m1s

This commit is contained in:
bytedream 2024-11-27 20:34:07 +01:00
parent 45f8550604
commit 6635591788
8 changed files with 39 additions and 23 deletions

View File

@ -4,3 +4,8 @@ ADMIN_PASSWORD=admin
REPORT_SECRET= REPORT_SECRET=
PUBLIC_START_DATE=2023-12-26T00:00:00+0200 PUBLIC_START_DATE=2023-12-26T00:00:00+0200
PUBLIC_BASE_PATH= PUBLIC_BASE_PATH=
PUBLIC_SERVER_IP=example.com
PUBLIC_TS_LINK=ts3server://example.com
PUBLIC_DISCORD_LINK=https://example.com
PUBLIC_PAYPAL_LINK=https://example.com

View File

@ -22,9 +22,7 @@ export const load: PageServerLoad = async ({ parent, cookies }) => {
return { return {
settings: { settings: {
global: { global: {},
paypal_link: settings['global.paypal_link'] ?? ''
},
register: { register: {
enabled: settings['register.enabled'] ?? true, enabled: settings['register.enabled'] ?? true,
disabled_title: settings['register.disabled_title'] ?? 'Anmeldung geschlossen', disabled_title: settings['register.disabled_title'] ?? 'Anmeldung geschlossen',

View File

@ -8,9 +8,7 @@
await fetch(`${env.PUBLIC_BASE_PATH}/admin/settings`, { await fetch(`${env.PUBLIC_BASE_PATH}/admin/settings`, {
method: 'POST', method: 'POST',
body: JSON.stringify({ body: JSON.stringify({
global: { global: {},
paypal_link: returnIfNoDup(settings.global.paypal_link, data.settings.global.paypal_link)
},
register: { register: {
enabled: returnIfNoDup(settings.register.enabled, data.settings.register.enabled), enabled: returnIfNoDup(settings.register.enabled, data.settings.register.enabled),
disabled_title: returnIfNoDup( disabled_title: returnIfNoDup(
@ -35,13 +33,13 @@
<div class="h-full flex flex-col items-center justify-between"> <div class="h-full flex flex-col items-center justify-between">
<div class="grid grid-cols-3 w-full [&>*]:mx-8"> <div class="grid grid-cols-3 w-full [&>*]:mx-8">
<div> <!--div>
<div class="divider">Global</div> <div class="divider">Global</div>
<label class="label"> <label class="label">
<span class="label-text">PayPal-Spendenlink</span> <span class="label-text">PayPal-Spendenlink</span>
<input type="text" class="input input-bordered" bind:value={settings.global.paypal_link} /> <input type="text" class="input input-bordered" bind:value={settings.global.paypal_link} />
</label> </label>
</div> </div-->
<div> <div>
<div class="divider">Anmeldung</div> <div class="divider">Anmeldung</div>
<label class="label cursor-pointer"> <label class="label cursor-pointer">

View File

@ -1,8 +0,0 @@
import type { PageServerLoad } from './$types';
import { Settings } from '$lib/server/database';
export const load: PageServerLoad = async () => {
return {
paypal_link: (await Settings.findOne({ where: { key: 'global.paypal_link' } }))?.value ?? ''
};
};

View File

@ -1,5 +1,6 @@
<script lang="ts"> <script lang="ts">
import type { PageData } from './$types'; import type { PageData } from './$types';
import { env } from '$env/dynamic/public';
export let data: PageData; export let data: PageData;
@ -9,7 +10,7 @@
questions: [ questions: [
{ {
title: 'Wie kann ich einen Admin kontaktieren?', title: 'Wie kann ich einen Admin kontaktieren?',
content: `<p>Einen Admin kannst du im Chat, über WhatsApp, per Teamspeak (<a class="link" href="ts3server://mhsl.eu?port=9987">mhsl.eu</a>) oder Discord (<a class="link" href="https://discord.gg/EBGefWPc2K" target="_blank">https://discord.gg/EBGefWPc2K</a>) kontaktieren.</p>` content: `<p>Einen Admin kannst du im Chat, über WhatsApp, per Teamspeak (<a class="link" href="${env.PUBLIC_TS_LINK}">mhsl.eu</a>) oder Discord (<a class="link" href="https://discord.gg/EBGefWPc2K" target="_blank">https://discord.gg/EBGefWPc2K</a>) kontaktieren.</p>`
}, },
{ {
title: 'Wer ist eigentlich Organisator und warum?', title: 'Wer ist eigentlich Organisator und warum?',
@ -28,11 +29,11 @@ des Projekts.</p>`
}, },
{ {
title: 'Gibt es einen Teamspeak-Server?', title: 'Gibt es einen Teamspeak-Server?',
content: `<p>Ja, den offiziellen Teamspeak-Server erreichst du unter der IP <a class="link" href="ts3server://mhsl.eu?port=9987">mhsl.eu</a>.</p>` content: `<p>Ja, den offiziellen Teamspeak-Server erreichst du unter der IP <a class="link" href="${env.PUBLIC_TS_LINK}">mhsl.eu</a>.</p>`
}, },
{ {
title: 'Gibt es einen Discord-Server?', title: 'Gibt es einen Discord-Server?',
content: `<p>Ja, den offiziellen Discord-Server erreichst du unter <a class="link" href="https://discord.gg/EBGefWPc2K" target="_blank">https://discord.gg/EBGefWPc2K</a>.</p>` content: `<p>Ja, den offiziellen Discord-Server erreichst du unter <a class="link" href="${env.PUBLIC_DISCORD_LINK}" target="_blank">${env.PUBLIC_DISCORD_LINK}</a>.</p>`
}, },
{ {
title: 'Wozu dient die CraftAttack-WhatsApp-Gruppe?', title: 'Wozu dient die CraftAttack-WhatsApp-Gruppe?',
@ -82,7 +83,7 @@ dich jederzeit beim Admin-Team melden.</p>`
title: 'Ich komme nicht auf den Server, was kann ich tun?', title: 'Ich komme nicht auf den Server, was kann ich tun?',
content: `<p>Wenn du dem Server nicht beitreten kannst, überprüfe Folgendes:</p> content: `<p>Wenn du dem Server nicht beitreten kannst, überprüfe Folgendes:</p>
<ol class="list-decimal pl-8 py-3"> <ol class="list-decimal pl-8 py-3">
<li>Hast du die korrekte IP verwendet? Sie lautet <span class="underline italic">craftattack.mhsl.eu</span>.</li> <li>Hast du die korrekte IP verwendet? Sie lautet <span class="underline italic">${env.PUBLIC_SERVER_IP}</span>.</li>
<li>Hast du Leerzeichen verwendet, insbesondere vor oder hinter der IP, oder dich vertippt?</li> <li>Hast du Leerzeichen verwendet, insbesondere vor oder hinter der IP, oder dich vertippt?</li>
<li>Kommst du auf andere Server, oder ist es nur ein Problem beim CraftAttack-Server?</li> <li>Kommst du auf andere Server, oder ist es nur ein Problem beim CraftAttack-Server?</li>
<li>Hast du dich korrekt auf der Webseite angemeldet?</li> <li>Hast du dich korrekt auf der Webseite angemeldet?</li>
@ -92,14 +93,14 @@ Fehlermeldung bereit.</p>`
}, },
{ {
title: 'Was ist die Server-IP?', title: 'Was ist die Server-IP?',
content: `<p>Die Serveradresse lautet: <span class="underline italic">craftattack.mhsl.eu</span>.</p>` content: `<p>Die Serveradresse lautet: <span class="underline italic">${env.PUBLIC_SERVER_IP}</span>.</p>`
}, },
{ {
title: 'Ist es kostenlos mitzuspielen?', title: 'Ist es kostenlos mitzuspielen?',
content: `<p>Ja, die Teilnahme ist selbstverständlich kostenlos.${ content: `<p>Ja, die Teilnahme ist selbstverständlich kostenlos.${
data.paypal_link env.PUBLIC_PAYPAL_LINK
? `Wir freuen uns aber, wenn du das Projekt mit einer Spende nach der Anmeldung unterstützen würdest.<br> ? `Wir freuen uns aber, wenn du das Projekt mit einer Spende nach der Anmeldung unterstützen würdest.<br>
Hier kannst du für das Projekt spenden: <a class="link" href=${data.paypal_link} target="_blank">${data.paypal_link}</a>.` Hier kannst du für das Projekt spenden: <a class="link" href=${data.paypal_link} target="_blank">${env.PUBLIC_PAYPAL_LINK}</a>.`
: '' : ''
}</p>` }</p>`
}, },

View File

@ -59,6 +59,13 @@
>. >.
</p> </p>
<p>Alle weiteren Informationen werden in der Whatsapp-Gruppe bekannt gegeben.</p> <p>Alle weiteren Informationen werden in der Whatsapp-Gruppe bekannt gegeben.</p>
<p class="mt-1">Weiterführende Links:</p>
<ul class="list-disc pl-8">
<li><a class="link" href="{env.PUBLIC_BASE_PATH}/faq" target="_blank">FAQ</a></li>
<li><a class="link" href={env.PUBLIC_TS_LINK} target="_blank">TeamSpeak</a></li>
<li><a class="link" href={env.PUBLIC_DISCORD_LINK} target="_blank">Discord</a></li>
<li><a class="link" href={env.PUBLIC_PAYPAL_LINK} target="_blank">PayPal Spendenlink</a></li>
</ul>
<div class="divider" /> <div class="divider" />
<div class="flex justify-around mt-2 mb-4"> <div class="flex justify-around mt-2 mb-4">
<div class="grid grid-cols-1 sm:grid-cols-2 w-full sm:w-fit gap-x-4 gap-y-2"> <div class="grid grid-cols-1 sm:grid-cols-2 w-full sm:w-fit gap-x-4 gap-y-2">

View File

@ -0,0 +1,15 @@
import type { PageServerLoad } from './$types';
import { Report, Settings } from '$lib/server/database';
export const load: PageServerLoad = async () => {
return {
created: Report.findAll({ where: {} }),
enabled: (await Settings.findOne({ where: { key: 'register.enabled' } }))?.value ?? true,
disabled_title:
(await Settings.findOne({ where: { key: 'register.disabled_title' } }))?.value ??
'Anmeldung geschlossen',
disabled_details:
(await Settings.findOne({ where: { key: 'register.disabled_details' } }))?.value ?? ''
};
};

View File