diff --git a/src/lichess/tournament.ts b/src/lichess/tournament.ts index 05551db93..18d0dea76 100644 --- a/src/lichess/tournament.ts +++ b/src/lichess/tournament.ts @@ -5,5 +5,5 @@ export function isIn(data: Tournament): boolean { } export function previouslyJoined(data: Tournament): boolean { - return data.me != null + return !!data.me } diff --git a/src/ui/tournament/detail/joinForm.tsx b/src/ui/tournament/detail/joinForm.tsx index 1c7d113ce..61252a856 100644 --- a/src/ui/tournament/detail/joinForm.tsx +++ b/src/ui/tournament/detail/joinForm.tsx @@ -5,6 +5,7 @@ import router from '../../../router' import TournamentCtrl from './TournamentCtrl' import formWidgets from '../../shared/form' import settings from '../../../settings' +import * as helper from '../../helper' let isOpen = false let tournamentCtrl: TournamentCtrl @@ -52,7 +53,7 @@ function renderForm() {
- +
diff --git a/src/ui/tournament/detail/tournamentView.tsx b/src/ui/tournament/detail/tournamentView.tsx index 8f0dc3559..c0f74cc20 100644 --- a/src/ui/tournament/detail/tournamentView.tsx +++ b/src/ui/tournament/detail/tournamentView.tsx @@ -75,7 +75,7 @@ export function renderFooter(ctrl: TournamentCtrl): Mithril.Child { } : h.fragment({key: 'noChat'}, []) } - { ctrl.hasJoined ? withdrawButton(ctrl, t) : joinButton(ctrl, t) } + { ctrl.hasJoined ? withdrawButton(ctrl) : joinButton(ctrl) }
) } @@ -181,7 +181,8 @@ function tournamentSpotlightInfo(spotlight: Spotlight) { ) } -function joinButton(ctrl: TournamentCtrl, t: Tournament) { +function joinButton(ctrl: TournamentCtrl) { + const t = ctrl.tournament if (!session.isConnected() || t.isFinished || settings.game.supportedVariants.indexOf(t.variant) < 0 || @@ -189,9 +190,9 @@ function joinButton(ctrl: TournamentCtrl, t: Tournament) { (t.teamBattle && t.teamBattle.joinWith.length === 0)) { return h.fragment({key: 'noJoinButton'}, []) } - const action = ((t.private || t.teamBattle) && !previouslyJoined(t)) ? - () => joinForm.open(ctrl) : - () => ctrl.join() + const action = () => ((ctrl.tournament.private || ctrl.tournament.teamBattle) && !previouslyJoined(ctrl.tournament)) ? + joinForm.open(ctrl) : + ctrl.join() return (