From f1abe1d0fa681917a0a87ce35359d1e204e69867 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Felix=20D=C3=B6rre?= Date: Thu, 26 May 2016 21:19:16 +0200 Subject: [PATCH] assert a minimum age while signup Change-Id: I83e40b1cb235ff63fcc0c68bf67a8d5d39d57989 --- src/org/cacert/gigi/dbObjects/User.java | 2 ++ src/org/cacert/gigi/pages/main/Signup.java | 6 ++++++ 2 files changed, 8 insertions(+) diff --git a/src/org/cacert/gigi/dbObjects/User.java b/src/org/cacert/gigi/dbObjects/User.java index 99d44a7c..8f7c3f14 100644 --- a/src/org/cacert/gigi/dbObjects/User.java +++ b/src/org/cacert/gigi/dbObjects/User.java @@ -39,6 +39,8 @@ public class User extends CertificateOwner { private final Set groups = new HashSet<>(); + public static final int MINIMUM_AGE = 16; + protected User(GigiResultSet rs) { super(rs.getInt("id")); updateName(rs); diff --git a/src/org/cacert/gigi/pages/main/Signup.java b/src/org/cacert/gigi/pages/main/Signup.java index 52fddbeb..75a14cfe 100644 --- a/src/org/cacert/gigi/pages/main/Signup.java +++ b/src/org/cacert/gigi/pages/main/Signup.java @@ -19,6 +19,7 @@ import org.cacert.gigi.output.DateSelector; import org.cacert.gigi.output.template.Form; import org.cacert.gigi.output.template.Template; import org.cacert.gigi.pages.Page; +import org.cacert.gigi.util.CalendarUtil; import org.cacert.gigi.util.HTMLEncoder; import org.cacert.gigi.util.Notary; import org.cacert.gigi.util.PasswordStrengthChecker; @@ -98,6 +99,11 @@ public class Signup extends Form { if ( !myDoB.isValid()) { outputError(out, req, "Invalid date of birth"); } + + if ( !CalendarUtil.isOfAge(myDoB.getDate(), User.MINIMUM_AGE)) { + outputError(out, req, "Entered dated of birth is below the restricted age requirements."); + } + if ( !"1".equals(req.getParameter("tos_agree"))) { outputError(out, req, "Acceptance of the ToS is required to continue."); } -- 2.39.2