Update of 
/var/cvs/contributions/CMSContainer_Portlets/portlets-login/src/java/com/finalist/cmsc/portlets
In directory 
james.mmbase.org:/tmp/cvs-serv30546/src/java/com/finalist/cmsc/portlets

Modified Files:
        RegisterPorlet.java 
Log Message:
CMSC-948 Registration portlet for CMS container


See also: 
http://cvs.mmbase.org/viewcvs/contributions/CMSContainer_Portlets/portlets-login/src/java/com/finalist/cmsc/portlets
See also: http://www.mmbase.org/jira/browse/CMSC-948


Index: RegisterPorlet.java
===================================================================
RCS file: 
/var/cvs/contributions/CMSContainer_Portlets/portlets-login/src/java/com/finalist/cmsc/portlets/RegisterPorlet.java,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -b -r1.2 -r1.3
--- RegisterPorlet.java 7 Nov 2008 06:56:27 -0000       1.2
+++ RegisterPorlet.java 7 Nov 2008 09:53:35 -0000       1.3
@@ -27,6 +27,7 @@
 import org.mmbase.util.Encode;
 
 import com.finalist.cmsc.mmbase.EmailUtil;
+import com.finalist.cmsc.mmbase.PropertiesUtil;
 import com.finalist.cmsc.services.community.ApplicationContextFactory;
 import com.finalist.cmsc.services.community.person.Person;
 import com.finalist.cmsc.services.community.person.PersonService;
@@ -46,6 +47,8 @@
    private static final String ACEGI_SECURITY_FORM_LASTNAME_KEY = "lastName";
    private static final String ACEGI_SECURITY_FORM_PASSWORD_KEY = 
"passwordText";
    private static final String ACEGI_SECURITY_FORM_PASSWORDCONF_KEY = 
"passwordConfirmation";
+   private static final String DEFAULT_EMAILREGEX = 
"^([a-zA-Z0-9_.-])+@(([a-zA-Z0-9-])+.)+([a-zA-Z0-9]{2,4})+$";
+
    private static final Log log = LogFactory.getLog(RegisterPorlet.class);
 
    @Override
@@ -58,6 +61,16 @@
       String passwordConfirmation = 
request.getParameter(ACEGI_SECURITY_FORM_PASSWORDCONF_KEY);
       String errorMessages = "";
       Long authId = null;
+      if(StringUtils.isBlank(email)) { 
+         errorMessages = "register.email.empty";
+         response.setRenderParameter("errorMessages", errorMessages);
+         return;
+      }
+      if(!isEmailAddress(email)) { 
+         errorMessages = "register.email.match";
+         response.setRenderParameter("errorMessages", errorMessages);
+         return;
+      }
       if(StringUtils.isEmpty(passwordText)) { 
          errorMessages = "register.password.empty";
          response.setRenderParameter("errorMessages", errorMessages);
@@ -164,4 +177,22 @@
       }
       return link;
    }
+   private  boolean isEmailAddress(String emailAddress) {
+      if (emailAddress == null) {
+         return false;
+      }
+      if (StringUtils.isBlank(emailAddress)) {
+         return false;
+      }
+
+      String emailRegex = getEmailRegex();
+      return emailAddress.trim().matches(emailRegex);
+   }
+   protected String getEmailRegex() {
+      String emailRegex = PropertiesUtil.getProperty("email.regex");
+      if (StringUtils.isNotBlank(emailRegex)) {
+         return emailRegex;
+      }
+      return DEFAULT_EMAILREGEX;
+   }
 }
_______________________________________________
Cvs mailing list
[email protected]
http://lists.mmbase.org/mailman/listinfo/cvs

Reply via email to