lila/app/controllers/Coordinate.scala

42 lines
1.0 KiB
Scala
Raw Normal View History

2014-05-03 17:45:14 -06:00
package controllers
import lila.app._
2019-12-04 16:39:16 -07:00
final class Coordinate(env: Env) extends LilaController(env) {
2014-05-03 17:45:14 -06:00
2020-05-05 22:11:15 -06:00
def home =
Open { implicit ctx =>
ctx.userId ?? { userId =>
env.coordinate.api getScore userId map (_.some)
} map { score =>
views.html.coordinate.home(score)
}
2014-05-04 05:53:48 -06:00
}
2020-05-05 22:11:15 -06:00
def score =
AuthBody { implicit ctx => me =>
implicit val body = ctx.body
env.coordinate.forms.score.bindFromRequest.fold(
_ => fuccess(BadRequest),
data => env.coordinate.api.addScore(me.id, data.isWhite, data.score)
) >> {
env.coordinate.api getScore me.id map { s =>
Ok(views.html.coordinate.scoreCharts(s))
}
}
2019-12-13 07:30:20 -07:00
}
2014-05-04 05:53:48 -06:00
2020-05-05 22:11:15 -06:00
def color =
AuthBody { implicit ctx => me =>
implicit val req = ctx.body
env.coordinate.forms.color.bindFromRequest.fold(
_ => fuccess(BadRequest),
value =>
env.pref.api.setPref(
me,
(p: lila.pref.Pref) => p.copy(coordColor = value)
) inject Ok(())
)
}
2014-05-03 17:45:14 -06:00
}