lila/app/controllers/Push.scala

30 lines
808 B
Scala
Raw Permalink Normal View History

package controllers
import lila.app._
import lila.push.WebSubscription
import lila.push.WebSubscription.readers._
2019-12-04 16:39:16 -07:00
final class Push(env: Env) extends LilaController(env) {
2020-05-05 22:11:15 -06:00
def mobileRegister(platform: String, deviceId: String) =
Auth { implicit ctx => me =>
env.push.registerDevice(me, platform, deviceId)
}
2020-05-05 22:11:15 -06:00
def mobileUnregister =
Auth { implicit ctx => me =>
env.push.unregisterDevices(me)
}
2020-05-05 22:11:15 -06:00
def webSubscribe =
AuthBody(parse.json) { implicit ctx => me =>
val currentSessionId = ~env.security.api.reqSessionId(ctx.req)
ctx.body.body
.validate[WebSubscription]
.fold(
err => BadRequest(err.toString).fuccess,
data => env.push.webSubscriptionApi.subscribe(me, data, currentSessionId) inject NoContent
)
}
}