2015-12-11 22:23:07 -07:00
|
|
|
package controllers
|
|
|
|
|
|
|
|
import lila.app._
|
|
|
|
import views._
|
|
|
|
|
2019-12-04 16:39:16 -07:00
|
|
|
final class UserTournament(env: Env) extends LilaController(env) {
|
2015-12-11 22:23:07 -07:00
|
|
|
|
2015-12-11 22:49:00 -07:00
|
|
|
def path(username: String, path: String, page: Int) = Open { implicit ctx =>
|
2016-08-02 02:52:18 -06:00
|
|
|
Reasonable(page) {
|
2019-12-04 18:47:46 -07:00
|
|
|
OptionFuResult(env.user.repo named username) { user =>
|
2016-08-02 02:52:18 -06:00
|
|
|
path match {
|
|
|
|
case "recent" =>
|
2019-12-04 16:39:16 -07:00
|
|
|
env.tournament.leaderboardApi.recentByUser(user, page).map { entries =>
|
2019-03-09 18:02:31 -07:00
|
|
|
Ok(html.userTournament.bits.recent(user, entries))
|
2016-08-02 02:52:18 -06:00
|
|
|
}
|
|
|
|
case "best" =>
|
2019-12-04 16:39:16 -07:00
|
|
|
env.tournament.leaderboardApi.bestByUser(user, page).map { entries =>
|
2019-03-09 18:02:31 -07:00
|
|
|
Ok(html.userTournament.bits.best(user, entries))
|
2016-08-02 02:52:18 -06:00
|
|
|
}
|
2019-12-13 07:30:20 -07:00
|
|
|
case "chart" =>
|
|
|
|
env.tournament.leaderboardApi.chart(user).map { data =>
|
|
|
|
Ok(html.userTournament.chart(user, data))
|
|
|
|
}
|
2016-08-02 02:52:18 -06:00
|
|
|
case _ => notFound
|
2015-12-11 23:38:56 -07:00
|
|
|
}
|
2015-12-11 22:23:07 -07:00
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|