Update of 
/var/cvs/contributions/CMSContainer_Modules/community/src/java/com/finalist/cmsc/community/forms
In directory 
james.mmbase.org:/tmp/cvs-serv23684/src/java/com/finalist/cmsc/community/forms

Modified Files:
        UserAddAction.java UserAddInitAction.java 
Log Message:
cmsc-979,990 some changes about community module


See also: 
http://cvs.mmbase.org/viewcvs/contributions/CMSContainer_Modules/community/src/java/com/finalist/cmsc/community/forms


Index: UserAddAction.java
===================================================================
RCS file: 
/var/cvs/contributions/CMSContainer_Modules/community/src/java/com/finalist/cmsc/community/forms/UserAddAction.java,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -b -r1.6 -r1.7
--- UserAddAction.java  10 May 2008 16:31:49 -0000      1.6
+++ UserAddAction.java  24 Jul 2008 09:05:18 -0000      1.7
@@ -17,6 +17,8 @@
 import org.apache.struts.action.ActionForm;
 import org.apache.struts.action.ActionForward;
 import org.apache.struts.action.ActionMapping;
+import org.apache.struts.action.ActionMessage;
+import org.apache.struts.action.ActionMessages;
 
 import com.finalist.cmsc.services.community.person.Person;
 import com.finalist.cmsc.services.community.person.PersonService;
@@ -34,9 +36,11 @@
    private static Log log = LogFactory.getLog(UserAddInitAction.class);
 
    @Override
-   public ActionForward execute(ActionMapping actionMapping, ActionForm 
actionForm, HttpServletRequest httpServletRequest, HttpServletResponse 
httpServletResponse)
-            throws Exception {
-
+       public ActionForward execute(ActionMapping actionMapping, ActionForm 
actionForm, HttpServletRequest httpServletRequest,
+                       HttpServletResponse httpServletResponse) throws 
Exception {
+               ActionMessages errors = new ActionMessages();
+               Long authId = null;
+               String tmpForward = (String) 
httpServletRequest.getSession().getAttribute("forward");
       if (!isCancelled(httpServletRequest)) {
          UserForm userForm = (UserForm) actionForm;
 
@@ -48,20 +52,22 @@
          PersonService ps = getPersonService();
 
          if (userForm.getAction().equalsIgnoreCase(UserForm.ACTION_ADD)) {
-            Long authenticationId = 
as.getAuthenticationIdForUserId(accountName);
+
+                               Long authenticationId = 
as.getAuthenticationIdForUserId(userForm.getEmail());
             if (authenticationId == null) {
                Authentication authentication = 
as.createAuthentication(userForm.getEmail(), userForm.getPasswordText());
-               // Long authenticationId =
-               // as.getAuthenticationIdForUserId(accountName);
                if (authentication.getId() != null) {
-                  Person person = ps.createPerson(userForm.getFirstName(), 
userForm.getPrefix(), userForm.getLastName(), authentication.getId());
-                  person.setEmail(userForm.getEmail()); // Also add an email 
address to the user.
+                                               authId = authentication.getId();
+                                               Person person = ps
+                                                               
.createPerson(userForm.getFirstName(), userForm.getPrefix(), 
userForm.getLastName(), authentication.getId());
+                                               
person.setEmail(userForm.getEmail());
                   ps.updatePerson(person);
 
                } else {
                   log.info("add authenticationId failed");
                }
             } else {
+                                       errors.add("email", new 
ActionMessage("userform.email.exist"));
                log.info("add check1 failed for: " + accountName);
             }
 
@@ -79,12 +85,14 @@
                // First retrieve the right person object from the database
                Person person = 
ps.getPersonByAuthenticationId(authenticationId);
 
-               if (person == null) { // User did not exists, so create it.
+                                       if (person == null) { // User did not 
exists, so create
+                                               // it.
                   person = new Person();
                   person.setAuthenticationId(authenticationId);
                }
 
-               // Also save other fields entered in the form to the right 
person
+                                       // Also save other fields entered in 
the form to the right
+                                       // person
                // object
                person.setFirstName(userForm.getFirstName());
                person.setInfix(userForm.getPrefix());
@@ -103,10 +111,47 @@
          }
       } else {
          log.info("cancelled");
+                       ActionForward ret;
+                       String newsletterId = (String) 
httpServletRequest.getSession().getAttribute("newsletterId");
+                       if (StringUtils.isNotBlank(tmpForward)) {
+                               ret = new 
ActionForward("/editors/newsletter/NewsletterPublicationSubscriberSearch.do?newsletterId="
+                                               + 
httpServletRequest.getSession().getAttribute("newsletterId"));
+                               ret.setRedirect(true);
+                       } else {
+                               ret = actionMapping.findForward(SUCCESS);
+                       }
+                       return ret;
+               }
+               if (errors.size() > 0) {
+                       ActionForward ret = new 
ActionForward("/editors/community/user.jsp");
+                       saveErrors(httpServletRequest, errors);
+                       return ret;
+               } else {
+                       if ("newslettersubscribers".equals(tmpForward)) {
+                               ActionForward ret = new 
ActionForward(actionMapping.findForward("newslettersubscribers").getPath() + 
"?newsletterId="
+                                               + 
httpServletRequest.getSession().getAttribute("newsletterId"));
+                               
httpServletRequest.getSession().removeAttribute("forward");
+                               
httpServletRequest.getSession().removeAttribute("newsletterId");
+                               ret.setRedirect(true);
+                               return ret;
+                       } else if ("newslettersubscription".equals(tmpForward)) 
{
+                               ActionForward ret;
+                               if (((UserForm) 
actionForm).getAction().equalsIgnoreCase(UserForm.ACTION_ADD)) {
+                                       ret = new 
ActionForward(actionMapping.findForward("newslettersubscription").getPath() + 
"?newsletterId="
+                                                       + 
httpServletRequest.getSession().getAttribute("newsletterId") + "&authid=" + 
authId);
+                                       ret.setRedirect(true);
+                               } else {
+                                       ret = new 
ActionForward(actionMapping.findForward("newslettersubscribers").getPath() + 
"?newsletterId="
+                                                       + 
httpServletRequest.getSession().getAttribute("newsletterId"));
       }
 
+                               
httpServletRequest.getSession().removeAttribute("forward");
+                               
httpServletRequest.getSession().removeAttribute("newsletterId");
+                               ret.setRedirect(true);
+                               return ret;
+                       }
+               }
       removeFromSession(httpServletRequest, actionForm);
-
       return actionMapping.findForward(SUCCESS);
    }
 }


Index: UserAddInitAction.java
===================================================================
RCS file: 
/var/cvs/contributions/CMSContainer_Modules/community/src/java/com/finalist/cmsc/community/forms/UserAddInitAction.java,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -b -r1.5 -r1.6
--- UserAddInitAction.java      31 Mar 2008 19:49:01 -0000      1.5
+++ UserAddInitAction.java      24 Jul 2008 09:05:18 -0000      1.6
@@ -12,6 +12,7 @@
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
 
+import org.apache.commons.lang.StringUtils;
 import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
 import org.apache.struts.action.ActionForm;
@@ -51,7 +52,7 @@
          userForm.setAccount(auth.getUserId());
          
          PersonService ps = getPersonService();
-         //Returns null when no Person object was found!
+                       // Returns null when no Person object was found!
          Person person = ps.getPersonByAuthenticationId(auth.getId());
         
          if (person != null) {
@@ -66,7 +67,15 @@
          // new
          userForm.setAction(UserForm.ACTION_ADD);
       }
-
+               if (StringUtils.isNotBlank(request.getParameter("forward"))) {
+                       // ActionForward ret= new
+                       // 
ActionForward(actionMapping.findForward(SUCCESS).getPath());
+                       request.getSession().setAttribute("newsletterId", 
request.getParameter("newsletterId"));
+                       request.getSession().setAttribute("forward", 
request.getParameter("forward"));
+                       // return ret;
+               }
+               // else{
       return actionMapping.findForward(SUCCESS);
+               // }
    }
 }
\ No newline at end of file
_______________________________________________
Cvs mailing list
Cvs@lists.mmbase.org
http://lists.mmbase.org/mailman/listinfo/cvs

Reply via email to