]> git.mxchange.org Git - jfinancials-war.git/commitdiff
added some checks for user name / email address, the user name may be optional
authorRoland Häder <roland@mxchange.org>
Fri, 13 May 2016 08:14:03 +0000 (10:14 +0200)
committerRoland Haeder <roland@mxchange.org>
Fri, 13 May 2016 20:33:22 +0000 (22:33 +0200)
src/java/org/mxchange/addressbook/beans/register/AddressbookUserRegisterWebSessionBean.java

index 6f6d2e15ffb0949a3bd065e07c3cbdabb0657065..638954b27da7d687915e80c0037e41ec2ea993dd 100644 (file)
@@ -113,7 +113,7 @@ public class AddressbookUserRegisterWebSessionBean extends BaseAddressbookContro
                } else if (!this.userController.isRequiredPersonalDataSet()) {
                        // Not all required fields are set
                        throw new FaceletException("Not all required fields are set."); //NOI18N
-               } else if (this.userController.isUserNameRegistered(user)) {
+               } else if ((this.userController.isUserNameRequired()) && (this.userController.isUserNameRegistered(user))) {
                        // User name is already used
                        throw new FaceletException(new UserNameAlreadyRegisteredException(user));
                } else if (this.contactController.isEmailAddressRegistered(user.getUserContact())) {
@@ -162,6 +162,24 @@ public class AddressbookUserRegisterWebSessionBean extends BaseAddressbookContro
 
        @Override
        public String doRegisterMultiPage1 () {
+               // Get user instance
+               User user = this.userController.createUserInstance();
+
+               // Page 1 has only email address and maybe user name
+               if (null == user) {
+                       // user must be set
+                       throw new NullPointerException("user is null after createUserInstance() was called"); //NOI18N
+               } else if ((this.userController.isUserNameRequired()) && (this.userController.isUserNameRegistered(user))) {
+                       // User name is already used
+                       throw new FaceletException(new UserNameAlreadyRegisteredException(user));
+               } else if (this.contactController.isEmailAddressRegistered(user.getUserContact())) {
+                       // Email address has already been taken
+                       throw new FaceletException(new EmailAddressAlreadyRegisteredException(user));
+               } else if (!this.contactController.isSameEmailAddressEntered()) {
+                       // Not same email address entered
+                       throw new FaceletException(new DataRepeatMismatchException(MessageFormat.format("Email addresses not matching: {0} != {1}", this.contactController.getEmailAddress(), this.contactController.getEmailAddressRepeat()))); //NOI18N
+               }
+
                // Now only redirect to next page as the JSF does it
                return "register_page2"; //NOI18N
        }