Author: solomax
Date: Thu Dec  1 08:14:19 2016
New Revision: 1772150

URL: http://svn.apache.org/viewvc?rev=1772150&view=rev
Log:
[OPENMEETINGS-1514] WB is auto-created for invited user

Modified:
    
openmeetings/application/branches/3.1.x/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/WhiteBoardService.java
    
openmeetings/application/branches/3.1.x/openmeetings-flash/src/main/swf/modules/invitation/autoloaderBarOnly.lzx
    
openmeetings/application/branches/3.1.x/openmeetings-flash/src/main/swf/modules/invitation/invitationQuickLoader.lzx
    
openmeetings/application/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/HashPage.java
    
openmeetings/application/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/MainPage.java
    
openmeetings/application/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/SwfPanel.java
    
openmeetings/application/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/util/ProfileImageResourceReference.java
    
openmeetings/application/branches/3.2.x/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/WhiteBoardService.java
    
openmeetings/application/trunk/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/WhiteBoardService.java

Modified: 
openmeetings/application/branches/3.1.x/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/WhiteBoardService.java
URL: 
http://svn.apache.org/viewvc/openmeetings/application/branches/3.1.x/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/WhiteBoardService.java?rev=1772150&r1=1772149&r2=1772150&view=diff
==============================================================================
--- 
openmeetings/application/branches/3.1.x/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/WhiteBoardService.java
 (original)
+++ 
openmeetings/application/branches/3.1.x/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/WhiteBoardService.java
 Thu Dec  1 08:14:19 2016
@@ -18,6 +18,7 @@
  */
 package org.apache.openmeetings.core.remote;
 
+import static 
org.apache.openmeetings.util.OpenmeetingsVariables.CONFIG_DEFAULT_LANG_KEY;
 import static org.apache.openmeetings.util.OpenmeetingsVariables.webAppRootKey;
 
 import java.io.File;
@@ -34,6 +35,7 @@ import org.apache.commons.collections4.C
 import 
org.apache.openmeetings.core.data.whiteboard.WhiteBoardObjectListManagerById;
 import 
org.apache.openmeetings.core.data.whiteboard.WhiteBoardObjectSyncManager;
 import org.apache.openmeetings.core.remote.red5.ScopeApplicationAdapter;
+import org.apache.openmeetings.db.dao.basic.ConfigurationDao;
 import org.apache.openmeetings.db.dao.label.LabelDao;
 import org.apache.openmeetings.db.dao.server.ISessionManager;
 import org.apache.openmeetings.db.dao.server.SessiondataDao;
@@ -43,6 +45,7 @@ import org.apache.openmeetings.db.dto.ro
 import org.apache.openmeetings.db.dto.room.WhiteboardObjectList;
 import org.apache.openmeetings.db.dto.room.WhiteboardSyncLockObject;
 import org.apache.openmeetings.db.entity.room.Client;
+import org.apache.openmeetings.db.entity.user.User;
 import org.apache.openmeetings.db.util.AuthLevelUtil;
 import org.apache.openmeetings.util.OmFileHelper;
 import org.red5.logging.Red5LoggerFactory;
@@ -75,6 +78,8 @@ public class WhiteBoardService implement
        private SessiondataDao sessionDao;
        @Autowired
        private LabelDao labelDao;
+       @Autowired
+       private ConfigurationDao cfgDao;
 
        public boolean getNewWhiteboardId(String name) {
                try {
@@ -127,7 +132,16 @@ public class WhiteBoardService implement
                        WhiteboardObjectList whiteboardObjectList = 
wbListManagerById.getWhiteBoardObjectListByRoomId(roomId);
 
                        if (whiteboardObjectList.getWhiteboardObjects().size() 
== 0) {
-                               wbListManagerById.getNewWhiteboardId(roomId, 
labelDao.getString("615", 
userDao.get(currentClient.getUserId()).getLanguageId()));
+                               Long langId = null;
+                               {
+                                       Long userId = currentClient.getUserId();
+                                       if (userId != null && 
userId.longValue() < 0) {
+                                               userId = -userId;
+                                       }
+                                       User u = userDao.get(userId);
+                                       langId = u == null ? 
cfgDao.getConfValue(CONFIG_DEFAULT_LANG_KEY, Long.class, "1") : 
u.getLanguageId();
+                               }
+                               wbListManagerById.getNewWhiteboardId(roomId, 
labelDao.getString("615", langId));
                                log.debug("Init New Room List");
                                whiteboardObjectList = 
wbListManagerById.getWhiteBoardObjectListByRoomId(roomId);
                        }

Modified: 
openmeetings/application/branches/3.1.x/openmeetings-flash/src/main/swf/modules/invitation/autoloaderBarOnly.lzx
URL: 
http://svn.apache.org/viewvc/openmeetings/application/branches/3.1.x/openmeetings-flash/src/main/swf/modules/invitation/autoloaderBarOnly.lzx?rev=1772150&r1=1772149&r2=1772150&view=diff
==============================================================================
--- 
openmeetings/application/branches/3.1.x/openmeetings-flash/src/main/swf/modules/invitation/autoloaderBarOnly.lzx
 (original)
+++ 
openmeetings/application/branches/3.1.x/openmeetings-flash/src/main/swf/modules/invitation/autoloaderBarOnly.lzx
 Thu Dec  1 08:14:19 2016
@@ -9,7 +9,7 @@
   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
@@ -25,12 +25,12 @@
        <attribute name="maxwidth" value="400" type="number" />
        <attribute name="maxsteps" value="22" type="number" />
        <attribute name="currentsteps" value="0" type="number" />
-       
+
        <method name="close">
                canvas.thishib.loaderVar = null;
                this.destroy();
        </method>
-       
+
        <method name="setProgress">
                this.currentsteps += 1;
                if($debug) Debug.write("autoLoader/setProgress ===== 
",this.currentsteps);
@@ -39,50 +39,50 @@
                if($debug) Debug.write("autoLoader/setResourceNumber == ",w);
                this.loadingbar._loading.setAttribute('width',w);
        </method>
-      
-    <view name="loadingbar"  height="1" pixellock="true"
-          x="-5" y="40" width="$once{ parent.maxwidth+2 }" visibility="hidden">
-          <view x="1" y="1" width="$once{ parent.width-2 }" height="1" 
opacity="0.3"
-                       bgcolor="$once{ 
canvas.getThemeColor('styleMenuBarBaseColor') }" />
-          <view name="_loading" x="1" y="1" width="0" height="1"  
pixellock="true" 
-                       bgcolor="$once{ 
canvas.getThemeColor('styleMenuBarBaseColor') }"/>
-    </view>  
-          
-    <netRemoteCallHib name="getLanguageByIdAndMax" 
funcname="languageservice.getLanguageByIdAndMax" 
-               remotecontext="$once{ canvas.thishib }" >
-       <attribute name="start" value="0" type="number" />
-       <attribute name="step" value="100" type="number" /> 
-       <attribute name="max" value="1600" type="number" />    
-        <netparam><method name="getValue">return 
canvas.thishib.userlang;</method></netparam> 
-        <netparam><method name="getValue">return 
parent.start;</method></netparam> 
-        <netparam><method name="getValue">return 
parent.step;</method></netparam> 
-        <handler name="ondata" args="value">
-               <![CDATA[
-                       //if ($debug) Debug.write("getLanguageByIdAndMax: 
",value);
-                       setLabelObjectByHundred(this.start,value);
-                   //The onResult-Handler will be called be the rtmpconnection
-                   if (this.start <= max){
-                       this.start += this.step;
+
+       <view name="loadingbar"  height="1" pixellock="true"
+                       x="-5" y="40" width="$once{ parent.maxwidth+2 }" 
visibility="hidden">
+               <view x="1" y="1" width="$once{ parent.width-2 }" height="1" 
opacity="0.3"
+                               bgcolor="$once{ 
canvas.getThemeColor('styleMenuBarBaseColor') }" />
+               <view name="_loading" x="1" y="1" width="0" height="1"  
pixellock="true" 
+                               bgcolor="$once{ 
canvas.getThemeColor('styleMenuBarBaseColor') }"/>
+       </view>
+
+       <netRemoteCallHib name="getLanguageByIdAndMax" 
funcname="languageservice.getLanguageByIdAndMax" 
+                       remotecontext="$once{ canvas.thishib }" >
+               <attribute name="start" value="0" type="number" />
+               <attribute name="step" value="100" type="number" /> 
+               <attribute name="max" value="1600" type="number" />
+               <netparam><method name="getValue">return 
canvas.thishib.userlang;</method></netparam> 
+               <netparam><method name="getValue">return 
parent.start;</method></netparam> 
+               <netparam><method name="getValue">return 
parent.step;</method></netparam> 
+               <handler name="ondata" args="value">
+                       <![CDATA[
+                               //if ($debug) 
Debug.write("getLanguageByIdAndMax: ",value);
+                               setLabelObjectByHundred(this.start,value);
+                               //The onResult-Handler will be called be the 
rtmpconnection
+                               if (this.start <= max){
+                                       this.start += this.step;
                                        canvas.thishib.loaderVar.setProgress();
                                        this.doCall();
-                   } else {
-                       parent.setProgress();
+                               } else {
+                                       parent.setProgress();
                                }
                        ]]>
-        </handler>  
-    </netRemoteCallHib>         
-    
-    <netRemoteCallHib name="setUsernameAndSession" 
funcname="setUsernameAndSession" remotecontext="$once{ canvas.thishib }" >   
-        <netparam><method name="getValue">return 
canvas.sessionId;</method></netparam>
-        <netparam><method name="getValue">return 
canvas.userId;</method></netparam>
-        <netparam><method name="getValue">return 
canvas.currentuser;</method></netparam>
-        <netparam><method name="getValue">return 
canvas.firstName;</method></netparam>
-        <netparam><method name="getValue">return 
canvas.lastName;</method></netparam>      
-        <handler name="ondata" args="value">
-            //The onResult-Handler will be called be the rtmpconnection
-            if ($debug) Debug.write("setUsername: value, 
",canvas.thishib.currentInvitation.room.type);
-            clearStageContent();               
-            parent.close();
+               </handler>
+       </netRemoteCallHib>
+
+       <netRemoteCallHib name="setUsernameAndSession" 
funcname="setUsernameAndSession" remotecontext="$once{ canvas.thishib }" >
+               <netparam><method name="getValue">return 
canvas.sessionId;</method></netparam>
+               <netparam><method name="getValue">return 
canvas.userId;</method></netparam>
+               <netparam><method name="getValue">return 
canvas.currentuser;</method></netparam>
+               <netparam><method name="getValue">return 
canvas.firstName;</method></netparam>
+               <netparam><method name="getValue">return 
canvas.lastName;</method></netparam>
+               <handler name="ondata" args="value">
+                       //The onResult-Handler will be called be the 
rtmpconnection
+                       if ($debug) Debug.write("setUsername: value, 
",canvas.thishib.currentInvitation.room.type);
+                       clearStageContent();
+                       parent.close();
 
                        var r = canvas.thishib.currentInvitation.room;
                        if (r.type == 'conference'){
@@ -92,8 +92,8 @@
                        } else if (r.type == 'interview'){
                                new 
lz.interviewConferenceRoom(canvas.main_content._content.inner, {roomobj: r});
                        }
-        </handler>
-    </netRemoteCallHib>
+               </handler>
+       </netRemoteCallHib>
 </class>
 
 </library>

Modified: 
openmeetings/application/branches/3.1.x/openmeetings-flash/src/main/swf/modules/invitation/invitationQuickLoader.lzx
URL: 
http://svn.apache.org/viewvc/openmeetings/application/branches/3.1.x/openmeetings-flash/src/main/swf/modules/invitation/invitationQuickLoader.lzx?rev=1772150&r1=1772149&r2=1772150&view=diff
==============================================================================
--- 
openmeetings/application/branches/3.1.x/openmeetings-flash/src/main/swf/modules/invitation/invitationQuickLoader.lzx
 (original)
+++ 
openmeetings/application/branches/3.1.x/openmeetings-flash/src/main/swf/modules/invitation/invitationQuickLoader.lzx
 Thu Dec  1 08:14:19 2016
@@ -9,7 +9,7 @@
   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
@@ -19,15 +19,14 @@
   
 -->
 <library>
-       <!---
-       -->
+
        <!-- label: data loading, please wait -->
        <class name="invitationQuickLoader" extends="labelExplorerBox" 
labelid="230"
                        docking="true" resizeable="false" closable="false" 
width="324" 
                        x="$once{ canvas.width/2 - this.width/2 }" y="0" 
height="120">
-                
+
                <attribute name="userlang" value="1" type="number" />
-               
+
                <handler name="oninit">
                        if (canvas.thishib.currentInvitation.passwordProtected){
                                if ($debug) Debug.write("Is Password 
Protected");
@@ -38,7 +37,7 @@
                                this.selectLanguage();
                        }
                </handler>
-               
+
                <method name="selectLanguage">
                        if ($debug) Debug.write("invitationQuickLoader:oninit 
userlang = [",userlang,"]; canvas.lang = [",canvas.language_id,"]");
                        this.setRoomValues();
@@ -47,39 +46,39 @@
                        } else {
                                this.pass_label.setAttribute('visible', false);
                                this._password.setAttribute('visible', false);
-                               this.invitation_pass.setAttribute('visible', 
false);            
+                               this.invitation_pass.setAttribute('visible', 
false);
                                this.labellanguages.setAttribute('visible', 
true);
                                this.languages.setAttribute('visible', true);
                                this.connect.setAttribute('visible', true);
                        }
                </method>
-               
+
                <method name="checkPWD">
                        this.checkInvitationPass.doCall();
                </method>
-               
-               <netRemoteCallHib name="isRoomFull" 
funcname="conferenceservice.isRoomFull" remotecontext="$once{ canvas.thishib }" 
activeErrorHandler="true" >         
-               <netparam name="roomId"><method name="getValue">return 
canvas.thishib.currentInvitation.room.id;</method></netparam>
-               <handler name="ondata" args="value">
-                       <![CDATA[
-                       //The onResult-Handler will be called be the 
rtmpconnection
-                       if ($debug) 
Debug.write(canvas.thishib.currentInvitation.room.id);
-                                       if ($debug) Debug.write("isRoomFull: 
",value);
-                                       
-                                       if (value) {
-                                               new 
lz.labelerrorPopup(canvas,{errorlabelid:618});
-                                               parent.close();
-                                       } else {
-                                               parent.login();
-                                       }
-               ]]>
-               </handler>   
-       </netRemoteCallHib> 
-               
+
+               <netRemoteCallHib name="isRoomFull" 
funcname="conferenceservice.isRoomFull" remotecontext="$once{ canvas.thishib }" 
activeErrorHandler="true" >
+                       <netparam name="roomId"><method name="getValue">return 
canvas.thishib.currentInvitation.room.id;</method></netparam>
+                       <handler name="ondata" args="value">
+                       <![CDATA[
+                               //The onResult-Handler will be called be the 
rtmpconnection
+                               if ($debug) 
Debug.write(canvas.thishib.currentInvitation.room.id);
+                               if ($debug) Debug.write("isRoomFull: ",value);
+
+                               if (value) {
+                                       new 
lz.labelerrorPopup(canvas,{errorlabelid:618});
+                                       parent.close();
+                               } else {
+                                       parent.login();
+                               }
+                       ]]>
+                       </handler>
+               </netRemoteCallHib>
+
                <netRemoteCallHib name="checkInvitationPass" 
funcname="invitationservice.checkInvitationPass" remotecontext="$once{ 
canvas.thishib }" activeErrorHandler="true" >
                        <netparam name="invitationHash"><method 
name="getValue">return canvas.invitationHash;</method></netparam>
                        <netparam name="pass"><method name="getValue">return 
parent.parent._password.getText();</method></netparam>
-                       
+
                        <handler name="ondata" args="value">
                        <![CDATA[
                                //The onResult-Handler will be called be the 
rtmpconnection
@@ -90,13 +89,13 @@
                                }
                        ]]>
                        </handler>
-               </netRemoteCallHib>     
-           
+               </netRemoteCallHib>
+
                <method name="setRoomValues">
                        
canvas.thishib.setUser(canvas.thishib.currentInvitation.invitee);
                        
canvas.setRoomValues(canvas.thishib.currentInvitation.room);
                </method>
-               
+
                <method name="login">
                <![CDATA[
                        this.userlang = Number(this.languages.getValue());
@@ -104,15 +103,15 @@
                        this.languages.setAttribute('visibility','hidden');
                        this.connect.setAttribute('visibility','hidden');
                        this.labelloading.setAttribute('visibility','visible');
-                       
+
                        parent.userlang = Number(this.userlang);
-                       
+
                        var invitee = canvas.thishib.currentInvitation.invitee;
                        var email = invitee.address.email;
                        var fName = invitee.firstname == null ? "" : 
invitee.firstname;
                        var lName = invitee.lastname == null || 
invitee.lastname == "" ? email : invitee.lastname;
                        //if ($debug) Debug.write("!!!!!!!!!!! invitee :: ", 
invitee);
-                       
+
                        canvas.setAttribute('currentuser', email);
                        canvas.setAttribute('userId', -invitee.id);
                        canvas.setAttribute('mail', email);
@@ -121,11 +120,11 @@
                        canvas.setAttribute('lastLogin', invitee.lastlogin);
                        canvas.setAttribute('picture_uri', invitee.pictureuri);
                        canvas.setAttribute('language', invitee.language_id);
-                       
+
                        hib.userobject = invitee;
                        hib.userobject.firstname = fName;
                        hib.userobject.lastname = lName;
-                       
+
                        hib.userlang = Number(this.userlang);
                        hib.getCurrentRoomClient.doCall();
                        this.close();
@@ -133,47 +132,47 @@
                        } else {
                                hib.getLanguageByIdAndMax.doCall();
                        }
-               ]]>         
+               ]]>
                </method>
-                
+
                <!-- label: password -->
-               <labelText name="pass_label" labelid="536" visibility="hidden" 
width="200" y="30" resize="false" x="10" />  
+               <labelText name="pass_label" labelid="536" visibility="hidden" 
width="200" y="30" resize="false" x="10" />
                <customEdittext name="_password" password="true" 
visibility="hidden" width="170" y="30" x="120" />
-               
+
                <!-- label: Check password -->
-               <simpleLabelButton name="invitation_pass" y="80" x="120" 
text="start" visibility="hidden" labelid="537"
-                                                       width="170" height="20" 
onclick="parent.checkPWD();" />
-               
+               <simpleLabelButton name="invitation_pass" y="80" x="120" 
text="start" visibility="hidden" labelid="537"
+                               width="170" height="20" 
onclick="parent.checkPWD();" />
+
                <!-- label: language -->
-               <labelText name="labellanguages" labelid="227" 
visibility="hidden" width="200" y="30" resize="false" x="10" />     
+               <labelText name="labellanguages" labelid="227" 
visibility="hidden" width="200" y="30" resize="false" x="10" />
                <resetCombobox name="languages" width="170" y="30" x="120" 
visibility="hidden" editable="false">
-               <netRemoteCallHib name="getLanguages" 
funcname="languageservice.getLanguages" remotecontext="$once{ canvas.thishib }" 
>      
-                   <handler name="oninit">
-                       this.doCall();
-                   </handler>
-                   <handler name="ondata" args="value">
-                       //The onResult-Handler will be called be the 
rtmpconnection
-                       <![CDATA[
-                        var selVal = canvas.language_id;
-                        var found = false;
-                               for (var i = 0; i < value.length; ++i){
-                                       
this.parent.addItem(value[i].name,value[i].language_id);
-                            if (value[i].language_id == selVal) {
-                                found = true;
-                            }
-                               }
-                               this.parent.selectItem((found) ? selVal : 
value[0].language_id);
-                           ]]>
-                               </handler>  
+                       <netRemoteCallHib name="getLanguages" 
funcname="languageservice.getLanguages" remotecontext="$once{ canvas.thishib }" 
>
+                               <handler name="oninit">
+                                       this.doCall();
+                               </handler>
+                               <handler name="ondata" args="value">
+                               <![CDATA[
+                                       //The onResult-Handler will be called 
be the rtmpconnection
+                                       var selVal = canvas.language_id;
+                                       var found = false;
+                                       for (var i = 0; i < value.length; ++i){
+                                               
this.parent.addItem(value[i].name,value[i].language_id);
+                                               if (value[i].language_id == 
selVal) {
+                                                       found = true;
+                                               }
+                                       }
+                                       this.parent.selectItem((found) ? selVal 
: value[0].language_id);
+                               ]]>
+                               </handler>
                        </netRemoteCallHib>
-               </resetCombobox>                 
+               </resetCombobox>
 
                <!-- label: loading --> 
                <labelText name="labelloading" y="30" x="10" fontstyle="bold" 
labelid="229" visibility="hidden" />
-               
+
                <!-- label: enter -->
                <simpleLabelButton name="connect" y="80" x="120" text="start" 
-                                                  visibility="hidden" 
labelid="228" width="170" height="20" 
-                                                  
onclick="parent.isRoomFull.doCall();" />
+                               visibility="hidden" labelid="228" width="170" 
height="20" 
+                               onclick="parent.isRoomFull.doCall();" />
        </class>
 </library>

Modified: 
openmeetings/application/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/HashPage.java
URL: 
http://svn.apache.org/viewvc/openmeetings/application/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/HashPage.java?rev=1772150&r1=1772149&r2=1772150&view=diff
==============================================================================
--- 
openmeetings/application/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/HashPage.java
 (original)
+++ 
openmeetings/application/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/HashPage.java
 Thu Dec  1 08:14:19 2016
@@ -128,7 +128,9 @@ public class HashPage extends BaseInited
                if (roomId != null) {
                        pp.add(WICKET_ROOM_ID, roomId);
                        SwfPanel rp = new SwfPanel(CHILD_ID, pp);
-                       replace(new MainPanel(PANEL_MAIN, rp));
+                       MainPanel mp = new MainPanel(PANEL_MAIN, rp);
+                       mp.getChat().setVisible(false);
+                       replace(mp);
                        rp.onMenuPanelLoad(null);
                } else {
                        replace(new SwfPanel(PANEL_MAIN, pp));

Modified: 
openmeetings/application/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/MainPage.java
URL: 
http://svn.apache.org/viewvc/openmeetings/application/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/MainPage.java?rev=1772150&r1=1772149&r2=1772150&view=diff
==============================================================================
--- 
openmeetings/application/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/MainPage.java
 (original)
+++ 
openmeetings/application/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/MainPage.java
 Thu Dec  1 08:14:19 2016
@@ -69,7 +69,7 @@ public class MainPage extends BaseInited
                        protected void respond(AjaxRequestTarget target) {
                                inviteUser.open(target, 
getParam(getComponent(), PARAM_USER_ID).toLong());
                        }
-                       
+
                        @Override
                        public void renderHead(Component component, 
IHeaderResponse response) {
                                super.renderHead(component, response);

Modified: 
openmeetings/application/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/SwfPanel.java
URL: 
http://svn.apache.org/viewvc/openmeetings/application/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/SwfPanel.java?rev=1772150&r1=1772149&r2=1772150&view=diff
==============================================================================
--- 
openmeetings/application/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/SwfPanel.java
 (original)
+++ 
openmeetings/application/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/SwfPanel.java
 Thu Dec  1 08:14:19 2016
@@ -85,11 +85,11 @@ public class SwfPanel extends BasePanel
        private final PollResultsDialog pollResults;
        private final StartSharingEventBehavior startSharing;
        private Long roomId = null;
-       
+
        public SwfPanel(String id, Long roomId) {
                this(id, addServer(roomId, true));
        }
-       
+
        public SwfPanel(String id, PageParameters pp) {
                super(id);
                //OK let's find the room
@@ -124,13 +124,13 @@ public class SwfPanel extends BasePanel
                if (roomId != null && roomId.longValue() > 0) {
                        add(new AbstractDefaultAjaxBehavior() {
                                private static final long serialVersionUID = 1L;
-       
+
                                @Override
                                protected void respond(AjaxRequestTarget 
target) {
                                        invite.updateModel(target);
                                        invite.open(target);
                                }
-                               
+
                                @Override
                                public void renderHead(Component component, 
IHeaderResponse response) {
                                        super.renderHead(component, response);
@@ -139,7 +139,7 @@ public class SwfPanel extends BasePanel
                        });
                        add(new AbstractDefaultAjaxBehavior() {
                                private static final long serialVersionUID = 1L;
-       
+
                                @Override
                                protected void respond(AjaxRequestTarget 
target) {
                                        String publicSid = getPublicSid();
@@ -149,7 +149,7 @@ public class SwfPanel extends BasePanel
                                                createPoll.open(target);
                                        }
                                }
-                               
+
                                @Override
                                public void renderHead(Component component, 
IHeaderResponse response) {
                                        super.renderHead(component, response);
@@ -158,7 +158,7 @@ public class SwfPanel extends BasePanel
                        });
                        add(new AbstractDefaultAjaxBehavior() {
                                private static final long serialVersionUID = 1L;
-       
+
                                @Override
                                protected void respond(AjaxRequestTarget 
target) {
                                        Client c = getClient(getPublicSid());
@@ -167,7 +167,7 @@ public class SwfPanel extends BasePanel
                                                pollResults.open(target);
                                        }
                                }
-                               
+
                                @Override
                                public void renderHead(Component component, 
IHeaderResponse response) {
                                        super.renderHead(component, response);
@@ -176,7 +176,7 @@ public class SwfPanel extends BasePanel
                        });
                        add(new AbstractDefaultAjaxBehavior() {
                                private static final long serialVersionUID = 1L;
-       
+
                                @Override
                                protected void respond(AjaxRequestTarget 
target) {
                                        if 
(getBean(PollDao.class).hasPoll(roomId) && 
!getBean(PollDao.class).hasVoted(roomId, getUserId()) && 
getClient(getPublicSid()) != null) {
@@ -184,7 +184,7 @@ public class SwfPanel extends BasePanel
                                                vote.open(target);
                                        }
                                }
-                               
+
                                @Override
                                public void renderHead(Component component, 
IHeaderResponse response) {
                                        super.renderHead(component, response);
@@ -193,12 +193,12 @@ public class SwfPanel extends BasePanel
                        });
                        add(new AbstractDefaultAjaxBehavior() {
                                private static final long serialVersionUID = 1L;
-       
+
                                @Override
                                protected void respond(AjaxRequestTarget 
target) {
                                        startSharing.respond(target);
                                }
-                               
+
                                @Override
                                public void renderHead(Component component, 
IHeaderResponse response) {
                                        super.renderHead(component, response);
@@ -216,7 +216,7 @@ public class SwfPanel extends BasePanel
                }
                return false;
        }
-       
+
        @Override
        public BasePanel onMenuPanelLoad(IPartialPageRequestHandler handler) {
                getBasePage().getHeader().setVisible(false);
@@ -228,11 +228,11 @@ public class SwfPanel extends BasePanel
                }
                return this;
        }
-       
+
        private static ResourceReference newResourceReference() {
                return new JavaScriptResourceReference(SwfPanel.class, 
"swf-functions.js");
        }
-       
+
        @Override
        public void renderHead(IHeaderResponse response) {
                super.renderHead(response);
@@ -298,7 +298,7 @@ public class SwfPanel extends BasePanel
        private static PageParameters addServer(PageParameters pp, Server s) {
                return pp.add("protocol", s.getProtocol()).add("host", 
s.getAddress()).add("port", s.getPort()).add("context", s.getWebapp());
        }
-       
+
        public static PageParameters addServer(Long roomId, boolean addBasic) {
                PageParameters pp = new PageParameters();
                if (addBasic) {

Modified: 
openmeetings/application/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/util/ProfileImageResourceReference.java
URL: 
http://svn.apache.org/viewvc/openmeetings/application/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/util/ProfileImageResourceReference.java?rev=1772150&r1=1772149&r2=1772150&view=diff
==============================================================================
--- 
openmeetings/application/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/util/ProfileImageResourceReference.java
 (original)
+++ 
openmeetings/application/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/util/ProfileImageResourceReference.java
 Thu Dec  1 08:14:19 2016
@@ -81,6 +81,9 @@ public class ProfileImageResourceReferen
                        protected ResourceResponse 
newResourceResponse(Attributes attributes) {
                                PageParameters params = 
attributes.getParameters();
                                userId = params.get("id").toOptionalLong();
+                               if (userId != null && userId.longValue() < 0) {
+                                       userId = -userId;
+                               }
                                uri = 
getBean(UserDao.class).get(userId).getPictureuri();
                                ResourceResponse rr = 
super.newResourceResponse(attributes);
                                rr.disableCaching();

Modified: 
openmeetings/application/branches/3.2.x/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/WhiteBoardService.java
URL: 
http://svn.apache.org/viewvc/openmeetings/application/branches/3.2.x/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/WhiteBoardService.java?rev=1772150&r1=1772149&r2=1772150&view=diff
==============================================================================
--- 
openmeetings/application/branches/3.2.x/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/WhiteBoardService.java
 (original)
+++ 
openmeetings/application/branches/3.2.x/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/WhiteBoardService.java
 Thu Dec  1 08:14:19 2016
@@ -18,6 +18,7 @@
  */
 package org.apache.openmeetings.core.remote;
 
+import static 
org.apache.openmeetings.util.OpenmeetingsVariables.CONFIG_DEFAULT_LANG_KEY;
 import static org.apache.openmeetings.util.OpenmeetingsVariables.webAppRootKey;
 
 import java.io.File;
@@ -34,6 +35,7 @@ import org.apache.commons.collections4.C
 import 
org.apache.openmeetings.core.data.whiteboard.WhiteBoardObjectListManagerById;
 import 
org.apache.openmeetings.core.data.whiteboard.WhiteBoardObjectSyncManager;
 import org.apache.openmeetings.core.remote.red5.ScopeApplicationAdapter;
+import org.apache.openmeetings.db.dao.basic.ConfigurationDao;
 import org.apache.openmeetings.db.dao.label.LabelDao;
 import org.apache.openmeetings.db.dao.server.ISessionManager;
 import org.apache.openmeetings.db.dao.server.SessiondataDao;
@@ -44,6 +46,7 @@ import org.apache.openmeetings.db.dto.ro
 import org.apache.openmeetings.db.dto.room.WhiteboardSyncLockObject;
 import org.apache.openmeetings.db.entity.room.Client;
 import org.apache.openmeetings.db.entity.server.Sessiondata;
+import org.apache.openmeetings.db.entity.user.User;
 import org.apache.openmeetings.db.util.AuthLevelUtil;
 import org.apache.openmeetings.util.OmFileHelper;
 import org.red5.logging.Red5LoggerFactory;
@@ -76,6 +79,8 @@ public class WhiteBoardService implement
        private SessiondataDao sessionDao;
        @Autowired
        private LabelDao labelDao;
+       @Autowired
+       private ConfigurationDao cfgDao;
 
        public boolean getNewWhiteboardId(String name) {
                try {
@@ -128,7 +133,16 @@ public class WhiteBoardService implement
                        WhiteboardObjectList whiteboardObjectList = 
wbListManagerById.getWhiteBoardObjectListByRoomId(roomId);
 
                        if (whiteboardObjectList.getWhiteboardObjects().size() 
== 0) {
-                               wbListManagerById.getNewWhiteboardId(roomId, 
labelDao.getString("615", 
userDao.get(currentClient.getUserId()).getLanguageId()));
+                               Long langId = null;
+                               {
+                                       Long userId = currentClient.getUserId();
+                                       if (userId != null && 
userId.longValue() < 0) {
+                                               userId = -userId;
+                                       }
+                                       User u = userDao.get(userId);
+                                       langId = u == null ? 
cfgDao.getConfValue(CONFIG_DEFAULT_LANG_KEY, Long.class, "1") : 
u.getLanguageId();
+                               }
+                               wbListManagerById.getNewWhiteboardId(roomId, 
labelDao.getString("615", langId));
                                log.debug("Init New Room List");
                                whiteboardObjectList = 
wbListManagerById.getWhiteBoardObjectListByRoomId(roomId);
                        }

Modified: 
openmeetings/application/trunk/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/WhiteBoardService.java
URL: 
http://svn.apache.org/viewvc/openmeetings/application/trunk/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/WhiteBoardService.java?rev=1772150&r1=1772149&r2=1772150&view=diff
==============================================================================
--- 
openmeetings/application/trunk/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/WhiteBoardService.java
 (original)
+++ 
openmeetings/application/trunk/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/WhiteBoardService.java
 Thu Dec  1 08:14:19 2016
@@ -18,6 +18,7 @@
  */
 package org.apache.openmeetings.core.remote;
 
+import static 
org.apache.openmeetings.util.OpenmeetingsVariables.CONFIG_DEFAULT_LANG_KEY;
 import static org.apache.openmeetings.util.OpenmeetingsVariables.webAppRootKey;
 
 import java.io.File;
@@ -34,6 +35,7 @@ import org.apache.commons.collections4.C
 import 
org.apache.openmeetings.core.data.whiteboard.WhiteBoardObjectListManagerById;
 import 
org.apache.openmeetings.core.data.whiteboard.WhiteBoardObjectSyncManager;
 import org.apache.openmeetings.core.remote.red5.ScopeApplicationAdapter;
+import org.apache.openmeetings.db.dao.basic.ConfigurationDao;
 import org.apache.openmeetings.db.dao.label.LabelDao;
 import org.apache.openmeetings.db.dao.server.ISessionManager;
 import org.apache.openmeetings.db.dao.server.SessiondataDao;
@@ -44,6 +46,7 @@ import org.apache.openmeetings.db.dto.ro
 import org.apache.openmeetings.db.dto.room.WhiteboardSyncLockObject;
 import org.apache.openmeetings.db.entity.room.Client;
 import org.apache.openmeetings.db.entity.server.Sessiondata;
+import org.apache.openmeetings.db.entity.user.User;
 import org.apache.openmeetings.db.util.AuthLevelUtil;
 import org.apache.openmeetings.util.OmFileHelper;
 import org.red5.logging.Red5LoggerFactory;
@@ -76,6 +79,8 @@ public class WhiteBoardService implement
        private SessiondataDao sessionDao;
        @Autowired
        private LabelDao labelDao;
+       @Autowired
+       private ConfigurationDao cfgDao;
 
        public boolean getNewWhiteboardId(String name) {
                try {
@@ -128,7 +133,16 @@ public class WhiteBoardService implement
                        WhiteboardObjectList whiteboardObjectList = 
wbListManagerById.getWhiteBoardObjectListByRoomId(roomId);
 
                        if (whiteboardObjectList.getWhiteboardObjects().size() 
== 0) {
-                               wbListManagerById.getNewWhiteboardId(roomId, 
labelDao.getString("615", 
userDao.get(currentClient.getUserId()).getLanguageId()));
+                               Long langId = null;
+                               {
+                                       Long userId = currentClient.getUserId();
+                                       if (userId != null && 
userId.longValue() < 0) {
+                                               userId = -userId;
+                                       }
+                                       User u = userDao.get(userId);
+                                       langId = u == null ? 
cfgDao.getConfValue(CONFIG_DEFAULT_LANG_KEY, Long.class, "1") : 
u.getLanguageId();
+                               }
+                               wbListManagerById.getNewWhiteboardId(roomId, 
labelDao.getString("615", langId));
                                log.debug("Init New Room List");
                                whiteboardObjectList = 
wbListManagerById.getWhiteBoardObjectListByRoomId(roomId);
                        }


Reply via email to