diff --git a/client/src/pages/MatchPage.jsx b/client/src/pages/MatchPage.jsx index 9e3c633..e950869 100644 --- a/client/src/pages/MatchPage.jsx +++ b/client/src/pages/MatchPage.jsx @@ -127,7 +127,7 @@ export default function MatchPage() { {viewer.role === 'public' && } -
+
@@ -156,8 +156,8 @@ function describeViewer(viewer, teams) { function Stage(ctx) { const { state, isOrg, act, busy } = ctx; - if (state.viewer.role === 'public') { - return

{state.statusLabel}

Details sehen nur Teilnehmer.

; + if (state.viewer.role === 'public' && state.status === 'lobby') { + return

{state.statusLabel}

Das Veto und der Spielstand erscheinen hier, sobald das Match startet.

; } if (state.status === 'lobby') { const { A, B } = state.teams; @@ -230,8 +230,8 @@ function MapPoolPreview({ maps }) { function PublicNotice() { return (
- Du siehst diese Lobby ohne Zugang. Spieler treten über den Einladungslink ihres Teams bei, - Zuschauer über den Zuschauerlink. Beides bekommst du vom Organisator. + Du siehst dieses Match ohne Zugang. Veto, Serienstand und Ergebnisse sind öffentlich. + Teamdetails und Verbindungsdaten gibt es nur für Teilnehmer.
); } diff --git a/server/src/matchService.js b/server/src/matchService.js index 171531f..7c6b597 100644 --- a/server/src/matchService.js +++ b/server/src/matchService.js @@ -892,7 +892,7 @@ export class MatchService extends EventEmitter { requireFullTeams: this.config.requireFullTeams, autoAdvanceSeconds: this.config.autoAdvanceSeconds, maps: pool.maps, - veto: publicView + veto: publicView && match.status === 'lobby' ? null : { started: match.status !== 'lobby',