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

Reply via email to