@(scheduled: List[Tournament], finished: Paginator[Tournament], winners: lila.tournament.AllWinners, json: play.api.libs.json.JsObject)(implicit ctx: Context) @moreJs = { @jsTag("vendor/jquery.infinitescroll.min.js") @jsAt(s"compiled/lichess.tournament-schedule${isProd??(".min")}.js") @jsAt("javascripts/vendor/dragscroll.js") @embedJs { var app = LichessTournamentSchedule.app(document.getElementById('tournament_schedule'), { data: @safeJson(json), i18n: @jsI18n() }); lichess.StrongSocket.defaults.params.flag = "tournament"; lichess.StrongSocket.defaults.events.reload = app.update; } } @side = {

@trans.leaderboard()

@trans.lichessTournaments()

@scheduled.map { tour => @tour.schedule.map { s => @if(s.freq != lila.tournament.Schedule.Freq.Hourly) { @tour.name @momentFromNow(s.at) } } }
} @tournament.layout( title = trans.tournaments.txt(), moreJs = moreJs, side = side.some, openGraph = lila.app.ui.OpenGraph( url = s"$netBaseUrl${routes.Tournament.home().url}", title = s"${trans.tournamentHomeTitle()}", description = s"${trans.tournamentHomeDescription()}").some) {
@if(ctx.isAuth) {
@trans.createANewTournament()
}

@trans.tournaments()

@finishedPaginator(finished)
@trans.finished() @trans.duration() @trans.winner() @trans.players()
}