From cee7bb7e596486828fb2b10cc8d56c196ed60124 Mon Sep 17 00:00:00 2001 From: Benny Baumann Date: Sun, 19 Mar 2017 18:10:48 +0100 Subject: [PATCH] add: Check the primary email address to be valid before creating an User Change-Id: Icdf298892b7b64d72c310bdb633c8e05113d6eda --- src/club/wpia/gigi/dbObjects/User.java | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/club/wpia/gigi/dbObjects/User.java b/src/club/wpia/gigi/dbObjects/User.java index 9703fa8f..a4c32014 100644 --- a/src/club/wpia/gigi/dbObjects/User.java +++ b/src/club/wpia/gigi/dbObjects/User.java @@ -17,6 +17,7 @@ import club.wpia.gigi.database.GigiResultSet; import club.wpia.gigi.dbObjects.CATS.CATSType; import club.wpia.gigi.dbObjects.Country.CountryCodeType; import club.wpia.gigi.dbObjects.Verification.VerificationType; +import club.wpia.gigi.email.EmailProvider; import club.wpia.gigi.localisation.Language; import club.wpia.gigi.output.DateSelector; import club.wpia.gigi.pages.PasswordResetPage; @@ -104,6 +105,11 @@ public class User extends CertificateOwner { } public User(String email, String password, DayDate dob, Locale locale, Country residenceCountry, NamePart... preferred) throws GigiApiException { + // Avoid storing information that obviously won't get through + if ( !EmailProvider.isValidMailAddress(email)) { + throw new IllegalArgumentException("Invalid email."); + } + this.email = email; this.dob = dob; this.locale = locale; @@ -118,6 +124,7 @@ public class User extends CertificateOwner { query.setString(7, residenceCountry == null ? null : residenceCountry.getCode()); query.execute(); } + new EmailAddress(this, email, locale); } -- 2.39.2