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

Modified Files:
      Tag: b1_5
        RegisterPortlet.java 
Log Message:
CMSC-1357


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-1357


Index: RegisterPortlet.java
===================================================================
RCS file: 
/var/cvs/contributions/CMSContainer_Portlets/portlets-login/src/java/com/finalist/cmsc/portlets/RegisterPortlet.java,v
retrieving revision 1.1.2.9
retrieving revision 1.1.2.10
diff -u -b -r1.1.2.9 -r1.1.2.10
--- RegisterPortlet.java        6 Apr 2009 13:08:21 -0000       1.1.2.9
+++ RegisterPortlet.java        9 Apr 2009 11:58:29 -0000       1.1.2.10
@@ -21,7 +21,9 @@
 import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
 
+import com.finalist.cmsc.mmbase.PropertiesUtil;
 import com.finalist.cmsc.portalImpl.PortalConstants;
+import com.finalist.cmsc.repository.forms.SearchAction;
 import com.finalist.cmsc.services.community.ApplicationContextFactory;
 import com.finalist.cmsc.services.community.person.Person;
 import com.finalist.cmsc.services.community.person.PersonService;
@@ -34,6 +36,7 @@
 
 public class RegisterPortlet extends AbstractLoginPortlet {
 
+    private static final boolean DEBUG = true; 
    public static final String ACEGI_SECURITY_FORM_EMAIL_KEY = "email";
    public static final String ACEGI_SECURITY_FORM_FIRSTNAME_KEY = "firstName";
    public static final String ACEGI_SECURITY_FORM_INFIX_KEY = "infix";
@@ -143,8 +146,13 @@
                   if (!isEmailAddress(emailFrom)) {
                      errorMessages.put(ACEGI_SECURITY_DEFAULT, "Email address 
'" + emailFrom + "' set in the edit_defaults properties is not available or 
working!");
                   } else {
+                      Boolean debugMode = 
Boolean.valueOf(PropertiesUtil.getProperty("register.debug"));
+                      if (debugMode) {
+                          log.warn("DEBUG MODE: sendEmail from: " + emailFrom 
+ " to: " + emailTo);
+                      } else {
                      EmailSender.sendEmail(emailFrom, nameFrom, emailTo, 
emailSubject, emailText, emailTo, "text/plain;charset=utf-8");
                   }
+                  }
                } catch (AddressException e) {
                   log.error("Email address failed", e);
                   errorMessages.put(ACEGI_SECURITY_DEFAULT, "One of the email 
addresses failed '" + emailFrom + "' or '" + emailTo + "'!"); 
@@ -153,7 +161,7 @@
                   errorMessages.put(ACEGI_SECURITY_DEFAULT, "Sending email 
failed, from '" + emailFrom + "' to '" + emailTo + "'!");
                }
                if (errorMessages.isEmpty()) {
-                  response.setRenderParameter("email", emailTo);
+                  response.setRenderParameter(ACEGI_SECURITY_FORM_EMAIL_KEY, 
emailTo);
                } else {
                   //Email could not be sent, but the user is created..should 
remove user & authentication
                   
personHibernateService.deletePersonByAuthenticationId(authId);
@@ -165,7 +173,13 @@
                errorMessages.put(ACEGI_SECURITY_DEFAULT, "adding of 
authenticationId in database failed");
             }
          } else {
+            if (!isExistingUserAllowed()) {
             errorMessages.put(ACEGI_SECURITY_DEFAULT, "register.user.exists");
+            } else {
+                authId = authenticationId;
+                response.setRenderParameter("active", "subscribed");
+                request.getPortletSession().setAttribute("active", 
"subscribed");
+            }
          }
       }
 
@@ -191,7 +205,6 @@
       
       Map<String, String> errorMessages = (HashMap<String, String>) 
portletSession.getAttribute(ERRORMESSAGES);
       
-      
       String email = request.getParameter("email");
       String active = request.getParameter("active");
       
@@ -278,5 +291,12 @@
        throw new IllegalArgumentException("Unknown key: " + key);
    }
    
+   /* 
+    * For newsletter registration it is okay to have an existing user
+    * for ordinary registration it is not okay.
+    */
+   protected boolean isExistingUserAllowed() {
+       return false;
+   }
    
 }
_______________________________________________
Cvs mailing list
[email protected]
http://lists.mmbase.org/mailman/listinfo/cvs

Reply via email to