Author: solomax
Date: Wed Dec  5 18:44:43 2012
New Revision: 1417584

URL: http://svn.apache.org/viewvc?rev=1417584&view=rev
Log:
OPENMEETINGS-451 is partially fixed

Modified:
    
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/groups/AddUsersForm.java
    
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/groups/GroupsPanel.java

Modified: 
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/groups/AddUsersForm.java
URL: 
http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/groups/AddUsersForm.java?rev=1417584&r1=1417583&r2=1417584&view=diff
==============================================================================
--- 
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/groups/AddUsersForm.java
 (original)
+++ 
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/groups/AddUsersForm.java
 Wed Dec  5 18:44:43 2012
@@ -25,6 +25,7 @@ import java.util.List;
 
 import org.apache.openmeetings.data.user.dao.UsersDao;
 import org.apache.openmeetings.persistence.beans.domain.Organisation;
+import org.apache.openmeetings.persistence.beans.domain.Organisation_Users;
 import org.apache.openmeetings.persistence.beans.user.Users;
 import org.apache.openmeetings.web.app.Application;
 import org.apache.openmeetings.web.app.WebSession;
@@ -45,7 +46,7 @@ public class AddUsersForm extends Form<V
        private List<Users> usersInList = new ArrayList<Users>();
        private List<Users> usersToAdd = new ArrayList<Users>();
        
-       public AddUsersForm(String id) {
+       public AddUsersForm(String id, final GroupForm groupForm) {
                super(id);
                
                IModel<List<Users>> listUsersModel = new 
PropertyModel<List<Users>>(AddUsersForm.this, "usersInList");
@@ -81,13 +82,25 @@ public class AddUsersForm extends Form<V
                        private static final long serialVersionUID = 
5553555064487161840L;
 
                        protected void onAfterSubmit(AjaxRequestTarget target, 
org.apache.wicket.markup.html.form.Form<?> form) {
+                               UsersDao userDao = 
Application.getBean(UsersDao.class);
                                for (Users u : usersToAdd) {
-                                       /*
-                                       for (Organisation_Users ou : 
u.getOrganisation_users()) {
-                                               ou.
+                                       boolean found = false;
+                                       List<Organisation_Users> orgUsers = 
u.getOrganisation_users();
+                                       for (Organisation_Users ou : orgUsers) {
+                                               if 
(ou.getOrganisation().getOrganisation_id() == 
organisation.getOrganisation_id()) {
+                                                       found = true;
+                                                       break;
+                                               }
+                                       }
+                                       if (!found) {
+                                               Organisation_Users orgUser = 
new Organisation_Users(organisation);
+                                               orgUser.setDeleted(false);
+                                               orgUsers.add(orgUser);
+                                               userDao.update(u, 
WebSession.getUserId());
                                        }
-                                       */
                                }
+                               
target.appendJavaScript("$('#addUsers').dialog('close');");
+                               groupForm.updateView(target);
                        }
                });
        }

Modified: 
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/groups/GroupsPanel.java
URL: 
http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/groups/GroupsPanel.java?rev=1417584&r1=1417583&r2=1417584&view=diff
==============================================================================
--- 
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/groups/GroupsPanel.java
 (original)
+++ 
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/groups/GroupsPanel.java
 Wed Dec  5 18:44:43 2012
@@ -42,8 +42,9 @@ import org.apache.wicket.markup.repeater
  * 
  */
 public class GroupsPanel extends AdminPanel {
-       
        private static final long serialVersionUID = -5170400556006464830L;
+       private AddUsersForm addUsersForm;
+       private GroupForm form;
        
        @Override
        public void onMenuPanelLoad(AjaxRequestTarget target) {
@@ -55,11 +56,9 @@ public class GroupsPanel extends AdminPa
                super(id);
                final WebMarkupContainer listContainer = new 
WebMarkupContainer("listContainer");
         final WebMarkupContainer addUsersBtn = new 
WebMarkupContainer("addUsersBtn");
-        final AddUsersForm addUsersForm = new AddUsersForm("addUsers");
-               add(addUsersForm);
                
                //Adding the Group Form
-               final GroupForm form = new GroupForm("form", listContainer, new 
Organisation()){
+               form = new GroupForm("form", listContainer, new Organisation()){
                        private static final long serialVersionUID = 
-3042797340375988889L;
 
                        @Override
@@ -82,6 +81,8 @@ public class GroupsPanel extends AdminPa
                        }
                };
         add(form.add(addUsersBtn.setOutputMarkupId(true)));
+        addUsersForm = new AddUsersForm("addUsers", form);
+               add(addUsersForm);
 
         //List view
         SearchableDataView<Organisation> dataView = new 
SearchableDataView<Organisation>("groupList", new 
SearchableDataProvider<Organisation>(OrganisationDao.class)) {


Reply via email to