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

Modified Files:
        GroupAction.java GroupInitAction.java 
Log Message:
changes to group


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


Index: GroupAction.java
===================================================================
RCS file: 
/var/cvs/contributions/CMSContainer_Modules/community/src/java/com/finalist/cmsc/community/forms/GroupAction.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -b -r1.1 -r1.2
--- GroupAction.java    6 Feb 2008 15:10:57 -0000       1.1
+++ GroupAction.java    8 Feb 2008 13:13:28 -0000       1.2
@@ -1,5 +1,9 @@
 package com.finalist.cmsc.community.forms;
 
+import java.util.ArrayList;
+import java.util.Iterator;
+import java.util.List;
+
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
 
@@ -8,7 +12,12 @@
 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 org.apache.struts.util.LabelValueBean;
 
+import com.finalist.cmsc.services.community.security.Authentication;
+import com.finalist.cmsc.services.community.security.AuthenticationService;
 import com.finalist.cmsc.services.community.security.AuthorityService;
 
 /**
@@ -16,41 +25,83 @@
  */
 public class GroupAction extends AbstractCommunityAction {
 
-       private static Log log = LogFactory.getLog(DeleteGroupAction.class);
+       private static Log log = LogFactory.getLog(GroupAction.class);
 
        public ActionForward execute(ActionMapping actionMapping, ActionForm 
actionForm, HttpServletRequest request,
                        HttpServletResponse httpServletResponse) throws 
Exception {
 
                if (!isCancelled(request)) {
                        GroupForm groupForm = (GroupForm) actionForm;
+                       List<LabelValueBean> membersList = new 
ArrayList<LabelValueBean>();
+                       List<LabelValueBean> usersList = new 
ArrayList<LabelValueBean>();
 
                        String id = groupForm.getName();
 
+                       // get all users
+                       // NodeList users = SecurityUtil.getUsers(cloud);
+                       AuthenticationService as = getAuthenticationService();
+                       List<Authentication> users = as.findAuthentications();
+
                        AuthorityService aus = getAuthorityService();
 
-                       if (groupForm.getAction().equalsIgnoreCase(ACTION_ADD)) 
{
-                               if (!aus.authorityExists(id)) {
-                                       aus.createAuthority(null, id);
+                       for (Iterator<Authentication> iter = users.iterator(); 
iter.hasNext();) {
+                               Authentication user = iter.next();
+                               String label = user.getUserId();
+                               LabelValueBean bean = new LabelValueBean(label, 
label);
+                               usersList.add(bean);
 
+                       }
+                       // get members and remove them from users
+                       for (String memberName : groupForm.getMembers()) {
+                               // Node member = cloud.getNode(memberNumber);
+                               String label = memberName;
+                               LabelValueBean beanMember = new 
LabelValueBean(label, label);
+                               membersList.add(beanMember);
+                               usersList.remove(beanMember);
+                       }
                                        
+                       request.setAttribute("membersList", membersList);
+                       request.setAttribute("usersList", usersList);
                                        
+                       // validate
+                       ActionMessages errors = new ActionMessages();
+
+                       // Node groupNode = getOrCreateNode(groupForm, cloud,
+                       // SecurityUtil.GROUP);
+                       if (groupForm.getAction().equalsIgnoreCase(ACTION_ADD)) 
{
+                               if (id == null || id.length() < 3) {
+                                       errors.add("groupname", new 
ActionMessage("error.groupname.invalid"));
+                                       saveErrors(request, errors);
+                                       return actionMapping.getInputForward();
                                } else {
-                                       log.info("authority already exists");
+                                       String name = id;
+                                       // NodeList list =
+                                       // 
MMBaseAction.getCloudFromSession(request).getNodeManager("mmbasegroups").getList(
+                                       // "name='" + name + "'", null, null);
+                                       boolean exist = 
aus.authorityExists(name);
+                                       if (exist) {
+                                               errors.add("groupname", new 
ActionMessage("error.groupname.alreadyexists"));
+                                               saveErrors(request, errors);
+                                               return 
actionMapping.getInputForward();
+                                       }
                                }
 
-                       } else if 
(groupForm.getAction().equalsIgnoreCase(ACTION_EDIT)) {
+                               // groupNode.setStringValue("name", 
groupForm.getName());
+                               aus.createAuthority(null, id);
+                       }
 
-                       } else {
-                               log.info("action failed");
+                       // groupNode.commit();
+                       // SecurityUtil.setGroupMembers(cloud, groupNode,
+                       // groupForm.getMembers());
+                       if (id != null) {
+                               for (String memberName : 
groupForm.getMembers()) {
+                                       as.addAuthorityToUser(memberName, id);
                        }
-               } else {
-                       log.info("cancelled");
                }
-
-               // removeFromSession(httpServletRequest, actionForm);
+               }
+               removeFromSession(request, actionForm);
 
                return actionMapping.findForward(SUCCESS);
 
        }
-
 }


Index: GroupInitAction.java
===================================================================
RCS file: 
/var/cvs/contributions/CMSContainer_Modules/community/src/java/com/finalist/cmsc/community/forms/GroupInitAction.java,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -b -r1.3 -r1.4
--- GroupInitAction.java        7 Feb 2008 14:53:15 -0000       1.3
+++ GroupInitAction.java        8 Feb 2008 13:13:28 -0000       1.4
@@ -69,7 +69,6 @@
                        } else {
                                log.error("group failed");
                        }
-
                } else {
                        // new
                        groupForm.setAction(ACTION_ADD);
_______________________________________________
Cvs mailing list
[email protected]
http://lists.mmbase.org/mailman/listinfo/cvs

Reply via email to