Revision: 3215
Author: seba.wagner
Date: Wed Apr 14 14:37:41 2010
Log: Fix User List to 1000er Grid Part 1
http://code.google.com/p/openmeetings/source/detail?r=3215

Modified:
/trunk/singlewebapp/WebContent/openmeetings/base/hibernate/hibRtmpConnection.lzx
 /trunk/singlewebapp/WebContent/openmeetings/base/mainAttributes.lzx
 /trunk/singlewebapp/WebContent/openmeetings/base/mainMethods.lzx
/trunk/singlewebapp/WebContent/openmeetings/modules/conference/restricted/moderationMiniIconRestricted.lzx /trunk/singlewebapp/WebContent/openmeetings/modules/conference/restricted/restrictedUserList.lzx /trunk/singlewebapp/WebContent/openmeetings/modules/conference/restricted/restrictedUserListInner.lzx /trunk/singlewebapp/WebContent/openmeetings/modules/conference/restricted/restrictedUserListItem.lzx

=======================================
--- /trunk/singlewebapp/WebContent/openmeetings/base/hibernate/hibRtmpConnection.lzx Tue Mar 2 08:15:29 2010 +++ /trunk/singlewebapp/WebContent/openmeetings/base/hibernate/hibRtmpConnection.lzx Wed Apr 14 14:37:41 2010
@@ -741,6 +741,9 @@
             <handler name="ondata" args="value">
                <![CDATA[
if ($debug) Debug.write("############ getCurrentModeratorList: ",value);
+
+                       canvas.analyzeModerationList(value);
+
                        canvas.currentModeratorList = value;
                        //Update Moderation Flag
                        canvas.updateModerationFlag();
@@ -1200,6 +1203,9 @@
             <handler name="ondata" args="value">
                 <![CDATA[
if ($debug) Debug.write("setNewModeratorByList ",value);
+
+                    canvas.analyzeModerationList(value);
+
//The onResult-Handler will be called be the rtmpconnection
                     canvas.currentModeratorList = value;
                     //Update Moderation Flag
=======================================
--- /trunk/singlewebapp/WebContent/openmeetings/base/mainAttributes.lzx Fri Mar 19 01:13:20 2010 +++ /trunk/singlewebapp/WebContent/openmeetings/base/mainAttributes.lzx Wed Apr 14 14:37:41 2010
@@ -131,6 +131,9 @@
  -->
 <attribute name="currentModeratorList" value="null" />

+<attribute name="newModeratorList" value="null" />
+<attribute name="removeModeratorList" value="null" />
+
 <attribute name="ismoderator" value="false" type="boolean" />

 <attribute name="loadingmessage" value="" type="string" />
=======================================
--- /trunk/singlewebapp/WebContent/openmeetings/base/mainMethods.lzx Mon Apr 12 13:30:13 2010 +++ /trunk/singlewebapp/WebContent/openmeetings/base/mainMethods.lzx Wed Apr 14 14:37:41 2010
@@ -529,6 +529,70 @@
 </method>


+<method name="analyzeModerationList" args="newList">
+       <![CDATA[
+
+          canvas.newModeratorList = new Array();
+          canvas.removeModeratorList = new Array();
+
+          for (var i=0;i<canvas.currentModeratorList.length;i++) {
+            canvas.currentModeratorList[i].found = false;
+          }
+
+          for (var i=0;i<canvas.currentModeratorList.length;i++) {
+
+            for (var k=0;k<newList.length;k++) {
+ if (newList[k].publicSID == canvas.currentModeratorList[i].publicSID) {
+
+                    canvas.currentModeratorList[i].found = true;
+
+                }
+            }
+
+        }
+
+        for (var k=0;k<newList.length;k++) {
+            newList[k].found = false;
+        }
+
+        for (var k=0;k<newList.length;k++) {
+
+               for (var i=0;i<canvas.currentModeratorList.length;i++) {
+
+ if (newList[k].publicSID == canvas.currentModeratorList[i].publicSID) {
+
+                    newList[k].found = true;
+
+                }
+
+               }
+
+        }
+
+        for (var k=0;k<newList.length;k++) {
+
+               if (!newList[k].found) {
+
+                       canvas.newModeratorList.push(newList[k]);
+
+               }
+
+        }
+
+        for (var i=0;i<canvas.currentModeratorList.length;i++) {
+
+               if (!canvas.currentModeratorList[i].found) {
+                       
canvas.removeModeratorList.push(canvas.currentModeratorList[i])
+               }
+
+        }
+
+ if ($debug) Debug.write("newModeratorList :: ",canvas.newModeratorList); + if ($debug) Debug.write("removeModeratorList :: ",canvas.removeModeratorList);
+
+       ]]>
+</method>
+
 <!--
 <method name="setModeratorName" args="mod">
     <![CDATA[
=======================================
--- /trunk/singlewebapp/WebContent/openmeetings/modules/conference/restricted/moderationMiniIconRestricted.lzx Tue Apr 13 23:46:18 2010 +++ /trunk/singlewebapp/WebContent/openmeetings/modules/conference/restricted/moderationMiniIconRestricted.lzx Wed Apr 14 14:37:41 2010
@@ -25,7 +25,7 @@
this._canDraw._text.setAttribute("text",canvas.getLabelName(681));
             this._canDrawModerator.setAttribute("visibility","hidden");
                } else {
-                       if (parent.parent.refObj.canDraw) {
+                       if (parent.parent.canDraw) {
                 this._canDraw.setAttribute("visibility","visible");
                 this._canDraw.isActive = true;
this._canDraw._text.setAttribute("text",canvas.getLabelName(612));
@@ -36,7 +36,7 @@
             }
                }

-               if (parent.parent.refObj.isBroadcasting) {
+               if (parent.parent.isBroadcasting) {
                        this._allowDevice.setAttribute("visibility","hidden");
                        this._denyDevice.setAttribute("visibility","visible");
                } else {
=======================================
--- /trunk/singlewebapp/WebContent/openmeetings/modules/conference/restricted/restrictedUserList.lzx Mon Apr 12 13:30:13 2010 +++ /trunk/singlewebapp/WebContent/openmeetings/modules/conference/restricted/restrictedUserList.lzx Wed Apr 14 14:37:41 2010
@@ -118,7 +118,10 @@

             for (var i in value){
                if ( value[i].streamid == canvas.streamid ) {
+                       value[i].selfItem = true;
                     canvas.isAllowedToDraw = value[i].canDraw;
+                } else {
+                       value[i].selfItem = false;
                 }

                 //value[i].lastname = value[i].lastname + "T: " + t;
=======================================
--- /trunk/singlewebapp/WebContent/openmeetings/modules/conference/restricted/restrictedUserListInner.lzx Tue Apr 13 23:46:18 2010 +++ /trunk/singlewebapp/WebContent/openmeetings/modules/conference/restricted/restrictedUserListInner.lzx Wed Apr 14 14:37:41 2010
@@ -32,7 +32,10 @@
                if (object.isSuperModerator) {
                    object.lastname += " *";
                }
-
+
+               //See setRoomValues
+            //object.selfItem = false;
+
                //Add item to list
                if (this._table.renderList == null) {
                        this._table.renderList = new Array();
@@ -54,6 +57,8 @@
                if (object.isSuperModerator) {
                    object.lastname += " *";
                }
+
+               object.selfItem = false;

                //Add item to list
                if (this._table.renderList == null) {
@@ -331,7 +336,10 @@
list.subviews[i].setAttribute("isSuperModerator",records[i].isSuperModerator); list.subviews[i].setAttribute("lastname",records[i].lastname); list.subviews[i].setAttribute("connectedSince",records[i].connectedSince); + list.subviews[i].setAttribute("canDraw",records[i].canDraw);
                            
list.subviews[i].setAttribute("isMod",records[i].isMod);
+ list.subviews[i].isBroadcasting = records[i].isBroadcasting; + list.subviews[i].setAttribute("selfItem",records[i].selfItem);
                            list.subviews[i].streamid = records[i].streamid;
list.subviews[i].setAttribute("username",records[i].username); list.subviews[i].setAttribute("formatedDate",records[i].formatedDate);
@@ -351,7 +359,10 @@
list.subviews[i].setAttribute("isSuperModerator","");
                            list.subviews[i].setAttribute("lastname","");
                            list.subviews[i].setAttribute("connectedSince","");
-                           list.subviews[i].setAttribute("isMod","");
+                           list.subviews[i].setAttribute("canDraw",false);
+                           list.subviews[i].setAttribute("isMod",false);
+                           list.subviews[i].isBroadcasting = false;
+                           list.subviews[i].setAttribute("selfItem",false);
                            list.subviews[i].streamid = "";
                            list.subviews[i].setAttribute("username","");
                            list.subviews[i].setAttribute("formatedDate","");
@@ -399,13 +410,18 @@
                            item.onmouseout.sendEvent();
                            item.hideModeratorIcons();
                        }
+
+ if ($debug) Debug.write(item.itemId,this.renderList[item.itemId].isMod,this.renderList[item.itemId].publicSID);

item.setAttribute("user_id",this.renderList[item.itemId].user_id); item.setAttribute("firstname",this.renderList[item.itemId].firstname); item.setAttribute("isSuperModerator",this.renderList[item.itemId].isSuperModerator); item.setAttribute("lastname",this.renderList[item.itemId].lastname); item.setAttribute("connectedSince",this.renderList[item.itemId].connectedSince); + item.setAttribute("canDraw",this.renderList[item.itemId].canDraw); + item.isBroadcasting = this.renderList[item.itemId].isBroadcasting; item.setAttribute("isMod",this.renderList[item.itemId].isMod); + item.setAttribute("selfItem",this.renderList[item.itemId].selfItem);
                    item.streamid = this.renderList[item.itemId].streamid;
item.setAttribute("username",this.renderList[item.itemId].username); item.setAttribute("formatedDate",this.renderList[item.itemId].formatedDate);
@@ -433,7 +449,10 @@
                     item.setAttribute("isSuperModerator","");
                    item.setAttribute("lastname","");
                    item.setAttribute("connectedSince","");
-                   item.setAttribute("isMod","");
+                   item.setAttribute("canDraw",false);
+                   item.setAttribute("isMod",false);
+                   item.isBroadcasting = false;
+                   item.setAttribute("selfItem",false);
                    item.streamid = ""
                    item.setAttribute("username","");
                    item.setAttribute("formatedDate","");
@@ -465,7 +484,7 @@
<handler name="ondrawAllowStatus" reference="canvas" args="drawObject">
             <![CDATA[

-                if ($debug) Debug.write(" :: ondrawAllowStatus :: ");
+ if ($debug) Debug.write(" :: ondrawAllowStatus :: ",drawObject.canDraw);

                 //search for the user and update its drawStatusIcon
                 var vList = parent._table._innerlist._inn._inn.subviews;
@@ -473,7 +492,9 @@
                     //vList[i].updateIconByMod();
if (vList[i].refObj.publicSID == drawObject.publicSID) {
                        vList[i].refObj.canDraw = drawObject.canDraw;
-                       vList[i].updateIconByMod();
+                       vList[i].canDraw = drawObject.canDraw;
+                       vList[i].updateIconByModScroll();
+                       vList[i].updateModeratorIcons();
                        break;
                     }
                 }
@@ -505,8 +526,9 @@
                 for (var i=0;i<vList.length;i++) {
                     //vList[i].updateIconByMod();
if (vList[i].refObj.publicSID == userObject.publicSID) { - vList[i].refObj.isBroadcasting = userObject.isBroadcasting;
-                        vList[i].updateIconByMod();
+ vList[i].isBroadcasting = userObject.isBroadcasting;
+                        //vList[i].updateIconByMod();
+                        vList[i].updateModeratorIcons();
                         break;
                     }
                 }
@@ -542,31 +564,118 @@
                <![CDATA[

                    if ($debug) Debug.write(" :: updateIcons :: ");
-
-                       var vList = parent._table._innerlist._inn._inn.subviews;
-
-                       for (var i=0;i<vList.length;i++) {
-                               vList[i].updateIconByMod();
-                               vList[i].updateModeratorIcons();
-                       }
-
-                for (var k=0;k<canvas.currentModeratorList.length;k++) {
+
+                   //var vList = parent._table.renderList;
+                for (var i=0;i<parent._table.renderList.length;i++) {
+
+                    for (var k=0;k<canvas.newModeratorList.length;k++) {
+
+                       var item = canvas.newModeratorList[k];
+
+ if (parent._table.renderList[i].publicSID == item.publicSID) {
+
+ if (parent._table.renderList[i].isMod == false) { + if ($debug) Debug.info("updateIcons Found RR ",i,item.publicSID);
+                                parent._table.renderList[i].isMod = true;
+
+ var itemView = this.getItemByPublicSID(item.publicSID);
+                                if (itemView != null) {
+                                    itemView.setAttribute("isMod",true);
+                                    itemView.updateModeratorIcons();
+                                }
+                            }
+
+                        }
+
+                    }
+
+                    for (var k=0;k<canvas.removeModeratorList.length;k++) {
+
+                       var item = canvas.removeModeratorList[k];
+
+ if (parent._table.renderList[i].publicSID == item.publicSID) {
+
+ if (parent._table.renderList[i].isMod == true) { + if ($debug) Debug.info("RE updateIcons Found RR ",i,item.publicSID);
+                               parent._table.renderList[i].isMod = false;
+
+ var itemView = this.getItemByPublicSID(item.publicSID);
+                               if (itemView != null) {
+                                   itemView.setAttribute("isMod",false);
+                                   itemView.updateModeratorIcons();
+                               }
+                            }
+
+                        }
+
+                    }
+
+                }
+
+                //var vList = parent._table._innerlist._inn._inn.subviews;
+
+                //for (var i=0;i<vList.length;i++) {
+                //    vList[i].updateIconByMod();
+                //    vList[i].updateModeratorIcons();
+                //}
+
+               parent._applyAndStatusIcons.updateIcons();
+               ]]>
+        </method>
+
+        <!--
+                for (var i=0;i<parent._table.renderList.length;i++) {
+
+ for (var k=0;k<canvas.currentModeratorList.length;k++) {

                     var item = canvas.currentModeratorList[k];

-                    var vList = parent._table.renderList;
-                    for (var i=0;i<vList.length;i++) {
-
-                        if (vList[i].publicSID == item.publicSID) {
-                            parent._table.renderList[i].isMod = true;
+ if ($debug) Debug.info("updateIcons ",item.publicSID);
+
+ if (parent._table.renderList[i].publicSID == item.publicSID) {
+
+ if (parent._table.renderList[i].isMod == false) { + if ($debug) Debug.info("updateIcons Found RR ",i,item.publicSID);
+                                parent._table.renderList[i].isMod = true;
+
+ var itemView = this.getItemByPublicSID(item.publicSID);
+                                if (itemView != null) {
+                                    itemView.setAttribute("isMod",true);
+                                    itemView.updateModeratorIcons();
+                                }
+                            }
+
+
                         } else {
-                               parent._table.renderList[i].isMod = false;
-                        }
+
+ if (parent._table.renderList[i].isMod == true) { + if ($debug) Debug.info("RE updateIcons Found RR ",i,item.publicSID);
+                               parent._table.renderList[i].isMod = false;
+
+ var itemView = this.getItemByPublicSID(item.publicSID);
+                               if (itemView != null) {
+                                   itemView.setAttribute("isMod",false);
+                                   itemView.updateModeratorIcons();
+                               }
+                            }
+                        }
+
                     }

-                }
-
-               parent._applyAndStatusIcons.updateIcons();
+                }
+         -->
+
+        <method name="getItemByPublicSID" args="publicSID">
+               <![CDATA[
+                var vList = parent._table._innerlist._inn._inn.subviews;
+
+                for (var i=0;i<vList.length;i++) {
+                    if (vList[i].refObj.publicSID == publicSID) {
+                       return vList[i];
+                    }
+                }
+
+                return null;
                ]]>
         </method>

=======================================
--- /trunk/singlewebapp/WebContent/openmeetings/modules/conference/restricted/restrictedUserListItem.lzx Tue Apr 13 23:46:18 2010 +++ /trunk/singlewebapp/WebContent/openmeetings/modules/conference/restricted/restrictedUserListItem.lzx Wed Apr 14 14:37:41 2010
@@ -5,7 +5,11 @@
           showhandcursor="false" width="254" height="42">

        <attribute name="connectedSince" value="" type="string" />
+
     <attribute name="isMod" value="false" type="boolean" />
+    <attribute name="canDraw" value="false" type="boolean" />
+    <attribute name="isBroadcasting" value="false" type="boolean" />
+
     <attribute name="streamid" value="" type="string" />
     <attribute name="username" value="" type="string" />
     <attribute name="userroom" value="" type="string" />
@@ -20,10 +24,23 @@
     <attribute name="userpicURL" value="" type="string" />
     <attribute name="userpicView" value="null" />

+    <attribute name="selfItem" value="false" type="boolean"/>
+
+    <handler name="onisMod">
+       if (this.isMod) {
+            this._content.userStatus.setAttribute("frame",3);
+        } else if (this.refObj.canDraw) {
+            this._content.userStatus.setAttribute("frame",2);
+        } else {
+            this._content.userStatus.setAttribute("frame",1);
+        }
+    </handler>
+
+
        <method name="updateIconByMod">
                if (this.clickable) {
this.isMod = canvas.getIsModeratorByPublicSID(this.refObj.publicSID);
-               if ($debug) Debug.write(" :: updateIconByMod :: ",this.isMod)
+               //if ($debug) Debug.write(" :: updateIconByMod :: ",this.isMod)
                if (this.isMod) {
                 this._content.userStatus.setAttribute("frame",3);
             } else if (this.refObj.canDraw) {
@@ -44,7 +61,7 @@
                this._content.userStatus.setAttribute("frame",1);
             }
        }
-    </method>
+    </method>

     <method name="initModeratorIcons">
        //if ($debug) Debug.write(" :1: initModeratorIcons :: ");
@@ -69,6 +86,9 @@

        <view name="_content" width="254">

+               <view name="_contentIsCurrent" visible="${ parent.parent.selfItem 
}"
+                        width="254" height="40" bgcolor="0x7CFC00"/>
+
                <!--
                + ' ' + parent.parent.itemId
                 -->
@@ -80,9 +100,11 @@
                  x="238" frame="1" resource="userstatus_multiframe_rsc" />


-           <moderationMiniIconRestricted name="_content" visibility="hidden"/>
+ <moderationMiniIconRestricted name="_iconsModerator" visibility="hidden"/>
        </view>

+
+
 </class>

 </library>

--
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