Repository: openmeetings Updated Branches: refs/heads/master f8bbde4a2 -> 947aae60d
[OPENMEETINGS-1697] strong password is enforced during self registration Project: http://git-wip-us.apache.org/repos/asf/openmeetings/repo Commit: http://git-wip-us.apache.org/repos/asf/openmeetings/commit/947aae60 Tree: http://git-wip-us.apache.org/repos/asf/openmeetings/tree/947aae60 Diff: http://git-wip-us.apache.org/repos/asf/openmeetings/diff/947aae60 Branch: refs/heads/master Commit: 947aae60dde68eb8a033432fb3b587ccce7b7394 Parents: f8bbde4 Author: Maxim Solodovnik <[email protected]> Authored: Mon Sep 11 13:13:05 2017 +0700 Committer: Maxim Solodovnik <[email protected]> Committed: Mon Sep 11 13:13:05 2017 +0700 ---------------------------------------------------------------------- .../web/pages/auth/RegisterDialog.html | 2 +- .../web/pages/auth/RegisterDialog.java | 17 ++++++++++++++++- 2 files changed, 17 insertions(+), 2 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/openmeetings/blob/947aae60/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/auth/RegisterDialog.html ---------------------------------------------------------------------- diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/auth/RegisterDialog.html b/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/auth/RegisterDialog.html index 1a80b8a..23c9ac6 100644 --- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/auth/RegisterDialog.html +++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/auth/RegisterDialog.html @@ -44,7 +44,7 @@ </td> </tr> </table> - <span wicket:id="feedback"></span> + <span wicket:id="feedback" class="error"></span> <input type="submit" wicket:id="submit" class="invisible-form-component"/> </form> <div wicket:id="confirmRegistration"></div> http://git-wip-us.apache.org/repos/asf/openmeetings/blob/947aae60/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/auth/RegisterDialog.java ---------------------------------------------------------------------- diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/auth/RegisterDialog.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/auth/RegisterDialog.java index 0910976..c1d4dc4 100644 --- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/auth/RegisterDialog.java +++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/auth/RegisterDialog.java @@ -31,9 +31,11 @@ import java.util.List; import java.util.TimeZone; import java.util.UUID; +import org.apache.openmeetings.core.util.StrongPasswordValidator; import org.apache.openmeetings.db.dao.basic.ConfigurationDao; import org.apache.openmeetings.db.dao.user.IUserManager; import org.apache.openmeetings.db.dao.user.UserDao; +import org.apache.openmeetings.db.entity.user.Address; import org.apache.openmeetings.db.entity.user.User; import org.apache.openmeetings.util.OpenmeetingsVariables; import org.apache.openmeetings.web.app.Application; @@ -53,6 +55,7 @@ import org.apache.wicket.model.IModel; import org.apache.wicket.model.Model; import org.apache.wicket.model.PropertyModel; import org.apache.wicket.util.string.Strings; +import org.apache.wicket.validation.IValidatable; import org.red5.logging.Red5LoggerFactory; import org.slf4j.Logger; @@ -232,7 +235,19 @@ public class RegisterDialog extends NonClosableDialog<String> { firstNameField.setLabel(Model.of(getString("117"))); lastNameField.setLabel(Model.of(getString("136"))); loginField.add(minimumLength(getMinLoginLength(cfgDao))).setLabel(Model.of(getString("114"))); - passwordField.setResetPassword(true).add(minimumLength(getMinPasswdLength(cfgDao))).setLabel(Model.of(getString("110"))); + passwordField.setResetPassword(true).add(new StrongPasswordValidator(getMinPasswdLength(cfgDao), new User()) { + private static final long serialVersionUID = 1L; + + @Override + public void validate(IValidatable<String> pass) { + User u = new User(); + u.setLogin(loginField.getRawInput()); + u.setAddress(new Address()); + u.getAddress().setEmail(emailField.getRawInput()); + setUser(u); + super.validate(pass); + } + }).setLabel(Model.of(getString("110"))); confirmPassword.setLabel(Model.of(getString("116"))); emailField.add(RfcCompliantEmailAddressValidator.getInstance()).setLabel(Model.of(getString("119"))); add(new AjaxButton("submit") { // FAKE button so "submit-on-enter" works as expected
