lila/app/views/tournament/home.scala.html

80 lines
2.4 KiB
HTML

@(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: @Html(J.stringify(json)),
i18n: @jsI18n()
});
lichess.StrongSocket.defaults.params.flag = "tournament";
lichess.StrongSocket.defaults.events.reload = app.update;
}
}
@side = {
<div class="tournament_home_side">
<div class="tournament_links">
<a href="@routes.Tournament.help("arena".some)">@trans.tournamentFAQ()</a>
</div>
<h2 class="leaderboard_title">
<a href="@routes.Tournament.leaderboard">@trans.leaderboard()</a>
</h2>
<ul class="tournament_leaderboard">
@winners.top.map { w =>
<li>
@userIdLink(w.userId.some)
<a title="@w.tourName" href="@routes.Tournament.show(w.tourId)">@scheduledTournamentNameShortHtml(w.tourName)</a>
</li>
}
</ul>
<h2 class="leaderboard_title">@trans.lichessTournaments()</h2>
<ol class="scheduled_tournaments">
@scheduled.map { tour =>
@tour.schedule.map { s =>
@if(s.freq != lila.tournament.Schedule.Freq.Hourly) {
<li data-icon="@tournamentIconChar(tour)" class="is-gold @s.freq.name">
<a href="@routes.Tournament.show(tour.id)">@tour.name</a>
@momentFromNow(s.at)
</li>
}
}
}
</ol>
</div>
}
@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) {
<div class="content_box tournament_box no_padding">
@if(ctx.isAuth) {
<div class="create_tournament">
<a href="@routes.Tournament.form()" class="action button text">@trans.createANewTournament()</a>
</div>
}
<h1>@trans.tournaments()</h1>
<div id="tournament_schedule"></div>
<div id="tournament_list">
<table class="slist finished">
<thead>
<tr>
<th colspan=2 class="large">@trans.finished()</th>
<th>@trans.duration()</th>
<th>@trans.winner()</th>
<th>@trans.players()</th>
</tr>
</thead>
@finishedPaginator(finished)
</table>
</div>
</div>
}