Author: vdegtyarev
Date: Wed Jul  3 12:03:53 2013
New Revision: 1499346

URL: http://svn.apache.org/r1499346
Log:
OPENMEETINGS-673 is fixed

Added:
    
openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/admin/AddUsersDialog.html
    
openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/admin/AddUsersDialog.java
Removed:
    
openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/admin/AddUsersForm.java
Modified:
    
openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/admin/groups/GroupForm.java
    
openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/admin/groups/GroupsPanel.html
    
openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/admin/groups/GroupsPanel.java
    
openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/admin/rooms/RoomForm.java
    
openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/admin/rooms/RoomsPanel.html
    
openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/admin/rooms/RoomsPanel.java

Added: 
openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/admin/AddUsersDialog.html
URL: 
http://svn.apache.org/viewvc/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/admin/AddUsersDialog.html?rev=1499346&view=auto
==============================================================================
--- 
openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/admin/AddUsersDialog.html
 (added)
+++ 
openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/admin/AddUsersDialog.html
 Wed Jul  3 12:03:53 2013
@@ -0,0 +1,49 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+  Licensed to the Apache Software Foundation (ASF) under one
+  or more contributor license agreements.  See the NOTICE file
+  distributed with this work for additional information
+  regarding copyright ownership.  The ASF licenses this file
+  to you under the Apache License, Version 2.0 (the
+  "License"); you may not use this file except in compliance
+  with the License.  You may obtain a copy of the License at
+  
+      http://www.apache.org/licenses/LICENSE-2.0
+         
+  Unless required by applicable law or agreed to in writing,
+  software distributed under the License is distributed on an
+  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+  KIND, either express or implied.  See the License for the
+  specific language governing permissions and limitations
+  under the License.
+  
+-->
+<html xmlns:wicket="http://wicket.apache.org";>
+<wicket:head>
+       <style type="text/css">
+               .ui-autocomplete {
+                       z-index: 999 !important;
+               }
+       </style>
+</wicket:head>
+<wicket:panel>
+       <form wicket:id="formUsers">
+               <table style="width: 100%">
+                       <tr>
+                               <td colspan="2" wicket:id="feedbackDialog"></td>
+                       </tr>
+                       <tr>
+                               <td><wicket:ommessage key="181" /></td>
+                               <td><input type="text" wicket:id="searchText" 
/></td>
+                       </tr>
+                       <tr>
+                               <td style="text-align: right"><input 
type="button" wicket:id="search" /></td>
+                       </tr>
+                       <tr>
+                               <td><wicket:ommessage key="183" /></td>
+                               <td><select wicket:id="users" style="width: 
200px; height: 300px;"></select></td>
+                       </tr>
+               </table>
+       </form>
+</wicket:panel>
+</html>
\ No newline at end of file

Added: 
openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/admin/AddUsersDialog.java
URL: 
http://svn.apache.org/viewvc/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/admin/AddUsersDialog.java?rev=1499346&view=auto
==============================================================================
--- 
openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/admin/AddUsersDialog.java
 (added)
+++ 
openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/admin/AddUsersDialog.java
 Wed Jul  3 12:03:53 2013
@@ -0,0 +1,125 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License") +  you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+package org.apache.openmeetings.web.admin;
+
+import static org.apache.openmeetings.web.admin.groups.GroupUsersPanel.getUser;
+
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.List;
+
+import org.apache.openmeetings.data.user.dao.UsersDao;
+import org.apache.openmeetings.persistence.beans.user.User;
+import org.apache.openmeetings.web.app.Application;
+import org.apache.openmeetings.web.app.WebSession;
+import org.apache.wicket.ajax.AjaxRequestTarget;
+import org.apache.wicket.ajax.markup.html.form.AjaxButton;
+import org.apache.wicket.markup.html.form.Form;
+import org.apache.wicket.markup.html.form.IChoiceRenderer;
+import org.apache.wicket.markup.html.form.ListMultipleChoice;
+import org.apache.wicket.markup.html.form.TextField;
+import org.apache.wicket.markup.html.panel.FeedbackPanel;
+import org.apache.wicket.model.IModel;
+import org.apache.wicket.model.Model;
+import org.apache.wicket.model.PropertyModel;
+
+import com.googlecode.wicket.jquery.ui.widget.dialog.AbstractFormDialog;
+import com.googlecode.wicket.jquery.ui.widget.dialog.DialogButton;
+
+public class AddUsersDialog extends AbstractFormDialog<User> {
+
+       private static final long serialVersionUID = 1L;
+       private final Form<User> formUsers;
+       private FeedbackPanel feedbackDialog = new 
FeedbackPanel("feedbackDialog");
+       private final AdminCommonUserForm<?> commonForm;
+       private String userSearchText;
+       private List<User> usersInList = new ArrayList<User>();
+       private final List<User> usersToAdd = new ArrayList<User>();
+       DialogButton send = new DialogButton(WebSession.getString(175));
+       private DialogButton cancel = new 
DialogButton(WebSession.getString(219));
+
+       
+       public AddUsersDialog(String id, String title, AdminCommonUserForm<?> 
commonForm)
+       {
+               super(id, title, true);
+               formUsers = new Form<User>("formUsers", getModel());
+               this.commonForm = commonForm;
+               formUsers.add(feedbackDialog.setOutputMarkupId(true));
+
+               IModel<List<User>> listUsersModel = new 
PropertyModel<List<User>>(AddUsersDialog.this, "usersInList");
+               IModel<List<User>> selectedUsersModel = new 
PropertyModel<List<User>>(AddUsersDialog.this, "usersToAdd");
+               final ListMultipleChoice<User> users = new 
ListMultipleChoice<User>("users"
+                               , selectedUsersModel
+                               , listUsersModel
+                               , new IChoiceRenderer<User>() {
+                       private static final long serialVersionUID = 1L;
+
+                       public Object getDisplayValue(User object) {
+                               return getUser(object);
+                       }
+
+                       public String getIdValue(User object, int index) {
+                               return "" + object.getUser_id();
+                       }
+               });
+               
+               formUsers.add(new TextField<String>("searchText", new 
PropertyModel<String>(AddUsersDialog.this, "userSearchText")));
+               formUsers.add(new AjaxButton("search", 
Model.of(WebSession.getString(182L))) {
+                       private static final long serialVersionUID = 
-4752180617634945030L;
+
+                       protected void onAfterSubmit(AjaxRequestTarget target, 
Form<?> form) {
+                               usersToAdd.clear();
+                               usersInList.clear();
+                               
usersInList.addAll(Application.getBean(UsersDao.class).get(userSearchText));
+                               target.add(users);
+                       }
+               });
+               formUsers.add(users.setOutputMarkupId(true));
+               add(formUsers.setOutputMarkupId(true));
+}
+
+       
+       @Override
+       protected List<DialogButton> getButtons() {
+               return Arrays.asList(send, cancel);
+       }
+       
+       @Override
+       protected DialogButton getSubmitButton() {
+               return send;
+       }
+
+       @Override
+       public Form<?> getForm() {
+               return formUsers;
+       }
+
+       @Override
+       protected void onError(AjaxRequestTarget target) {
+               target.add(feedbackDialog);
+               
+       }
+
+       @Override
+       protected void onSubmit(AjaxRequestTarget target) {
+               commonForm.submitView(target, usersToAdd);
+       }
+
+}

Modified: 
openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/admin/groups/GroupForm.java
URL: 
http://svn.apache.org/viewvc/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/admin/groups/GroupForm.java?rev=1499346&r1=1499345&r2=1499346&view=diff
==============================================================================
--- 
openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/admin/groups/GroupForm.java
 (original)
+++ 
openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/admin/groups/GroupForm.java
 Wed Jul  3 12:03:53 2013
@@ -87,7 +87,7 @@ public class GroupForm extends AdminComm
                                userDao.update(u, WebSession.getUserId());
                        }
                }
-               target.appendJavaScript("$('#addUsers').dialog('close');");
+               target.add(usersPanel);
        }
        
        private long getOrgId() {

Modified: 
openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/admin/groups/GroupsPanel.html
URL: 
http://svn.apache.org/viewvc/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/admin/groups/GroupsPanel.html?rev=1499346&r1=1499345&r2=1499346&view=diff
==============================================================================
--- 
openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/admin/groups/GroupsPanel.html
 (original)
+++ 
openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/admin/groups/GroupsPanel.html
 Wed Jul  3 12:03:53 2013
@@ -22,22 +22,10 @@
        <wicket:head>
                <script type="text/javascript">
                        function groupsInit() {
-                               $('#addUsers').dialog({
-                                       closeOnEscape: true
-                                       , autoOpen: false
-                                       , resizable: false
-                                       , width: 400
-                                       , modal: true
-                               });
                                var documentHeight = $(document).height();
                 $('#adminForm').height(documentHeight-114);
                 $('#adminTable').height(documentHeight-144);
                        };
-                       
-                       function addUsers() {
-                               $('#addUsers :text').val('');
-                               $('#addUsers').dialog('open');
-                       };
                </script>
        </wicket:head>
        <wicket:panel>
@@ -82,25 +70,7 @@
                                </form>
                        </div>
                </div>
-               <div id="addUsers" wicket:ommessage="title:180" style="display: 
none;">
-                       <form wicket:id="addUsers">
-                               <table>
-                                       <tr>
-                                               <td><wicket:ommessage key="181" 
/></td>
-                                               <td><input type="text" 
wicket:id="searchText" /></td>
-                                       </tr>
-                                       <tr>
-                                               <td style="text-align: 
right"><input type="button" wicket:id="search" /></td>
-                                       </tr>
-                                       <tr>
-                                               <td><wicket:ommessage key="183" 
/></td>
-                                               <td><select wicket:id="users" 
style="width: 200px; height: 300px;"></select></td>
-                                       </tr>
-                                       <tr>
-                                               <td colspan="2" 
style="text-align: right"><input type="button" wicket:id="add" /></td>
-                                       </tr>
-                               </table>
-                       </form>
+               <div wicket:id="addUsers">
                </div>
        </wicket:panel>
 </html>

Modified: 
openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/admin/groups/GroupsPanel.java
URL: 
http://svn.apache.org/viewvc/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/admin/groups/GroupsPanel.java?rev=1499346&r1=1499345&r2=1499346&view=diff
==============================================================================
--- 
openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/admin/groups/GroupsPanel.java
 (original)
+++ 
openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/admin/groups/GroupsPanel.java
 Wed Jul  3 12:03:53 2013
@@ -21,9 +21,10 @@ package org.apache.openmeetings.web.admi
 import org.apache.openmeetings.data.user.dao.OrganisationDao;
 import org.apache.openmeetings.persistence.beans.domain.Organisation;
 import org.apache.openmeetings.persistence.beans.domain.Organisation_Users;
-import org.apache.openmeetings.web.admin.AddUsersForm;
+import org.apache.openmeetings.web.admin.AddUsersDialog;
 import org.apache.openmeetings.web.admin.AdminPanel;
 import org.apache.openmeetings.web.admin.SearchableDataView;
+import org.apache.openmeetings.web.app.WebSession;
 import org.apache.openmeetings.web.common.PagedEntityListPanel;
 import org.apache.openmeetings.web.data.DataViewContainer;
 import org.apache.openmeetings.web.data.OmOrderByBorder;
@@ -44,7 +45,7 @@ import org.apache.wicket.markup.repeater
  */
 public class GroupsPanel extends AdminPanel {
        private static final long serialVersionUID = -5170400556006464830L;
-       private AddUsersForm addUsersForm;
+       private AddUsersDialog addUsersDialog;
        private GroupForm form;
        
        @Override
@@ -61,9 +62,7 @@ public class GroupsPanel extends AdminPa
                        private static final long serialVersionUID = 
6037994365235148885L;
 
                        protected void onEvent(AjaxRequestTarget target) {
-                       addUsersForm.clear();
-                       target.add(addUsersForm);
-                       target.appendJavaScript("addUsers();");
+                               addUsersDialog.open(target);
                }
         });
         
@@ -90,8 +89,8 @@ public class GroupsPanel extends AdminPa
                        }
                };
         add(form.add(addUsersBtn.setOutputMarkupId(true)));
-        addUsersForm = new AddUsersForm("addUsers", form);
-               add(addUsersForm);
+        addUsersDialog = new 
AddUsersDialog("addUsers",WebSession.getString(180), form);
+               add(addUsersDialog.setOutputMarkupId(true));
 
         //List view
         SearchableDataView<Organisation> dataView = new 
SearchableDataView<Organisation>("groupList", new 
SearchableDataProvider<Organisation>(OrganisationDao.class)) {

Modified: 
openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/admin/rooms/RoomForm.java
URL: 
http://svn.apache.org/viewvc/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/admin/rooms/RoomForm.java?rev=1499346&r1=1499345&r2=1499346&view=diff
==============================================================================
--- 
openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/admin/rooms/RoomForm.java
 (original)
+++ 
openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/admin/rooms/RoomForm.java
 Wed Jul  3 12:03:53 2013
@@ -250,6 +250,7 @@ public class RoomForm extends AdminCommo
                moderators.setDefaultModelObject(moderatorsInRoom);
                target.add(moderatorContainer);
        }
+       
        void updatClients(AjaxRequestTarget target) {
                long roomId = (getModelObject().getRooms_id() != null ? 
getModelObject().getRooms_id() : 0);  
                final List<Client> clientsInRoom = 
Application.getBean(SessionManager.class).getClientListByRoom(roomId);
@@ -346,6 +347,6 @@ public class RoomForm extends AdminCommo
                                moderatorsDao.addRoomModeratorByUserId(u, 
false, roomId);
                        }
                }
-               target.appendJavaScript("$('#addModerators').dialog('close');");
+               updateModerators(target);
        }
 }

Modified: 
openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/admin/rooms/RoomsPanel.html
URL: 
http://svn.apache.org/viewvc/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/admin/rooms/RoomsPanel.html?rev=1499346&r1=1499345&r2=1499346&view=diff
==============================================================================
--- 
openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/admin/rooms/RoomsPanel.html
 (original)
+++ 
openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/admin/rooms/RoomsPanel.html
 Wed Jul  3 12:03:53 2013
@@ -22,22 +22,10 @@
        <wicket:head>
           <script type="text/javascript">
            function omRoomPanelInit() {
-                               $('#addModerators').dialog({
-                                       closeOnEscape: true
-                                       , autoOpen: false
-                                       , resizable: false
-                                       , width: 400
-                                       , modal: true
-                               });
                var documentHeight = $(document).height();
                $('#adminForm').height(documentHeight-114);
                $('#adminTable').height(documentHeight-144);
            }
-                       
-                       function addModerators() {
-                               $('#addModerators :text').val('');
-                               $('#addModerators').dialog('open');
-                       };
        </script>
     </wicket:head>
        <wicket:panel>
@@ -261,10 +249,10 @@
                                                <label><wicket:ommessage 
key="1003" /></label><input type="text" wicket:id="confno" />
                                                        </div>
                                            <div class="formelement">
-                                               <label><wicket:ommessage 
key="1004" /></label><input type="text" wicket:id="pin" />
+                                               <label><wicket:ommessage 
key="1004" /></label><input type="text" disabled="disabled" wicket:id="pin" />
                                                        </div>
                                            <div class="formelement">
-                                               <label><wicket:ommessage 
key="1308" /></label><input type="text" wicket:id="ownerId" />
+                                               <label><wicket:ommessage 
key="1308" /></label><input type="text" disabled="disabled" wicket:id="ownerId" 
/>
                                                        </div>
                                            <div class="formelement">
                                                <label><wicket:ommessage 
key="1538" /></label><input type="checkbox" class="formcheckbox" 
wicket:id="sipEnabled" />
@@ -274,25 +262,6 @@
                                </form>
                        </div>
                </div>
-               <div id="addModerators" wicket:ommessage="title:821" 
style="display: none;">
-                       <form wicket:id="addModerators">
-                               <table>
-                                       <tr>
-                                               <td><wicket:ommessage key="181" 
/></td>
-                                               <td><input type="text" 
wicket:id="searchText" /></td>
-                                       </tr>
-                                       <tr>
-                                               <td style="text-align: 
right"><input type="button" wicket:id="search" /></td>
-                                       </tr>
-                                       <tr>
-                                               <td><wicket:ommessage key="183" 
/></td>
-                                               <td><select wicket:id="users" 
style="width: 200px; height: 300px;"></select></td>
-                                       </tr>
-                                       <tr>
-                                               <td colspan="2" 
style="text-align: right"><input type="button" wicket:id="add" /></td>
-                                       </tr>
-                               </table>
-                       </form>
-               </div>
+               <div wicket:id="addModerators"></div>
        </wicket:panel>
 </html>

Modified: 
openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/admin/rooms/RoomsPanel.java
URL: 
http://svn.apache.org/viewvc/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/admin/rooms/RoomsPanel.java?rev=1499346&r1=1499345&r2=1499346&view=diff
==============================================================================
--- 
openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/admin/rooms/RoomsPanel.java
 (original)
+++ 
openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/admin/rooms/RoomsPanel.java
 Wed Jul  3 12:03:53 2013
@@ -20,9 +20,10 @@ package org.apache.openmeetings.web.admi
 
 import org.apache.openmeetings.data.conference.dao.RoomDao;
 import org.apache.openmeetings.persistence.beans.room.Room;
-import org.apache.openmeetings.web.admin.AddUsersForm;
+import org.apache.openmeetings.web.admin.AddUsersDialog;
 import org.apache.openmeetings.web.admin.AdminPanel;
 import org.apache.openmeetings.web.admin.SearchableDataView;
+import org.apache.openmeetings.web.app.WebSession;
 import org.apache.openmeetings.web.common.PagedEntityListPanel;
 import org.apache.openmeetings.web.data.DataViewContainer;
 import org.apache.openmeetings.web.data.OmOrderByBorder;
@@ -37,7 +38,7 @@ import org.apache.wicket.markup.repeater
 public class RoomsPanel extends AdminPanel {
 
        private static final long serialVersionUID = -1L;
-       private AddUsersForm addModeratorsForm;
+       private final AddUsersDialog addModeratorsDialog;
        private RoomForm form;
        
        @Override
@@ -91,12 +92,11 @@ public class RoomsPanel extends AdminPan
 
                final WebMarkupContainer addModerator = new 
WebMarkupContainer("addModerator");
                addModerator.add(new AjaxEventBehavior("onclick") {
+
                        private static final long serialVersionUID = 
1818116963707864134L;
 
                        protected void onEvent(AjaxRequestTarget target) {
-                       addModeratorsForm.clear();
-                       target.add(addModeratorsForm);
-                       target.appendJavaScript("addModerators();");
+                       addModeratorsDialog.open(target);
                }
         });
                
@@ -115,15 +115,9 @@ public class RoomsPanel extends AdminPan
                                addModerator.setEnabled(!roomEmpty);
                        }
                        
-                       /*@Override
-                       public void updateView(AjaxRequestTarget target) {
-                               super.updateView(target);
-                               target.add(addModerator);
-                       }*/
                };
                
         add(form.add(addModerator.setOutputMarkupId(true)));
-        addModeratorsForm = new AddUsersForm("addModerators", form);
-               add(addModeratorsForm);
+        add(addModeratorsDialog = new AddUsersDialog("addModerators", 
WebSession.getString(821), form));
        }
 }


Reply via email to