require email confirmation when signing up from proxy

ceval-multipv-panel^2
Thibault Duplessis 2016-10-03 02:46:33 +02:00
parent cbf3a35be4
commit 652eef8d79
2 changed files with 5 additions and 2 deletions

View File

@ -96,6 +96,9 @@ object Auth extends LilaController {
}
}
private def mustConfirmEmailByIP(ip: String): Fu[Boolean] =
api.recentByIpExists(ip) >>| Mod.ipIntelCache(ip).map(80 <)
def signupPost = OpenBody { implicit ctx =>
implicit val req = ctx.body
NoTor {
@ -106,7 +109,7 @@ object Auth extends LilaController {
data => env.recaptcha.verify(~data.recaptchaResponse, req).flatMap {
case false => BadRequest(html.auth.signup(forms.signup.website fill data, env.RecaptchaPublicKey)).fuccess
case true =>
api.recentByIpExists(HTTPRequest lastRemoteAddress ctx.req) flatMap { mustConfirmEmail =>
mustConfirmEmailByIP(HTTPRequest lastRemoteAddress ctx.req) flatMap { mustConfirmEmail =>
lila.mon.user.register.website()
lila.mon.user.register.mustConfirmEmail(mustConfirmEmail)()
val email = env.emailAddress.validate(data.email) err s"Invalid email ${data.email}"

View File

@ -122,7 +122,7 @@ object Mod extends LilaController {
}
}
private val ipIntelCache =
private[controllers] val ipIntelCache =
lila.memo.AsyncCache[String, Int](ip => {
import play.api.libs.ws.WS
import play.api.Play.current