Author: seba.wagner
Date: Wed Jan 28 09:07:15 2009
New Revision: 1860

Added:
     
trunk/openmeetings_lps411/modules/conference/participents/resources/color_line_dis.fla
    
(contents, props changed)
     
trunk/openmeetings_lps411/modules/conference/participents/resources/color_line_dis.png
    
(contents, props changed)
     
trunk/openmeetings_lps411/modules/conference/participents/resources/decrypted.png
    
(contents, props changed)
     
trunk/openmeetings_lps411/modules/conference/participents/resources/encrypted.png
    
(contents, props changed)
     
trunk/openmeetings_lps411/modules/conference/participents/resources/kdmconfig.png
    
(contents, props changed)
Modified:
    trunk/openmeetings_lps411/base/functions.lzx
    trunk/openmeetings_lps411/base/hibernate/hibRtmpConnection.lzx
    trunk/openmeetings_lps411/base/mainAttributes.lzx
    trunk/openmeetings_lps411/base/mainMethods.lzx
    trunk/openmeetings_lps411/base/navi/navifunctions.lzx
    trunk/openmeetings_lps411/maindebug.lzx.lzr=swf8.swf
    trunk/openmeetings_lps411/modules/conference/participents/library.lzx
     
trunk/openmeetings_lps411/modules/conference/participents/participents.lzx

Log:
Fixes:
Issue 601 Add Moderated Room
=> If a user has no webcam (did choose NO devise from the drop down menu)  
there will be shown no Video-Pod with User-Image => instead there is a list  
of participents
=> on this list you can see => who is moderator, who has the right to draw  
to whiteboard, you can re-start you audio/video again, so in case you have  
chosen NO device => your video pod will pop-up again
=> as a moderator you have additional buttons to add / remove the right to  
draw on whiteboard

Modified: trunk/openmeetings_lps411/base/functions.lzx
==============================================================================
--- trunk/openmeetings_lps411/base/functions.lzx        (original)
+++ trunk/openmeetings_lps411/base/functions.lzx        Wed Jan 28 09:07:15 2009
@@ -276,221 +276,5 @@

  ]]>
  </script>
-
-
-
-
-<dataset type="http" name="languageData" request="false"
-       src="${ canvas.currentlanguage+'.xml' }" proxied="false">
-       <handler name="ondata" args="value">
-               parent.parseLanugageObject(value);
-       </handler>
-</dataset>
-
-<method name="parseLanugageObject" args="obj">
-
-       ////Debug.write('parseLanugageObject: ',obj);
-       ////Debug.write('parseLanugageObject: ',obj.childNodes);
-       <![CDATA[
-       var t = new Array();
-       for (var i=0;i<obj.childNodes.length;i++){
-               for (var k=0;k<obj.childNodes[i].childNodes.length;k++){
-                       ////Debug.write(obj.childNodes[i].childNodes[k]);
-                       var t2 = new Array();
-                        
t2[obj.childNodes[i].childNodes[k].childNodes[0].nodeName]=obj.childNodes[i].childNodes[k].childNodes[0].childNodes[0].data;
-                        
t2[obj.childNodes[i].childNodes[k].childNodes[1].nodeName]=obj.childNodes[i].childNodes[k].childNodes[1].childNodes[0].data;
-                       t.push(t2);
-               }
-       }
-       setLabelObject(t);
-       canvas.initScreen();
-       //Debug.write(t);
-       ]]>
-</method>
-
-<!-- Data Source Definition -->
-<dataset name="getSessionVarsData" request="false" proxied="false"
-       querytype="POST"  
src="${ 'http://'+canvas.rtmphost+'/webrooms/checksession.php' }"
-       type="http" >
-       <handler name="ondata" args="value">
-       
-               //Debug.write(value);
-                
canvas.setAttribute('currentcourse',value.childNodes[0].childNodes[0].childNodes[0].childNodes[0].data);
-               canvas.setAttribute('currentcourseName',canvas.currentcourse);
-                
canvas.setAttribute('currentcourseNameLong',value.childNodes[0].childNodes[0].childNodes[1].childNodes[0].data);
-                
canvas.setAttribute('currentlanguage',value.childNodes[0].childNodes[0].childNodes[8].childNodes[0].data);
-
-                
canvas.setAttribute('currentusename',value.childNodes[0].childNodes[1].childNodes[2].childNodes[0].data+'
 '+value.childNodes[0].childNodes[1].childNodes[1].childNodes[0].data);
-               
-                
canvas.setAttribute('user_id',value.childNodes[0].childNodes[1].childNodes[0].childNodes[0].data);
-                
canvas.setAttribute('firstName',value.childNodes[0].childNodes[1].childNodes[1].childNodes[0].data);
-                
canvas.setAttribute('lastName',value.childNodes[0].childNodes[1].childNodes[2].childNodes[0].data);
-                
canvas.setAttribute('mail',value.childNodes[0].childNodes[1].childNodes[3].childNodes[0].data);
-               canvas.setAttribute('lastLogin','');
-                
canvas.setAttribute('official_code',value.childNodes[0].childNodes[1].childNodes[5].childNodes[0].data);
-               canvas.setAttribute('picture_uri','');
-                
canvas.setAttribute('language',value.childNodes[0].childNodes[1].childNodes[7].childNodes[0].data);
-
-                
//Debug.write(value.childNodes[0].childNodes[1].childNodes[0].childNodes[0].data);
-                
//Debug.write(value.childNodes[0].childNodes[1].childNodes[1].childNodes[0].data);
-                
//Debug.write(value.childNodes[0].childNodes[1].childNodes[2].childNodes[0].data);
-                
//Debug.write(value.childNodes[0].childNodes[1].childNodes[3].childNodes[0].data);
-                
//Debug.write(value.childNodes[0].childNodes[1].childNodes[4].childNodes[0].data);
-                
//Debug.write(value.childNodes[0].childNodes[1].childNodes[5].childNodes[0].data);
-                
//Debug.write(value.childNodes[0].childNodes[1].childNodes[6].childNodes[0].data);
-                
//Debug.write(value.childNodes[0].childNodes[1].childNodes[7].childNodes[0].data);
-               
-               switch (canvas.currentlanguage){
-                       case 'english':
-                       break;
-                       case 'german':
-                       break;
-                       case 'french':
-                       break;                  
-                       default:
-                       canvas.setAttribute('currentlanguage','english');
-                       break;
-               }
-               
-               var addIt='conf';
-               if (!canvas.isConference){
-                       addIt='meet'
-               }
-                
canvas.setAttribute('currentcourse',canvas.rtmphost+canvas.currentcourse+addIt);
-                
canvas.setAttribute('currentuser',value.childNodes[0].childNodes[1].childNodes[5].childNodes[0].data);
-               
-               canvas.setAttribute('loadingmessage','loading language data');
-               canvas.languageData.doRequest();
-       </handler>
-</dataset>
-
-
-<method name="getSessionVars" args="">
-       canvas.setAttribute('loadingmessage','loading session data');
-       var d=getSessionVarsData;
-       d.doRequest();
-</method>
-
-
-<method name="addBroswerTabHistory" args="value">
-       <![CDATA[
-       //Debug.write("addBroswerTabHistory: ",value);
-       _browserhistory.addItem(value);
-       this.browserTabHistory.push(value);
-       ]]>
-</method>
-
-
-
-<method name="setModeratorName" args="mod">
-       <![CDATA[
-       this.moderatorName = mod;
-        
canvas._mymod.mymodText.setAttribute('text',canvas.getLabelName(98)+' 
'+this.moderatorName);
-       if ($debug) Debug.write("canvas.moderatorStreamID==canvas.streamid",
-                            (canvas.moderatorStreamID==canvas.streamid),
-                            canvas.moderatorStreamID,canvas.streamid);
-       if (canvas.moderatorStreamID==canvas.streamid){
-               this.setAttribute('ismoderator',true);
-       } else {
-               this.setAttribute('ismoderator',false);
-       }
-       ]]>
-</method>
-
-<method name="addFolderSequence" args="foldername">
-       <![CDATA[
-       this.uploadmoduleimgfolder = '/';
-       this.uploadmoduleimgfolder += foldername;
-       this.setAttribute('uploadmoduleimgfolder',this.uploadmoduleimgfolder);
-       ]]>
-</method>
-       
-       
-<!-- country validation -->
-<method name="validateCountry" args="str">
-       ////Debug.write("validateCountry: ",str);
-    str = str.toLowerCase();
-       <![CDATA[
-               if (str.length!=0){
-                       var a = new Array();
-                       for (var i=0;i<canvas.statesInitValues.length;i++){
-                var st = canvas.statesInitValues[i].name.toLowerCase();
-                               if 
(st.startsWith(str))a.push(canvas.statesInitValues[i]);
-                                
//this.addItem(canvas.statesInitValues[i].name,canvas.statesInitValues[i].state_id);
-                       }
-                       return a;
-               }
-       ]]>     
-</method>
-
-<method name="getCountryRecord" args="id">
-    return canvas.statesInitValues[id];
-</method>
-
-<handler name="onmousewheeldelta" reference="lz.Keys" args="d">
-    var obj = getCurrentMouseWheelObject();
-    ////Debug.write("onmousewheeldelta 12: ",d,obj);
-    <![CDATA[
-        if (obj!=null) {
-            obj.step(-d);
-        }
-    ]]>
-</handler>
-
-<method name="reverseWordingsBySplit" args="str">
-    <![CDATA[
-        var words_arr = str.split( " " ); // an array of chars
-        for ( var i = 0, str = ""; i < words_arr.length; i++ ) // reverse  
their order
-        {
-            str += words_arr[ words_arr.length - i - 1 ];
-            if (words_arr.length != 1) {
-                str += " ";
-            }
-        }
-        return str;
-    ]]>
-</method>
-
-<method name="reverseWords" args="str">
-    <![CDATA[
-        if ( str == "" || str == null ) return ""; // undefined
-        // first char indicates the main directive of str (rtl/ltr)
-        if ( isLTR( str.charCodeAt( 0 ) ) ) return str; // english or  
number
-        var words_arr = str.split( "" ); // an array of chars
-        for ( var i = 0, str = ""; i < words_arr.length; i++ ) // reverse  
their order
-            str += words_arr[ words_arr.length - i - 1 ];
-        return str;
-    ]]>
-</method>
-
-<method name="isLTR" args="c">
-    <![CDATA[
-        return ( c >= 48 && c <= 57 || c >= 65 && c <= 90 || c >= 97 && c  
<= 122 );
-    ]]>
-</method>
-
-<method name="isHEB" args="c">
-    <![CDATA[
-        return ( c >= 224 && c <= 250 );
-    ]]>
-</method>
-
-<method name="setTextAlign" args="obj,type">
-    switch ( type ) {
-        case "left" :
-            obj.setX( 0 );
-        break;
-        case "center" :
-            obj.setX( this.parent.width / 2 - this.getTextWidth() / 2 );
-        break;
-        case "right" :
-            obj.setX( this.parent.width - this.getTextWidth() );
-        break;
-    }
-</method>
-
-<!--
-
- -->
                
  </library>

Modified: trunk/openmeetings_lps411/base/hibernate/hibRtmpConnection.lzx
==============================================================================
--- trunk/openmeetings_lps411/base/hibernate/hibRtmpConnection.lzx       
(original)
+++ trunk/openmeetings_lps411/base/hibernate/hibRtmpConnection.lzx      Wed Jan 
 
28 09:07:15 2009
@@ -706,6 +706,10 @@
                                            //Debug.write("syncinitLoader  
sendVarsToMessageWithClient: ",value.message[2]);
                                                if 
(value.client.streamid!=canvas.streamid)  
canvas._drawarea.remoteSyncLoader();
                                        }
+                } else if (value.message[0]=='updateDrawStatus'){
+                     
canvas.setAttribute("drawAllowStatus",value.message[1]);
+                } else {
+                    if ($debug) Debug.write("sendVarsToMessageWithClient  
unkown message ",value);
                  }
                  ]]>
              </handler>

Modified: trunk/openmeetings_lps411/base/mainAttributes.lzx
==============================================================================
--- trunk/openmeetings_lps411/base/mainAttributes.lzx   (original)
+++ trunk/openmeetings_lps411/base/mainAttributes.lzx   Wed Jan 28 09:07:15  
2009
@@ -75,7 +75,14 @@
  <attribute name="userHistory" value="null" />
  <attribute name="browserTabHistory" value="null" />

+<!-- this attribute holds an object of type RoomClient
+ the LAST RoomClient Object that has been changed the drawstatus
+ so ondrawAllowStatus = will trigger that the draw-status of ANYBODY has  
changed
+ and canvas.drawAllowStatus = is the RoomClient that has changed
+ and canvas.drawAllowStatus.canDraw = is the new Status of that RoomClient
+ -->

+<attribute name="drawAllowStatus" value="null"/>

  <!--- URL/IP to use for the Server -->
  <attribute name="rtmphost" value="" type="string" />

Modified: trunk/openmeetings_lps411/base/mainMethods.lzx
==============================================================================
--- trunk/openmeetings_lps411/base/mainMethods.lzx      (original)
+++ trunk/openmeetings_lps411/base/mainMethods.lzx      Wed Jan 28 09:07:15 2009
@@ -3,6 +3,24 @@
  <!-- methods for main.lzx -->

  <library>
+
+    <command id="cmd_applyforMod"  
onselect="canvas.doActionmenu('applyForMod')" key="['ALT','Shift','M']"/>
+    <command id="cmd_createPoll"  
onselect="canvas.doActionmenu('createPoll')" key="['ALT','Shift','P']"/>
+    <command id="cmd_pollResults"  
onselect="canvas.doActionmenu('pollResults')" key="['ALT','Shift','R']"/>
+    <command id="cmd_checkPollVoted"  
onselect="canvas.doActionmenu('checkPollVoted')" key="['ALT','Shift','V']"/>
+    <command id="cmd_importFile"  
onselect="canvas.doActionmenu('importFile')" key="['ALT','Shift','I']"/>
+    <command id="cmd_editCamMicSettings"  
onselect="canvas.doActionmenu('editCamMicSettings')"  
key="['ALT','Shift','1']"/>
+    <command id="cmd_editBoardSettings"  
onselect="canvas.doActionmenu('editBoardSettings')"  
key="['ALT','Shift','2']"/>
+    <command id="cmd_quit" onselect="canvas.doActionmenu('quit')"  
key="['ALT','Shift','E']"/>
+    <command id="cmd_browser_open"  
onselect="canvas.doActionmenu('browser_open')" key="['ALT','Shift','B']"/>
+    <command id="cmd_browser_close"  
onselect="canvas.doActionmenu('browser_close')" key="['ALT','Shift','b']"/>
+       
+       <dataset type="http" name="languageData" request="false"
+           src="${ canvas.currentlanguage+'.xml' }" proxied="false">
+           <handler name="ondata" args="value">
+               parent.parseLanugageObject(value);
+           </handler>
+       </dataset>

        <method name="openMeetingsMenuItemHandler">
             
lz.Browser.loadURL("http://code.google.com/p/openmeetings/";, "Openmeetings  
Homepage");
@@ -246,15 +264,212 @@
        </method>
                        
        
-       <command id="cmd_applyforMod"  
onselect="canvas.doActionmenu('applyForMod')" key="['ALT','Shift','M']"/>
-       <command id="cmd_createPoll" 
onselect="canvas.doActionmenu('createPoll')"  
key="['ALT','Shift','P']"/>
-       <command id="cmd_pollResults"  
onselect="canvas.doActionmenu('pollResults')" key="['ALT','Shift','R']"/>
-       <command id="cmd_checkPollVoted"  
onselect="canvas.doActionmenu('checkPollVoted')" key="['ALT','Shift','V']"/>
-       <command id="cmd_importFile" 
onselect="canvas.doActionmenu('importFile')"  
key="['ALT','Shift','I']"/>
-       <command id="cmd_editCamMicSettings"  
onselect="canvas.doActionmenu('editCamMicSettings')"  
key="['ALT','Shift','1']"/>
-       <command id="cmd_editBoardSettings"  
onselect="canvas.doActionmenu('editBoardSettings')"  
key="['ALT','Shift','2']"/>
-       <command id="cmd_quit" onselect="canvas.doActionmenu('quit')"  
key="['ALT','Shift','E']"/>
-       <command id="cmd_browser_open"  
onselect="canvas.doActionmenu('browser_open')" key="['ALT','Shift','B']"/>
-       <command id="cmd_browser_close"  
onselect="canvas.doActionmenu('browser_close')" key="['ALT','Shift','b']"/>
+
+
+<method name="parseLanugageObject" args="obj">
+
+    ////Debug.write('parseLanugageObject: ',obj);
+    ////Debug.write('parseLanugageObject: ',obj.childNodes);
+    <![CDATA[
+    var t = new Array();
+    for (var i=0;i<obj.childNodes.length;i++){
+        for (var k=0;k<obj.childNodes[i].childNodes.length;k++){
+            ////Debug.write(obj.childNodes[i].childNodes[k]);
+            var t2 = new Array();
+             
t2[obj.childNodes[i].childNodes[k].childNodes[0].nodeName]=obj.childNodes[i].childNodes[k].childNodes[0].childNodes[0].data;
+             
t2[obj.childNodes[i].childNodes[k].childNodes[1].nodeName]=obj.childNodes[i].childNodes[k].childNodes[1].childNodes[0].data;
+            t.push(t2);
+        }
+    }
+    setLabelObject(t);
+    canvas.initScreen();
+    //Debug.write(t);
+    ]]>
+</method>
+
+<!-- Data Source Definition -->
+<dataset name="getSessionVarsData" request="false" proxied="false"
+    querytype="POST"  
src="${ 'http://'+canvas.rtmphost+'/webrooms/checksession.php' }"
+    type="http" >
+    <handler name="ondata" args="value">
+
+        //Debug.write(value);
+         
canvas.setAttribute('currentcourse',value.childNodes[0].childNodes[0].childNodes[0].childNodes[0].data);
+        canvas.setAttribute('currentcourseName',canvas.currentcourse);
+         
canvas.setAttribute('currentcourseNameLong',value.childNodes[0].childNodes[0].childNodes[1].childNodes[0].data);
+         
canvas.setAttribute('currentlanguage',value.childNodes[0].childNodes[0].childNodes[8].childNodes[0].data);
+
+         
canvas.setAttribute('currentusename',value.childNodes[0].childNodes[1].childNodes[2].childNodes[0].data+'
 '+value.childNodes[0].childNodes[1].childNodes[1].childNodes[0].data);
+
+         
canvas.setAttribute('user_id',value.childNodes[0].childNodes[1].childNodes[0].childNodes[0].data);
+         
canvas.setAttribute('firstName',value.childNodes[0].childNodes[1].childNodes[1].childNodes[0].data);
+         
canvas.setAttribute('lastName',value.childNodes[0].childNodes[1].childNodes[2].childNodes[0].data);
+         
canvas.setAttribute('mail',value.childNodes[0].childNodes[1].childNodes[3].childNodes[0].data);
+        canvas.setAttribute('lastLogin','');
+         
canvas.setAttribute('official_code',value.childNodes[0].childNodes[1].childNodes[5].childNodes[0].data);
+        canvas.setAttribute('picture_uri','');
+         
canvas.setAttribute('language',value.childNodes[0].childNodes[1].childNodes[7].childNodes[0].data);
+
+         
//Debug.write(value.childNodes[0].childNodes[1].childNodes[0].childNodes[0].data);
+         
//Debug.write(value.childNodes[0].childNodes[1].childNodes[1].childNodes[0].data);
+         
//Debug.write(value.childNodes[0].childNodes[1].childNodes[2].childNodes[0].data);
+         
//Debug.write(value.childNodes[0].childNodes[1].childNodes[3].childNodes[0].data);
+         
//Debug.write(value.childNodes[0].childNodes[1].childNodes[4].childNodes[0].data);
+         
//Debug.write(value.childNodes[0].childNodes[1].childNodes[5].childNodes[0].data);
+         
//Debug.write(value.childNodes[0].childNodes[1].childNodes[6].childNodes[0].data);
+         
//Debug.write(value.childNodes[0].childNodes[1].childNodes[7].childNodes[0].data);
+
+        switch (canvas.currentlanguage){
+            case 'english':
+            break;
+            case 'german':
+            break;
+            case 'french':
+            break;
+            default:
+            canvas.setAttribute('currentlanguage','english');
+            break;
+        }
+
+        var addIt='conf';
+        if (!canvas.isConference){
+            addIt='meet'
+        }
+         
canvas.setAttribute('currentcourse',canvas.rtmphost+canvas.currentcourse+addIt);
+         
canvas.setAttribute('currentuser',value.childNodes[0].childNodes[1].childNodes[5].childNodes[0].data);
+
+        canvas.setAttribute('loadingmessage','loading language data');
+        canvas.languageData.doRequest();
+    </handler>
+</dataset>
+
+
+<method name="getSessionVars" args="">
+    canvas.setAttribute('loadingmessage','loading session data');
+    var d=getSessionVarsData;
+    d.doRequest();
+</method>
+
+
+<method name="addBroswerTabHistory" args="value">
+    <![CDATA[
+    //Debug.write("addBroswerTabHistory: ",value);
+    _browserhistory.addItem(value);
+    this.browserTabHistory.push(value);
+    ]]>
+</method>
+
+
+
+<method name="setModeratorName" args="mod">
+    <![CDATA[
+    this.moderatorName = mod;
+     
canvas._mymod.mymodText.setAttribute('text',canvas.getLabelName(98)+' 
'+this.moderatorName);
+    if ($debug) Debug.write("canvas.moderatorStreamID==canvas.streamid",
+                            (canvas.moderatorStreamID==canvas.streamid),
+                            canvas.moderatorStreamID,canvas.streamid);
+    if (canvas.moderatorStreamID==canvas.streamid){
+        this.setAttribute('ismoderator',true);
+    } else {
+        this.setAttribute('ismoderator',false);
+    }
+    ]]>
+</method>
+
+<handler name="onismoderator">
+    if ($debug) Debug.write("ismoderator ###### ");
+</handler>
+
+<method name="addFolderSequence" args="foldername">
+    <![CDATA[
+    this.uploadmoduleimgfolder = '/';
+    this.uploadmoduleimgfolder += foldername;
+    this.setAttribute('uploadmoduleimgfolder',this.uploadmoduleimgfolder);
+    ]]>
+</method>
+
+
+<!-- country validation -->
+<method name="validateCountry" args="str">
+    ////Debug.write("validateCountry: ",str);
+    str = str.toLowerCase();
+    <![CDATA[
+        if (str.length!=0){
+            var a = new Array();
+            for (var i=0;i<canvas.statesInitValues.length;i++){
+                var st = canvas.statesInitValues[i].name.toLowerCase();
+                if (st.startsWith(str))a.push(canvas.statesInitValues[i]);
+                 
//this.addItem(canvas.statesInitValues[i].name,canvas.statesInitValues[i].state_id);
+            }
+            return a;
+        }
+    ]]>
+</method>
+
+<method name="getCountryRecord" args="id">
+    return canvas.statesInitValues[id];
+</method>
+
+<handler name="onmousewheeldelta" reference="lz.Keys" args="d">
+    var obj = getCurrentMouseWheelObject();
+    ////Debug.write("onmousewheeldelta 12: ",d,obj);
+    <![CDATA[
+        if (obj!=null) {
+            obj.step(-d);
+        }
+    ]]>
+</handler>
+
+<method name="reverseWordingsBySplit" args="str">
+    <![CDATA[
+        var words_arr = str.split( " " ); // an array of chars
+        for ( var i = 0, str = ""; i < words_arr.length; i++ ) // reverse  
their order
+        {
+            str += words_arr[ words_arr.length - i - 1 ];
+            if (words_arr.length != 1) {
+                str += " ";
+            }
+        }
+        return str;
+    ]]>
+</method>
+
+<method name="reverseWords" args="str">
+    <![CDATA[
+        if ( str == "" || str == null ) return ""; // undefined
+        // first char indicates the main directive of str (rtl/ltr)
+        if ( isLTR( str.charCodeAt( 0 ) ) ) return str; // english or  
number
+        var words_arr = str.split( "" ); // an array of chars
+        for ( var i = 0, str = ""; i < words_arr.length; i++ ) // reverse  
their order
+            str += words_arr[ words_arr.length - i - 1 ];
+        return str;
+    ]]>
+</method>
+
+<method name="isLTR" args="c">
+    <![CDATA[
+        return ( c >= 48 && c <= 57 || c >= 65 && c <= 90 || c >= 97 && c  
<= 122 );
+    ]]>
+</method>
+
+<method name="isHEB" args="c">
+    <![CDATA[
+        return ( c >= 224 && c <= 250 );
+    ]]>
+</method>
+
+<method name="setTextAlign" args="obj,type">
+    switch ( type ) {
+        case "left" :
+            obj.setX( 0 );
+        break;
+        case "center" :
+            obj.setX( this.parent.width / 2 - this.getTextWidth() / 2 );
+        break;
+        case "right" :
+            obj.setX( this.parent.width - this.getTextWidth() );
+        break;
+    }
+</method>

  </library>

Modified: trunk/openmeetings_lps411/base/navi/navifunctions.lzx
==============================================================================
--- trunk/openmeetings_lps411/base/navi/navifunctions.lzx       (original)
+++ trunk/openmeetings_lps411/base/navi/navifunctions.lzx       Wed Jan 28  
09:07:15 2009
@@ -1,6 +1,13 @@
  <?xml version="1.0" encoding="UTF-8" ?>
  <library>

+<!--
+
+    @keywords deprecated => moved everything to ../functions.lzx
+
+    THIS CLASS WILL BE DELETED
+
+ -->
  <script>
  <![CDATA[
  var labelObj;

Modified: trunk/openmeetings_lps411/maindebug.lzx.lzr=swf8.swf
==============================================================================
Binary files. No diff available.

Modified:  
trunk/openmeetings_lps411/modules/conference/participents/library.lzx
==============================================================================
--- trunk/openmeetings_lps411/modules/conference/participents/library.lzx       
 
(original)
+++ trunk/openmeetings_lps411/modules/conference/participents/library.lzx       
 
Wed Jan 28 09:07:15 2009
@@ -1,8 +1,11 @@
  <?xml version="1.0" encoding="UTF-8" ?>
  <library>

-    <resource name="participents_isMod_rsc" src="resources/button_ok.png"  
/>
-    <resource name="participents_isAllowedDrawing_rsc"  
src="resources/color_line.png" />
+    <resource name="participents_isactive" src="resources/button_ok.png" />
+
+    <resource name="participents_isMod_rsc" src="resources/kdmconfig.png"  
/>
+    <resource name="participents_isDrawing_rsc"  
src="resources/color_line.png" />
+

      <include href="participents.lzx" />


Modified:  
trunk/openmeetings_lps411/modules/conference/participents/participents.lzx
==============================================================================
---  
trunk/openmeetings_lps411/modules/conference/participents/participents.lzx      
 
(original)
+++  
trunk/openmeetings_lps411/modules/conference/participents/participents.lzx      
 
Wed Jan 28 09:07:15 2009
@@ -9,18 +9,17 @@
          x="1" y="1" bgcolor="white" />

      <method name="addItem" args="object">
-        //Debug.write(object);
+        if ($debug) Debug.write("participentList  
addItem: ",object,object.publicSID);
          new lz.participentListItem(this._table.innerList,{
                    user_id:object.user_id,
                    firstname:object.firstname,
                    lastname:object.lastname,
-                width:this.width-20,
+                width:this.width-18,
                    refObj:object,
                    connectedSince:object.connectedSince,
                    isMod:object.isMod,
                    streamid:object.streamid,
                    username:object.username,
-                   userroom:object.userroom,
                    formatedDate:object.formatedDate
              });
      </method>
@@ -29,14 +28,70 @@
          this._table.destroy();
          new lz.participentsTable(this,{name:'_table'});
      </method>
+
+    <!--- get a Objects List Item
+        @param string publicSID publicSID
+     -->
+    <method name="getVideoObjectByPublicSID" args="publicSID">
+        <![CDATA[
+            //if ($debug) Debug.write("getVideoObjectByPublicSid  
SEARCH: ",publicSID);
+
+            //for (var i=0;i<this._videoviewcontent.subviews.length;i++){
+            //  if ($debug) Debug.write("getVideoObjectByBroadCastId6  
broadcastId: ",this._videoviewcontent.subviews[i].broadcastId);
+            //  if ($debug) Debug.write("getVideoObjectByBroadCastId7  
streamid,user_id: 
",this._videoviewcontent.subviews[i].clientVars.streamid,this._videoviewcontent.subviews[i].clientVars.user_id);
+            //}
+
+            for (var i=0;i<this._table.innerList.subviews.length;i++){
+                //if ($debug) Debug.write("getVideoObjectByBroadCastId2  
broadcastId VIEW: ",this._videoviewcontent.subviews[i].broadcastId);
+                //if ($debug) Debug.write("getVideoObjectByBroadCastId3  
broadcastId SEARCH: ",broadcastId);
+                //if ($debug) Debug.write("getVideoObjectByBroadCastId4  
obj: ",this._videoviewcontent.subviews[i]);
+                //if ($debug) Debug.write("getVideoObjectByBroadCastId5  
streamid,user_id: 
",this._videoviewcontent.subviews[i].clientVars.streamid,this._videoviewcontent.subviews[i].clientVars.user_id);
+                if  
(this._table.innerList.subviews[i].refObj.publicSID==publicSID){
+                    return this._table.innerList.subviews[i];
+                }
+            }
+
+            return null;
+
+        ]]>
+    </method>
+
+    <participentsTable name="_table" y="20" />

-    <usersTable name="_table" />
-
+    <view name="_miniIcons" x="192" y="0" height="18">
+
+        <view width="1" height="$once{ parent.parent.height }" x="0"
+            bgcolor="$once{ canvas.basebgcolorizer }" />
+        <view name="_icon_mod" x="2" y="3"  
resource="participents_isMod_rsc" onclick="" showhandcursor="false">
+            <labelTooltip labelid="608" />
+        </view>
+
+        <view width="1" height="$once{ parent.parent.height }" x="20"
+            bgcolor="$once{ canvas.basebgcolorizer }" />
+        <view name="_icon_draw" x="22" y="3"  
resource="participents_isDrawing_rsc" onclick="" showhandcursor="false">
+            <labelTooltip labelid="609" />
+        </view>
+
+        <view width="1" height="$once{ parent.parent.height }" x="40"
+            bgcolor="$once{ canvas.basebgcolorizer }" />
+        <view name="_icon_sync" x="42" y="3" resource="resyncuser_rsc"  
onclick="" showhandcursor="false">
+            <labelTooltip labelid="610" />
+        </view>
+
+        <view width="1" height="$once{ parent.parent.height }" x="60"
+            bgcolor="$once{ canvas.basebgcolorizer }" />
+    </view>
+    <view name="headerDivisionLine" width="$once{ parent.width }"
+          bgcolor="$once{ canvas.basebgcolorizer }" height="1" y="20" />
+
  </class>

-<class name="participentsTable" extends="view" height="$once{  
parent.height-4 }"
+<class name="innerlistViewParticipentsTable" extends="view"  
layout="axis:y;spacing:0"
+    width="258" bgcolor="$once{ canvas.basebgcolorizer }" />
+
+<class name="participentsTable" extends="view" height="$once{  
parent.height-24 }"
      bgcolor="white" x="2" y="2" clip="true" width="$once{ parent.width-4  
}" >
-        <innerlistView name="innerList" />
+        <innerlistViewParticipentsTable name="innerList" />
      <vscrollbar />
  </class>

@@ -52,7 +107,8 @@
  <!--
      The Width of each item is set in the participentList-Class
   -->
-<class name="participentListItem" extends="text" bgcolor="white"  
showhandcursor="false">
+<class name="participentListItem" extends="view" bgcolor="white"  
height="40"
+       showhandcursor="false">

      <attribute name="connectedSince" value="" type="string" />
      <attribute name="isMod" value="" type="string" />
@@ -74,21 +130,117 @@
                      +'&sid='+canvas.sessionId;
              this._userpic.setAttribute('src',downloadurl);

+            this.updateIcons();
+        ]]>
+    </handler>
+
+    <handler name="onismoderator" reference="canvas" args="m">
+        if ($debug) Debug.write("###### ismoderator ");
+        <![CDATA[
+
+            if (canvas.moderatorStreamID == this.refObj.streamid) {
+                this.isMod = true;
+            } else {
+                this.isMod = false;
+            }
+
+            this.updateIcons();
+
+        ]]>
+    </handler>
+
+    <handler name="ondrawAllowStatus" reference="canvas" args="drawObject">
+        <![CDATA[
+            if (this.refObj.publicSID == drawObject.publicSID) {
+                this.refObj.canDraw = drawObject.canDraw;
+                this.updateIcons();
+            }
+        ]]>
+    </handler>
+
+    <!--
+        Set actions to update the User-Rights and Information what he can  
do
+     -->
+    <method name="updateIcons">
+        <![CDATA[
+
+            if ($debug)  
Debug.write("updateByMod,",m,this.isMod,canvas.streamid,canvas.moderatorStreamID);
+
+            //If this is the Mod he can also draw on the Whitboard
              if (this.isMod) {
                   
this._miniIcons._isMod.setAttribute("visibility","visible");
+                 
this._miniIcons._canDraw.setAttribute("visibility","visible");
+                //the moderator can never remove the right to draw on the  
whiteboard for himself
+                 
this._miniIcons._canDraw.setAttribute("showhandcursor",false);
+                this._miniIcons._canDraw._text.setAttribute("text","");
+                 
this._miniIcons._canDrawModerator.setAttribute("visibility","hidden");
              } else {
                  this._miniIcons._isMod.setAttribute("visibility","hidden");
+
+                //if this User is the Moderator he can grant access to  
whiteboard to anybody
+                if (canvas.ismoderator) {
+
+                    if (this.refObj.canDraw) {
+
+                        //Only in THIS case you can remove the  
Draw-to-whiteboard right
+                         
this._miniIcons._canDraw.setAttribute("visibility","visible");
+                         
this._miniIcons._canDraw.setAttribute("showhandcursor",true);
+                         
this._miniIcons._canDraw._text.setAttribute("text",canvas.getLabelName(612));
+
+                         
this._miniIcons._canDrawModerator.setAttribute("visibility","hidden");
+
+                    } else {
+                         
this._miniIcons._canDraw.setAttribute("visibility","hidden");
+                         
this._miniIcons._canDraw.setAttribute("showhandcursor",false);
+                         
this._miniIcons._canDraw._text.setAttribute("text","");
+                         
this._miniIcons._canDrawModerator.setAttribute("visibility","visible");
+                    }
+
+                } else {
+
+                    if (this.refObj.canDraw) {
+                            
this._miniIcons._canDraw.setAttribute("visibility","visible");
+                       } else {
+                            
this._miniIcons._canDraw.setAttribute("visibility","hidden");
+                    }
+
+                    //No Update action available
+                     
this._miniIcons._canDrawModerator.setAttribute("visibility","hidden");
+                     
this._miniIcons._canDraw.setAttribute("showhandcursor",false);
+                    this._miniIcons._canDraw._text.setAttribute("text","");
+
+                }
+
              }

+            //this Icon is only available in case its the current User
              if (canvas.publicSID == this.refObj.publicSID) {
-                 
this._miniIconsActions._restartDevice.setAttribute("visibility","visible");
+                if ($debug) Debug.write("IS SELF !!!!!!");
+                 
this._miniIcons._restartDevice.setAttribute("visibility","visible");
              } else {
-                 
this._miniIconsActions._restartDevice.setAttribute("visibility","hidden");
+                 
this._miniIcons._restartDevice.setAttribute("visibility","hidden");
              }
-
-            this._miniIcons._canDraw.setAttribute("visibility","hidden");
          ]]>
-    </handler>
+    </method>
+
+    <!--
+    public Boolean setCanDraw(String SID, String publicSID, boolean  
canDraw)
+     -->
+
+    <netRemoteCallHib name="setCanDraw"  
funcname="whiteboardservice.setCanDraw"
+                       remotecontext="$once{ canvas.thishib }">
+        <netparam><method name="getValue"> return  
canvas.sessionId;</method></netparam>
+        <netparam><method name="getValue">return  
parent.parent.refObj.publicSID;</method></netparam>
+        <netparam><method  
name="getValue">return !parent.parent.refObj.canDraw;</method></netparam>
+        <handler name="ondata" args="value">
+            <![CDATA[
+            //The onResult-Handler will be called be the rtmpconnection
+            //Debug.write("sendVarsModeratorGeneral : ",value);
+
+            ]]>
+        </handler>
+    </netRemoteCallHib>
+

      <handler name="onmouseover">
          this.setAttribute('bgcolor',canvas.baseMousecolorizer);
@@ -98,25 +250,54 @@
          this.setAttribute('bgcolor',0xFFFFFF);
      </handler>

-    <image name="_userpic" >
+    <image name="_userpic" stretches="both">
          <handler name="onload">
-            parent.setAttribute('height',this.height);
+            <![CDATA[
+                if (this.height > 38) {
+                       //If bigger then containter then scale it
+                       var width = this.width/(this.height/38);
+                       this.setAttribute('height',38);
+                       this.setAttribute('width',width);
+                }
+            ]]>
          </handler>
      </image>

      <labelText x="40" text="$once{ parent.firstname+' '+parent.lastname }"  
/>

-    <view name="_miniIcons" x="42" valign="bottom"  
layout="axis:x;spacing:2" height="18">
-        <miniIcons name="_isMod" resource="participents_isMod_rsc"  
showhandcursor="false">
-            <labelTooltip labelid="608" />
+    <view name="_miniIcons" x="193" valign="bottom" height="18">
+
+        <miniIcons name="_isMod" x="0" width="16"  
resource="participents_isactive"
+                   height="16" showhandcursor="false" />
+
+        <miniIcons name="_canDraw" x="20" width="16"  
resource="participents_isactive"
+                   height="16" showhandcursor="false" >
+            <handler name="onclick">
+                <![CDATA[
+                    //if the label is set and this is a Moderator then  
this user should
+                    //allow the click event => the click event will trigger
+                    //this user away from beeing able to draw on the  
whiteboard
+                       if (canvas.ismoderator && this._text.text.length != 0) {
+                               //Do it
+                               if ($debug) Debug.write("Do it");
+                        parent.parent.setCanDraw.doCall();
+                    }
+                ]]>
+            </handler>
+            <labelTooltip name="_text" text="" />
          </miniIcons>
-        <miniIcons name="_canDraw"  
resource="participents_isAllowedDrawing_rsc" showhandcursor="false">
-            <labelTooltip labelid="609" />
+
+        <miniIcons name="_canDrawModerator" x="20" width="16" opacity="0.5"
+                   resource="participents_isactive" height="16"  
showhandcursor="true">
+            <handler name="onclick">
+                //Do it
+                if ($debug) Debug.write("Do it");
+                parent.parent.setCanDraw.doCall();
+            </handler>
+            <labelTooltip labelid="611" />
          </miniIcons>
-    </view>
-
-    <view name="_miniIconsActions" align="right" valign="bottom"  
layout="axis:x;spacing:2" height="18">
-        <miniIcons name="_restartDevice" resource="resyncuser_rsc"  
showhandcursor="true">
+
+        <miniIcons name="_restartDevice" x="40" width="16" height="16"  
resource="resyncuser_rsc" showhandcursor="true">
              <handler name="onclick">
                  if ($debug)  
Debug.write("parent.parent.refObj.publicSID: ",parent.parent.refObj.publicSID);
                  var myvideocontainer =  
canvas._videocontainer.getNewVideoObject(parent.parent.refObj.publicSID);
@@ -126,6 +307,10 @@
              <labelTooltip labelid="610" />
          </miniIcons>
      </view>
+
+    <view name="divisionLine" width="$once{ parent.width }"
+          bgcolor="$once{ canvas.basebgcolorizer }" height="1" y="39" />
+
  </class>


@@ -174,7 +359,7 @@
              if ($debug) Debug.write("+++++++++++++++++  
getClientListScope : ",value);
              for (var i in value){
                if ($debug) Debug.write("getClientListScope  
value: ",value[i]);
-                        
this.parent.addItem(value[i].connectedSince,value[i].isMod,value[i].streamid,value[i].username,value[i].userroom,value[i].formatedDate,value[i].userpos,value[i].usercolor,value[i]);
+                        
this.parent.addItem(value[i].connectedSince,value[i].isMod,value[i].streamid,value[i].username,'',value[i].formatedDate,value[i].userpos,value[i].usercolor,value[i]);
              }
              //this content must be inited _after_ setting the default  
values
              canvas.thishib.getCurrentModerator.doCall();
@@ -190,11 +375,14 @@
        var obj = this.getVideoObjectByPublicSID(rcl.publicSID);
        if ($debug) Debug.write("setAVSettingsToClient: ",obj,rcl.avsettings);
                if (rcl.avsettings=="n"){
+            obj.setAttribute("visibility","hidden");
                        obj.setVideouserProfilePic(rcl);
                } else if (rcl.avsettings=="a"){
                        obj.setVideouserProfilePic(rcl);
+            obj.setAttribute("visibility","visible");
                } else {
-                       obj.deleteVideoConfProfilePic();        
+                       obj.deleteVideoConfProfilePic();
+            obj.setAttribute("visibility","visible");
                }
                obj.clientVars = rcl;
        obj.updateAVSettingsSymbol(rcl);
@@ -222,13 +410,15 @@
                                return this._videoviewcontent.subviews[i];
                        }
                }
+
+            return null;
                
        ]]>
      </method>         

        <method name="addItem"  
args="connectedSince,isMod,streamid,username,userroom,formatedDate,position,color,object">
                <![CDATA[
-                       if ($debug) Debug.write("initializeStreams  
addItem: ",connectedSince,isMod,streamid,username,userroom,formatedDate);
+                       if ($debug) Debug.write("initializeStreams  
addItem: ",connectedSince,isMod,streamid,username,formatedDate);

              //Do init only in case this stream is NOT the same as we are
                        if (streamid!=canvas.streamid){
@@ -238,20 +428,30 @@
                                if ($debug) Debug.write("object.avsettings: 
",object.avsettings);
                                if (object.avsettings=="n"){
                                myvideocontainer.setVideouserProfilePic(object);
+                    myvideocontainer.setAttribute("visibility","hidden");
                        } else if (object.avsettings=="a"){
                                myvideocontainer.setVideouserProfilePic(object);
                                if ($debug) Debug.warn("start play");
-                                
myvideocontainer._chatvideoinner._videostream.playStream(object.broadCastID,-1);
        
+                                
myvideocontainer._chatvideoinner._videostream.playStream(object.broadCastID,-1);
+                    myvideocontainer.setAttribute("visibility","visible");
                        } else {
                                 
myvideocontainer._chatvideoinner._videostream.playStream(object.broadCastID,-1);
        
+                    myvideocontainer.setAttribute("visibility","visible");
                                if ($debug) Debug.warn("start play");
                        }
                        myvideocontainer.updateAVSettingsSymbol(object);
+
+                //do add others
+                this._participents.addItem(object);
+
                                return myvideocontainer;
-                       }
-
-            //do also init self
-            this._participents.addItem(object);
+                       } else {
+
+                //do add self too
+                this._participents.addItem(object);
+
+            }
+
                ]]>
        </method>
        
@@ -381,11 +581,16 @@
                <![CDATA[
                        if ($debug) Debug.write("disconnectclient: ",publicSID);
                        var obj = this.getVideoObjectByPublicSID(publicSID);
+            var objList =  
this._participents.getVideoObjectByPublicSID(publicSID);
                        if ($debug) Debug.write("disconnectclient obj: ",obj);
                        if (obj != null){
                                obj.resetValues();
                                obj.destroy();
                        }
+            if (objList != null){
+                objList.resetValues();
+                objList.destroy();
+            }
                        return null;
                ]]>
        </method>       

Added:  
trunk/openmeetings_lps411/modules/conference/participents/resources/color_line_dis.fla
==============================================================================
Binary file. No diff available.

Added:  
trunk/openmeetings_lps411/modules/conference/participents/resources/color_line_dis.png
==============================================================================
Binary file. No diff available.

Added:  
trunk/openmeetings_lps411/modules/conference/participents/resources/decrypted.png
==============================================================================
Binary file. No diff available.

Added:  
trunk/openmeetings_lps411/modules/conference/participents/resources/encrypted.png
==============================================================================
Binary file. No diff available.

Added:  
trunk/openmeetings_lps411/modules/conference/participents/resources/kdmconfig.png
==============================================================================
Binary file. No diff available.

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"OpenMeetings developers" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to 
[email protected]
For more options, visit this group at 
http://groups.google.com/group/openmeetings-dev?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to