Author: solomax
Date: Sat Mar  1 10:50:29 2014
New Revision: 1573148

URL: http://svn.apache.org/r1573148
Log:
[OPENMEETINGS-932] config list is retrieved as expected;
        room SIP setting are editable as expected;

Modified:
    
openmeetings/branches/3.0.x/src/db/java/org/apache/openmeetings/db/dao/basic/ConfigurationDao.java
    
openmeetings/branches/3.0.x/src/main/java/org/apache/openmeetings/remote/MainService.java
    
openmeetings/branches/3.0.x/src/web/java/org/apache/openmeetings/web/admin/rooms/RoomForm.java
    
openmeetings/branches/3.0.x/src/web/java/org/apache/openmeetings/web/admin/rooms/RoomsPanel.html
    
openmeetings/trunk/singlewebapp/src/db/java/org/apache/openmeetings/db/dao/basic/ConfigurationDao.java
    
openmeetings/trunk/singlewebapp/src/main/java/org/apache/openmeetings/remote/MainService.java
    
openmeetings/trunk/singlewebapp/src/web/java/org/apache/openmeetings/web/admin/rooms/RoomForm.java
    
openmeetings/trunk/singlewebapp/src/web/java/org/apache/openmeetings/web/admin/rooms/RoomsPanel.html

Modified: 
openmeetings/branches/3.0.x/src/db/java/org/apache/openmeetings/db/dao/basic/ConfigurationDao.java
URL: 
http://svn.apache.org/viewvc/openmeetings/branches/3.0.x/src/db/java/org/apache/openmeetings/db/dao/basic/ConfigurationDao.java?rev=1573148&r1=1573147&r2=1573148&view=diff
==============================================================================
--- 
openmeetings/branches/3.0.x/src/db/java/org/apache/openmeetings/db/dao/basic/ConfigurationDao.java
 (original)
+++ 
openmeetings/branches/3.0.x/src/db/java/org/apache/openmeetings/db/dao/basic/ConfigurationDao.java
 Sat Mar  1 10:50:29 2014
@@ -25,6 +25,7 @@ import static org.apache.openmeetings.ut
 import static 
org.apache.openmeetings.util.OpenmeetingsVariables.whiteboardDrawStatus;
 
 import java.lang.reflect.Constructor;
+import java.util.ArrayList;
 import java.util.Arrays;
 import java.util.Date;
 import java.util.List;
@@ -85,15 +86,20 @@ public class ConfigurationDao implements
                                        .setParameter("conf_key", 
confKey).getResultList();
                        return list.isEmpty() ? null : list.get(0);
                } catch (Exception e) {
-                       log.error("[getConfKey]: ", e);
+                       log.error("[forceGet]: ", e);
                }
                return null;
        }
 
        public List<Configuration> get(String... keys) {
-               return em.createNamedQuery("getConfigurationsByKeys", 
Configuration.class)
-                               .setParameter("conf_keys", Arrays.asList(keys))
-                               .getResultList();
+               List<Configuration> result = new ArrayList<Configuration>();
+               for (String key : keys) { //iteration is necessary to fill list 
with all values 
+                       List<Configuration> r = 
em.createNamedQuery("getConfigurationsByKeys", Configuration.class)
+                                       .setParameter("conf_keys", 
Arrays.asList(key))
+                                       .getResultList();
+                       result.add(r.isEmpty() ? null : r.get(0));
+               }
+               return result;
        }
 
        /**

Modified: 
openmeetings/branches/3.0.x/src/main/java/org/apache/openmeetings/remote/MainService.java
URL: 
http://svn.apache.org/viewvc/openmeetings/branches/3.0.x/src/main/java/org/apache/openmeetings/remote/MainService.java?rev=1573148&r1=1573147&r2=1573148&view=diff
==============================================================================
--- 
openmeetings/branches/3.0.x/src/main/java/org/apache/openmeetings/remote/MainService.java
 (original)
+++ 
openmeetings/branches/3.0.x/src/main/java/org/apache/openmeetings/remote/MainService.java
 Sat Mar  1 10:50:29 2014
@@ -463,10 +463,9 @@ public class MainService implements IPen
 
        public List<Configuration> getGeneralOptions(String SID) {
                try {
-                       return configurationDao.get("exclusive.audio.keycode", 
"red5sip.enable", CONFIG_MAX_UPLOAD_SIZE_KEY,
-                                       "mute.keycode", 
CONFIG_REDIRECT_URL_FOR_EXTERNAL_KEY);
+                       return configurationDao.get("exclusive.audio.keycode", 
"red5sip.enable", CONFIG_MAX_UPLOAD_SIZE_KEY, "mute.keycode", 
CONFIG_REDIRECT_URL_FOR_EXTERNAL_KEY);
                } catch (Exception err) {
-                       log.error("[getLoginOptions]",err);
+                       log.error("[getGeneralOptions]",err);
                }
                return null;
        }

Modified: 
openmeetings/branches/3.0.x/src/web/java/org/apache/openmeetings/web/admin/rooms/RoomForm.java
URL: 
http://svn.apache.org/viewvc/openmeetings/branches/3.0.x/src/web/java/org/apache/openmeetings/web/admin/rooms/RoomForm.java?rev=1573148&r1=1573147&r2=1573148&view=diff
==============================================================================
--- 
openmeetings/branches/3.0.x/src/web/java/org/apache/openmeetings/web/admin/rooms/RoomForm.java
 (original)
+++ 
openmeetings/branches/3.0.x/src/web/java/org/apache/openmeetings/web/admin/rooms/RoomForm.java
 Sat Mar  1 10:50:29 2014
@@ -49,6 +49,7 @@ import org.apache.wicket.ajax.AjaxEventB
 import org.apache.wicket.ajax.AjaxRequestTarget;
 import org.apache.wicket.ajax.attributes.AjaxRequestAttributes;
 import org.apache.wicket.ajax.form.AjaxFormValidatingBehavior;
+import org.apache.wicket.ajax.markup.html.form.AjaxCheckBox;
 import org.apache.wicket.markup.html.WebMarkupContainer;
 import org.apache.wicket.markup.html.basic.Label;
 import org.apache.wicket.markup.html.form.CheckBox;
@@ -71,8 +72,7 @@ public class RoomForm extends AdminCommo
        private final static List<Long> DROPDOWN_NUMBER_OF_PARTICIPANTS = 
Arrays.asList(2L, 4L, 6L, 8L, 10L, 12L, 14L, 16L, 20L, 25L, 32L, 50L,
                        100L, 150L, 200L, 500L, 1000L);
        private final WebMarkupContainer roomList;
-       private final TextField<String> confno;
-       private final CheckBox sipEnabled;
+       private final TextField<String> pin;
        final WebMarkupContainer moderatorContainer;
        final WebMarkupContainer clientsContainer;
        final ListView<RoomModerator> moderators;
@@ -213,28 +213,22 @@ public class RoomForm extends AdminCommo
                CheckBox isModeratedRoom = new CheckBox("isModeratedRoom");
         add(isModeratedRoom.setOutputMarkupId(true));
 
-               
                moderatorContainer = new 
WebMarkupContainer("moderatorContainer");
                
                add(moderatorContainer.add(moderators).setOutputMarkupId(true));
                
-               confno = new TextField<String>("confno");
-               add(confno);
-               add(new TextField<String>("pin"));
-               add(new TextField<String>("ownerId"));
-               sipEnabled = new CheckBox("sipEnabled");
-               add(sipEnabled.setOutputMarkupId(true).add(new 
AjaxEventBehavior("onclick") {
-                       private static final long serialVersionUID = 
-1206667381066917517L;
+               add(new TextField<String>("confno").setEnabled(false));
+               add(pin = new TextField<String>("pin"));
+               pin.setEnabled(room.isSipEnabled());
+               add(new TextField<String>("ownerId").setEnabled(false));
+               add(new AjaxCheckBox("sipEnabled") {
+                       private static final long serialVersionUID = 1L;
 
                        @Override
-                       protected void onEvent(AjaxRequestTarget target) {
-                               
sipEnabled.setModelObject(!sipEnabled.getModelObject());
-                               if (sipEnabled.getModelObject() && 
confno.getModelObject() == null){
-                                       
getBean(RoomDao.class).update(getModelObject(), getUserId());
-                               }
-                               updateView(target);                             
+                       protected void onUpdate(AjaxRequestTarget target) {
+                               updateView(target);
                        }
-               }));
+               }.setOutputMarkupId(true));
                
                // attach an ajax validation behavior to all form component's 
keydown
                // event and throttle it down to once per second
@@ -312,8 +306,7 @@ public class RoomForm extends AdminCommo
        public void updateView(AjaxRequestTarget target) {
                target.add(this);
                target.add(roomList);
-               confno.setEnabled(sipEnabled.getModelObject());
-               target.add(confno);
+               target.add(pin.setEnabled(getModelObject().isSipEnabled()));
                updateModerators(target);
                updatClients(target);
                target.appendJavaScript("omRoomPanelInit();");

Modified: 
openmeetings/branches/3.0.x/src/web/java/org/apache/openmeetings/web/admin/rooms/RoomsPanel.html
URL: 
http://svn.apache.org/viewvc/openmeetings/branches/3.0.x/src/web/java/org/apache/openmeetings/web/admin/rooms/RoomsPanel.html?rev=1573148&r1=1573147&r2=1573148&view=diff
==============================================================================
--- 
openmeetings/branches/3.0.x/src/web/java/org/apache/openmeetings/web/admin/rooms/RoomsPanel.html
 (original)
+++ 
openmeetings/branches/3.0.x/src/web/java/org/apache/openmeetings/web/admin/rooms/RoomsPanel.html
 Sat Mar  1 10:50:29 2014
@@ -249,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" disabled="disabled" wicket:id="pin" />
+                                               <label><wicket:ommessage 
key="1004" /></label><input type="text" wicket:id="pin" />
                                                        </div>
                                            <div class="formelement">
-                                               <label><wicket:ommessage 
key="1308" /></label><input type="text" disabled="disabled" wicket:id="ownerId" 
/>
+                                               <label><wicket:ommessage 
key="1308" /></label><input type="text" wicket:id="ownerId" />
                                                        </div>
                                            <div class="formelement">
                                                <label><wicket:ommessage 
key="1538" /></label><input type="checkbox" class="formcheckbox" 
wicket:id="sipEnabled" />

Modified: 
openmeetings/trunk/singlewebapp/src/db/java/org/apache/openmeetings/db/dao/basic/ConfigurationDao.java
URL: 
http://svn.apache.org/viewvc/openmeetings/trunk/singlewebapp/src/db/java/org/apache/openmeetings/db/dao/basic/ConfigurationDao.java?rev=1573148&r1=1573147&r2=1573148&view=diff
==============================================================================
--- 
openmeetings/trunk/singlewebapp/src/db/java/org/apache/openmeetings/db/dao/basic/ConfigurationDao.java
 (original)
+++ 
openmeetings/trunk/singlewebapp/src/db/java/org/apache/openmeetings/db/dao/basic/ConfigurationDao.java
 Sat Mar  1 10:50:29 2014
@@ -25,6 +25,7 @@ import static org.apache.openmeetings.ut
 import static 
org.apache.openmeetings.util.OpenmeetingsVariables.whiteboardDrawStatus;
 
 import java.lang.reflect.Constructor;
+import java.util.ArrayList;
 import java.util.Arrays;
 import java.util.Date;
 import java.util.List;
@@ -85,15 +86,20 @@ public class ConfigurationDao implements
                                        .setParameter("conf_key", 
confKey).getResultList();
                        return list.isEmpty() ? null : list.get(0);
                } catch (Exception e) {
-                       log.error("[getConfKey]: ", e);
+                       log.error("[forceGet]: ", e);
                }
                return null;
        }
 
        public List<Configuration> get(String... keys) {
-               return em.createNamedQuery("getConfigurationsByKeys", 
Configuration.class)
-                               .setParameter("conf_keys", Arrays.asList(keys))
-                               .getResultList();
+               List<Configuration> result = new ArrayList<Configuration>();
+               for (String key : keys) { //iteration is necessary to fill list 
with all values 
+                       List<Configuration> r = 
em.createNamedQuery("getConfigurationsByKeys", Configuration.class)
+                                       .setParameter("conf_keys", 
Arrays.asList(key))
+                                       .getResultList();
+                       result.add(r.isEmpty() ? null : r.get(0));
+               }
+               return result;
        }
 
        /**

Modified: 
openmeetings/trunk/singlewebapp/src/main/java/org/apache/openmeetings/remote/MainService.java
URL: 
http://svn.apache.org/viewvc/openmeetings/trunk/singlewebapp/src/main/java/org/apache/openmeetings/remote/MainService.java?rev=1573148&r1=1573147&r2=1573148&view=diff
==============================================================================
--- 
openmeetings/trunk/singlewebapp/src/main/java/org/apache/openmeetings/remote/MainService.java
 (original)
+++ 
openmeetings/trunk/singlewebapp/src/main/java/org/apache/openmeetings/remote/MainService.java
 Sat Mar  1 10:50:29 2014
@@ -21,7 +21,6 @@ package org.apache.openmeetings.remote;
 import static 
org.apache.openmeetings.util.OpenmeetingsVariables.CONFIG_MAX_UPLOAD_SIZE_KEY;
 import static 
org.apache.openmeetings.util.OpenmeetingsVariables.CONFIG_REDIRECT_URL_FOR_EXTERNAL_KEY;
 
-import java.util.ArrayList;
 import java.util.Date;
 import java.util.HashMap;
 import java.util.LinkedHashMap;
@@ -463,15 +462,9 @@ public class MainService implements IPen
 
        public List<Configuration> getGeneralOptions(String SID) {
                try {
-                       List<Configuration> result = new 
ArrayList<Configuration>();
-                       
result.add(configurationDao.forceGet("exclusive.audio.keycode"));
-                       result.add(configurationDao.forceGet("red5sip.enable"));
-                       
result.add(configurationDao.forceGet(CONFIG_MAX_UPLOAD_SIZE_KEY));
-                       result.add(configurationDao.forceGet("mute.keycode"));
-                       
result.add(configurationDao.forceGet(CONFIG_REDIRECT_URL_FOR_EXTERNAL_KEY));
-                       return result;
+                       return configurationDao.get("exclusive.audio.keycode", 
"red5sip.enable", CONFIG_MAX_UPLOAD_SIZE_KEY, "mute.keycode", 
CONFIG_REDIRECT_URL_FOR_EXTERNAL_KEY);
                } catch (Exception err) {
-                       log.error("[getLoginOptions]",err);
+                       log.error("[getGeneralOptions]",err);
                }
                return null;
        }

Modified: 
openmeetings/trunk/singlewebapp/src/web/java/org/apache/openmeetings/web/admin/rooms/RoomForm.java
URL: 
http://svn.apache.org/viewvc/openmeetings/trunk/singlewebapp/src/web/java/org/apache/openmeetings/web/admin/rooms/RoomForm.java?rev=1573148&r1=1573147&r2=1573148&view=diff
==============================================================================
--- 
openmeetings/trunk/singlewebapp/src/web/java/org/apache/openmeetings/web/admin/rooms/RoomForm.java
 (original)
+++ 
openmeetings/trunk/singlewebapp/src/web/java/org/apache/openmeetings/web/admin/rooms/RoomForm.java
 Sat Mar  1 10:50:29 2014
@@ -49,6 +49,7 @@ import org.apache.wicket.ajax.AjaxEventB
 import org.apache.wicket.ajax.AjaxRequestTarget;
 import org.apache.wicket.ajax.attributes.AjaxRequestAttributes;
 import org.apache.wicket.ajax.form.AjaxFormValidatingBehavior;
+import org.apache.wicket.ajax.markup.html.form.AjaxCheckBox;
 import org.apache.wicket.markup.html.WebMarkupContainer;
 import org.apache.wicket.markup.html.basic.Label;
 import org.apache.wicket.markup.html.form.CheckBox;
@@ -71,8 +72,7 @@ public class RoomForm extends AdminCommo
        private final static List<Long> DROPDOWN_NUMBER_OF_PARTICIPANTS = 
Arrays.asList(2L, 4L, 6L, 8L, 10L, 12L, 14L, 16L, 20L, 25L, 32L, 50L,
                        100L, 150L, 200L, 500L, 1000L);
        private final WebMarkupContainer roomList;
-       private final TextField<String> confno;
-       private final CheckBox sipEnabled;
+       private final TextField<String> pin;
        final WebMarkupContainer moderatorContainer;
        final WebMarkupContainer clientsContainer;
        final ListView<RoomModerator> moderators;
@@ -213,28 +213,22 @@ public class RoomForm extends AdminCommo
                CheckBox isModeratedRoom = new CheckBox("isModeratedRoom");
         add(isModeratedRoom.setOutputMarkupId(true));
 
-               
                moderatorContainer = new 
WebMarkupContainer("moderatorContainer");
                
                add(moderatorContainer.add(moderators).setOutputMarkupId(true));
                
-               confno = new TextField<String>("confno");
-               add(confno);
-               add(new TextField<String>("pin"));
-               add(new TextField<String>("ownerId"));
-               sipEnabled = new CheckBox("sipEnabled");
-               add(sipEnabled.setOutputMarkupId(true).add(new 
AjaxEventBehavior("onclick") {
-                       private static final long serialVersionUID = 
-1206667381066917517L;
+               add(new TextField<String>("confno").setEnabled(false));
+               add(pin = new TextField<String>("pin"));
+               pin.setEnabled(room.isSipEnabled());
+               add(new TextField<String>("ownerId").setEnabled(false));
+               add(new AjaxCheckBox("sipEnabled") {
+                       private static final long serialVersionUID = 1L;
 
                        @Override
-                       protected void onEvent(AjaxRequestTarget target) {
-                               
sipEnabled.setModelObject(!sipEnabled.getModelObject());
-                               if (sipEnabled.getModelObject() && 
confno.getModelObject() == null){
-                                       
getBean(RoomDao.class).update(getModelObject(), getUserId());
-                               }
-                               updateView(target);                             
+                       protected void onUpdate(AjaxRequestTarget target) {
+                               updateView(target);
                        }
-               }));
+               }.setOutputMarkupId(true));
                
                // attach an ajax validation behavior to all form component's 
keydown
                // event and throttle it down to once per second
@@ -312,8 +306,7 @@ public class RoomForm extends AdminCommo
        public void updateView(AjaxRequestTarget target) {
                target.add(this);
                target.add(roomList);
-               confno.setEnabled(sipEnabled.getModelObject());
-               target.add(confno);
+               target.add(pin.setEnabled(getModelObject().isSipEnabled()));
                updateModerators(target);
                updatClients(target);
                target.appendJavaScript("omRoomPanelInit();");

Modified: 
openmeetings/trunk/singlewebapp/src/web/java/org/apache/openmeetings/web/admin/rooms/RoomsPanel.html
URL: 
http://svn.apache.org/viewvc/openmeetings/trunk/singlewebapp/src/web/java/org/apache/openmeetings/web/admin/rooms/RoomsPanel.html?rev=1573148&r1=1573147&r2=1573148&view=diff
==============================================================================
--- 
openmeetings/trunk/singlewebapp/src/web/java/org/apache/openmeetings/web/admin/rooms/RoomsPanel.html
 (original)
+++ 
openmeetings/trunk/singlewebapp/src/web/java/org/apache/openmeetings/web/admin/rooms/RoomsPanel.html
 Sat Mar  1 10:50:29 2014
@@ -249,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" disabled="disabled" wicket:id="pin" />
+                                               <label><wicket:ommessage 
key="1004" /></label><input type="text" wicket:id="pin" />
                                                        </div>
                                            <div class="formelement">
-                                               <label><wicket:ommessage 
key="1308" /></label><input type="text" disabled="disabled" wicket:id="ownerId" 
/>
+                                               <label><wicket:ommessage 
key="1308" /></label><input type="text" wicket:id="ownerId" />
                                                        </div>
                                            <div class="formelement">
                                                <label><wicket:ommessage 
key="1538" /></label><input type="checkbox" class="formcheckbox" 
wicket:id="sipEnabled" />


Reply via email to