Repository: openmeetings
Updated Branches:
  refs/heads/3.3.x 5e15ba590 -> e201ec25f


[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/e201ec25
Tree: http://git-wip-us.apache.org/repos/asf/openmeetings/tree/e201ec25
Diff: http://git-wip-us.apache.org/repos/asf/openmeetings/diff/e201ec25

Branch: refs/heads/3.3.x
Commit: e201ec25f6f5fc9facb0cb3629c981a6f872310b
Parents: 5e15ba5
Author: Maxim Solodovnik <[email protected]>
Authored: Mon Sep 11 13:13:05 2017 +0700
Committer: Maxim Solodovnik <[email protected]>
Committed: Mon Sep 11 13:15:34 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/e201ec25/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 6a9a65f..d536bae 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/e201ec25/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 98ed964..2b80f5f 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
@@ -30,9 +30,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.web.app.Application;
 import org.apache.openmeetings.web.app.WebSession;
@@ -51,6 +53,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;
 
@@ -230,7 +233,19 @@ public class RegisterDialog extends 
NonClosableDialog<String> {
                        firstNameField.setLabel(Model.of(getString("117")));
                        lastNameField.setLabel(Model.of(getString("118")));
                        
loginField.add(minimumLength(getMinLoginLength(cfgDao))).setLabel(Model.of(getString("114")));
-                       
passwordField.setResetPassword(true).add(minimumLength(getMinPasswdLength(cfgDao))).setLabel(Model.of(getString("115")));
+                       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