Member-Bereich: Profilseite, Rollen-Selfservice, Web-Voting, Member-Gate
Der Discord-Login ist jetzt für alle Member nützlich: - /profil: Rang + XP-Fortschritt, Discord-Rollen als Chips, Playtester- Badge, eigener Alpha-Key mit Kopier-Button - Rollen-Selfservice: veröffentlichte Rollen-Menüs direkt im Browser togglen (gleiche Exklusiv-Logik wie die Discord-Buttons; nur Rollen aus aktiven Menüs erlaubt) - Wunsch-Voting im Web: auf /roadmap Wünsche einreichen (postet wie /wunsch in den Voting-Kanal) und upvoten (wish_votes-Tabelle, ein Vote pro Member, unabhängig von Discord-👍) - Member-Gate: Login nur für Mitglieder der konfigurierten Guild; Abgewiesene sehen einen Banner mit Discord-Invite-Link (neue Settings member_gate_enabled + discord_invite_url im System-Tab) - Membership-Check mit 5-Minuten-Cache, Owner immer erlaubt Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
@@ -161,6 +161,16 @@ export function levelRewards() {
|
||||
.sort((a, b) => a.level - b.level);
|
||||
}
|
||||
|
||||
/** Member-Gate: Web-Login nur für Discord-Member (Default: an, wenn Guild gesetzt) */
|
||||
export function memberGateEnabled() {
|
||||
return getSetting('member_gate_enabled') !== '0';
|
||||
}
|
||||
|
||||
/** Discord-Invite-Link für die „Tritt erst dem Server bei"-Seite — leer = keiner */
|
||||
export function discordInviteUrl() {
|
||||
return getSetting('discord_invite_url') || null;
|
||||
}
|
||||
|
||||
/** Kanal für Feature-Wünsche (/wunsch) — leer = Feature aus */
|
||||
export function votingChannelId() {
|
||||
return getSetting('voting_channel_id') || null;
|
||||
|
||||
Reference in New Issue
Block a user