Author: sebawagner
Date: Fri Mar 2 10:26:30 2012
New Revision: 1296115
URL: http://svn.apache.org/viewvc?rev=1296115&view=rev
Log:
OPENMEETINGS-45 New Audio/Video Components Fix event messages, replace some
icons in participants list
Added:
incubator/openmeetings/trunk/singlewebapp/WebContent/src/modules/conference/participants/resources/accept.png
(with props)
incubator/openmeetings/trunk/singlewebapp/WebContent/src/modules/conference/participants/resources/delete.png
(with props)
Removed:
incubator/openmeetings/trunk/singlewebapp/WebContent/src/modules/conference/participants/resources/button_ok.png
Modified:
incubator/openmeetings/trunk/singlewebapp/WebContent/src/base/mainMethods.lzx
incubator/openmeetings/trunk/singlewebapp/WebContent/src/modules/conference/participants/library.lzx
incubator/openmeetings/trunk/singlewebapp/WebContent/src/modules/conference/participants/participantListItem.lzx
incubator/openmeetings/trunk/singlewebapp/WebContent/swf10/commonVideoViewContentSWF10.lzx
incubator/openmeetings/trunk/singlewebapp/src/app/org/openmeetings/app/remote/WhiteBoardService.java
incubator/openmeetings/trunk/singlewebapp/src/app/org/openmeetings/app/remote/red5/ScopeApplicationAdapter.java
Modified:
incubator/openmeetings/trunk/singlewebapp/WebContent/src/base/mainMethods.lzx
URL:
http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/WebContent/src/base/mainMethods.lzx?rev=1296115&r1=1296114&r2=1296115&view=diff
==============================================================================
---
incubator/openmeetings/trunk/singlewebapp/WebContent/src/base/mainMethods.lzx
(original)
+++
incubator/openmeetings/trunk/singlewebapp/WebContent/src/base/mainMethods.lzx
Fri Mar 2 10:26:30 2012
@@ -549,419 +549,424 @@
}
</method>
- <method name="roomClosed">
- <![CDATA[
-
- if ($debug) Debug.write("canvas.currentRoomObject
",canvas.currentRoomObject);
-
- new
lz.redirectBox(canvas,{redirectURL:canvas.currentRoomObject.redirectURL});
-
- ]]>
- </method>
+ <method name="roomClosed">
+ <![CDATA[
+ if ($debug) Debug.write("canvas.currentRoomObject
",canvas.currentRoomObject);
+ new
lz.redirectBox(canvas,{redirectURL:canvas.currentRoomObject.redirectURL});
+ ]]>
+ </method>
-
-<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="addBrowserTabHistory" args="value">
- <![CDATA[
- //Debug.write("addBrowserTabHistory: ",value);
- _browserhistory.addItem(value);
- this.browserTabHistory.push(value);
- ]]>
-</method>
-
-<!---
-@doc The function does compare the new moderator list with the old and
prepares the list
- the removeModeratorList is used in the performance optimized user list
of the restricted
- room type to re-render the list items only if really something has
changed in any
- of the user list items
- -->
-<method name="analyzeModerationList" args="newList">
- <![CDATA[
-
- canvas.newModeratorList = new Array();
- canvas.removeModeratorList = new Array();
-
- if (canvas.currentModeratorList != null) {
- 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++) {
- if (canvas.currentModeratorList != null) {
- 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]);
- }
- }
-
- if (canvas.currentModeratorList != null) {
- 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>
-
-<!---
- Updates the "ismoderator" flag
- the setAttribute method will broadcast an event to all event listeners
that
- did subscribe using the "onismoderator" handler with reference to
canvas !
- For example in the userlist's of the roomtypes
- -->
-<method name="updateModerationFlag">
- <![CDATA[
- if ($debug)
Debug.write("updateModerationFlag",canvas.currentModeratorList);
- var isCurrentModerator = false;
- for (var i=0;i<canvas.currentModeratorList.length;i++) {
- var item = canvas.currentModeratorList[i];
- if (canvas.publicSID == item.publicSID) {
- isCurrentModerator = true;
- }
- }
- this.setAttribute('ismoderator',isCurrentModerator);
- ]]>
-</method>
-
-<!---
- Checks if a certain publicSID is a moderator
- -->
-<method name="getIsModeratorByPublicSID" args="publicSID">
- <![CDATA[
- for (var i=0;i<canvas.currentModeratorList.length;i++) {
- var item = canvas.currentModeratorList[i];
- if (publicSID == item.publicSID) {
- return true;
- }
- }
- return false;
- ]]>
-</method>
-
-<!---
- Load the invitation window
- -->
-<method name="doAction" args="action">
- if (action == "invitation") {
- new lz.inviteMainWindow(canvas.main_content._content.inner);
- }
-</method>
-
-<!---
- Sets the flags isAllowedToDraw, isAllowedToScreenShare,
isAllowedToRemoteControl
- and broadcasts the three rights to SWF10 container
- -->
-<method name="setDrawAllowStatus" args="roomClientObj">
- <![CDATA[
- if ($debug) Debug.write("drawAllowStatus changes ###### ");
- if (roomClientObj.publicSID==canvas.publicSID) {
- canvas.setAttribute("isAllowedToDraw",roomClientObj.canDraw);
-
canvas.setAttribute("isAllowedToScreenShare",roomClientObj.canShare);
-
canvas.setAttribute("isAllowedToRemoteControl",roomClientObj.canRemote);
- canvas.lc.send(canvas.vid_lc_name, "setDrawAllowStatus",
roomClientObj.canDraw, roomClientObj.canShare, roomClientObj.canRemote);
- }
- ]]>
-</method>
-
-<!---
- Sets the flag for the isAllowedToGiveExclusiveAudio status and
broadcasts it to the
- SWF10 container
- -->
-<method name="setExclusiveAudioAllowStatus" args="roomClientObj">
- <![CDATA[
- if ($debug) Debug.write("giveExclusiveAudioStatus changes ###### ");
- if (roomClientObj.publicSID==canvas.publicSID) {
-
canvas.setAttribute("isAllowedToGiveExclusiveAudio",roomClientObj.canGiveAudio);
- canvas.lc.send(canvas.vid_lc_name, "setExclusiveAudioAllowStatus",
roomClientObj.canGiveAudio);
- }
- ]]>
-</method>
-
-<method name="setMuteStatus" args="roomClientObj">
- <![CDATA[
- if ($debug) Debug.write("setMuteStatus changes ######
",roomClientObj.micMuted);
- //Check for self status
- if (roomClientObj.publicSID==canvas.publicSID) {
- canvas.setAttribute("micMuted",roomClientObj.micMuted);
- }
-
- canvas._videocontainer.updateMuteStatusVideoView(roomClientObj);
-
- //Notify all Listeners for change of the item
- canvas.setAttribute("micMutedStatusChangedItem",roomClientObj);
- ]]>
-</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="reverseAll" 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 ];
-
- }
- 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>
-
-<method name="initSharedObject">
- if (canvas.sharedObject == null) {
- if($debug) Debug.write("canvas.initSharedObject sharedObject IS null");
- canvas.sharedObject = new lz.sharedObject();
- canvas.sharedObject.getLocal('userdata');
- }
-</method>
-
-<method name="getUserData">
- canvas.initSharedObject();
- var g = canvas.sharedObject.getData('userdata');
- if (g==null) {
- if($debug) Debug.write("sharedObject.getData IS null");
- g = new Array();
- }
- return g;
-</method>
-
-<method name="setUserData" args="g">
- canvas.initSharedObject();
- canvas.sharedObject.setData('userdata', g);
- canvas.sharedObject.flush();
-</method>
-
-<method name="setColorStyle" args="value">
- var val = value;
- if (val == "mediumseagreen"){
- canvas.setAttribute('basebgcolorizer',"0x3CB371");
- canvas.setAttribute('baseMousecolorizer',"0x66CC8E");
- canvas.setAttribute('baseMouseOvercolorizer',"0x66CC8E");
- } else if (val == "steelblue"){
- canvas.setAttribute('basebgcolorizer',"0x4682B4");
- canvas.setAttribute('baseMousecolorizer',"0x80AECC");
- canvas.setAttribute('baseMouseOvercolorizer',"0x80AECC");
- } else if (val == "redorange"){
- canvas.setAttribute('basebgcolorizer',"0xFC8558");
- canvas.setAttribute('baseMousecolorizer',"0xFDC4A6");
- canvas.setAttribute('baseMouseOvercolorizer',"0xFDC4A6");
- } else if (val == "lightsteelblue"){
- canvas.setAttribute('basebgcolorizer',"0x3F5B9E");
- canvas.setAttribute('baseMousecolorizer',"0xC4D5E6");
- canvas.setAttribute('baseMouseOvercolorizer',"0xC4D5E6");
- } else if (val == "goldenrod"){
- canvas.setAttribute('basebgcolorizer',"0xDAA520");
- canvas.setAttribute('baseMousecolorizer',"0xE8C064");
- canvas.setAttribute('baseMouseOvercolorizer',"0xE8C064");
- } else if (val == "silvergray"){
- canvas.setAttribute('basebgcolorizer',"0xC4C8CC");
- canvas.setAttribute('baseMousecolorizer',"0xC2C8CD");
- canvas.setAttribute('baseMouseOvercolorizer',"0xC2C8CD");
- } else if (val == "userdefined"){
- canvas.setAttribute('basebgcolorizer', canvas.userbgcolorizer);
- canvas.setAttribute('baseMousecolorizer', canvas.userMousecolorizer);
- canvas.setAttribute('baseMouseOvercolorizer',
canvas.userMouseOvercolorizer);
- } else {
- val = null;
- }
-
- return val;
-</method>
+
+ <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="addBrowserTabHistory" args="value">
+ <![CDATA[
+ //Debug.write("addBrowserTabHistory: ",value);
+ _browserhistory.addItem(value);
+ this.browserTabHistory.push(value);
+ ]]>
+ </method>
+
+ <!---
+ @doc The function does compare the new moderator list with the old and
prepares the list
+ the removeModeratorList is used in the performance optimized
user list of the restricted
+ room type to re-render the list items only if really something
has changed in any
+ of the user list items
+ -->
+ <method name="analyzeModerationList" args="newList">
+ <![CDATA[
+
+ canvas.newModeratorList = new Array();
+ canvas.removeModeratorList = new Array();
+
+ if (canvas.currentModeratorList != null) {
+ 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++) {
+ if (canvas.currentModeratorList != null) {
+ 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]);
+ }
+ }
+
+ if (canvas.currentModeratorList != null) {
+ 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>
+
+ <!---
+ Updates the "ismoderator" flag
+ the setAttribute method will broadcast an event to all event
listeners that
+ did subscribe using the "onismoderator" handler with reference
to canvas !
+ For example in the userlist's of the roomtypes
+ -->
+ <method name="updateModerationFlag">
+ <![CDATA[
+ if ($debug)
Debug.write("updateModerationFlag",canvas.currentModeratorList);
+ var isCurrentModerator = false;
+ for (var i=0;i<canvas.currentModeratorList.length;i++) {
+ var item = canvas.currentModeratorList[i];
+ if (canvas.publicSID == item.publicSID) {
+ isCurrentModerator = true;
+ }
+ }
+
+ //Only send this event if the current user moderators status
changes
+ if (isCurrentModerator != this.ismoderator) {
+ canvas.lc.send(canvas.vid_lc_name,
"updateModerationFlag", isCurrentModerator);
+ }
+
+ // do always spread this event, we need to broadcast the
"onismoderator" event
+ // so that we can update the status of other users in the user
list
+ this.setAttribute('ismoderator',isCurrentModerator);
+ ]]>
+ </method>
+
+ <!---
+ Checks if a certain publicSID is a moderator
+ -->
+ <method name="getIsModeratorByPublicSID" args="publicSID">
+ <![CDATA[
+ for (var i=0;i<canvas.currentModeratorList.length;i++) {
+ var item = canvas.currentModeratorList[i];
+ if (publicSID == item.publicSID) {
+ return true;
+ }
+ }
+ return false;
+ ]]>
+ </method>
+
+ <!---
+ Load the invitation window
+ -->
+ <method name="doAction" args="action">
+ if (action == "invitation") {
+ new lz.inviteMainWindow(canvas.main_content._content.inner);
+ }
+ </method>
+
+ <!---
+ Sets the flags isAllowedToDraw, isAllowedToScreenShare,
isAllowedToRemoteControl
+ and broadcasts the three rights to SWF10 container
+ -->
+ <method name="setDrawAllowStatus" args="roomClientObj">
+ <![CDATA[
+ if ($debug) Debug.write("drawAllowStatus changes ###### ");
+ if (roomClientObj.publicSID==canvas.publicSID) {
+
canvas.setAttribute("isAllowedToDraw",roomClientObj.canDraw);
+
canvas.setAttribute("isAllowedToScreenShare",roomClientObj.canShare);
+
canvas.setAttribute("isAllowedToRemoteControl",roomClientObj.canRemote);
+ canvas.lc.send(canvas.vid_lc_name, "setDrawAllowStatus",
roomClientObj.canDraw, roomClientObj.canShare, roomClientObj.canRemote);
+ }
+ ]]>
+ </method>
+
+ <!---
+ Sets the flag for the isAllowedToGiveExclusiveAudio status and
broadcasts it to the
+ SWF10 container
+ -->
+ <method name="setExclusiveAudioAllowStatus" args="roomClientObj">
+ <![CDATA[
+ if ($debug) Debug.write("giveExclusiveAudioStatus changes
###### ");
+ if (roomClientObj.publicSID==canvas.publicSID) {
+
canvas.setAttribute("isAllowedToGiveExclusiveAudio",roomClientObj.canGiveAudio);
+ canvas.lc.send(canvas.vid_lc_name,
"setExclusiveAudioAllowStatus", roomClientObj.canGiveAudio);
+ }
+ ]]>
+ </method>
+
+ <method name="setMuteStatus" args="roomClientObj">
+ <![CDATA[
+ if ($debug) Debug.write("setMuteStatus changes ######
",roomClientObj.micMuted);
+ //Check for self status
+ if (roomClientObj.publicSID==canvas.publicSID) {
+ canvas.setAttribute("micMuted",roomClientObj.micMuted);
+ }
+
+ canvas._videocontainer.updateMuteStatusVideoView(roomClientObj);
+
+ //Notify all Listeners for change of the item
+ canvas.setAttribute("micMutedStatusChangedItem",roomClientObj);
+ ]]>
+ </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="reverseAll" 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 ];
+
+ }
+ 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>
+
+ <method name="initSharedObject">
+ if (canvas.sharedObject == null) {
+ if($debug) Debug.write("canvas.initSharedObject sharedObject IS
null");
+ canvas.sharedObject = new lz.sharedObject();
+ canvas.sharedObject.getLocal('userdata');
+ }
+ </method>
+
+ <method name="getUserData">
+ canvas.initSharedObject();
+ var g = canvas.sharedObject.getData('userdata');
+ if (g==null) {
+ if($debug) Debug.write("sharedObject.getData IS null");
+ g = new Array();
+ }
+ return g;
+ </method>
+
+ <method name="setUserData" args="g">
+ canvas.initSharedObject();
+ canvas.sharedObject.setData('userdata', g);
+ canvas.sharedObject.flush();
+ </method>
+
+ <method name="setColorStyle" args="value">
+ var val = value;
+ if (val == "mediumseagreen"){
+ canvas.setAttribute('basebgcolorizer',"0x3CB371");
+ canvas.setAttribute('baseMousecolorizer',"0x66CC8E");
+ canvas.setAttribute('baseMouseOvercolorizer',"0x66CC8E");
+ } else if (val == "steelblue"){
+ canvas.setAttribute('basebgcolorizer',"0x4682B4");
+ canvas.setAttribute('baseMousecolorizer',"0x80AECC");
+ canvas.setAttribute('baseMouseOvercolorizer',"0x80AECC");
+ } else if (val == "redorange"){
+ canvas.setAttribute('basebgcolorizer',"0xFC8558");
+ canvas.setAttribute('baseMousecolorizer',"0xFDC4A6");
+ canvas.setAttribute('baseMouseOvercolorizer',"0xFDC4A6");
+ } else if (val == "lightsteelblue"){
+ canvas.setAttribute('basebgcolorizer',"0x3F5B9E");
+ canvas.setAttribute('baseMousecolorizer',"0xC4D5E6");
+ canvas.setAttribute('baseMouseOvercolorizer',"0xC4D5E6");
+ } else if (val == "goldenrod"){
+ canvas.setAttribute('basebgcolorizer',"0xDAA520");
+ canvas.setAttribute('baseMousecolorizer',"0xE8C064");
+ canvas.setAttribute('baseMouseOvercolorizer',"0xE8C064");
+ } else if (val == "silvergray"){
+ canvas.setAttribute('basebgcolorizer',"0xC4C8CC");
+ canvas.setAttribute('baseMousecolorizer',"0xC2C8CD");
+ canvas.setAttribute('baseMouseOvercolorizer',"0xC2C8CD");
+ } else if (val == "userdefined"){
+ canvas.setAttribute('basebgcolorizer', canvas.userbgcolorizer);
+ canvas.setAttribute('baseMousecolorizer',
canvas.userMousecolorizer);
+ canvas.setAttribute('baseMouseOvercolorizer',
canvas.userMouseOvercolorizer);
+ } else {
+ val = null;
+ }
+
+ return val;
+ </method>
</library>
Modified:
incubator/openmeetings/trunk/singlewebapp/WebContent/src/modules/conference/participants/library.lzx
URL:
http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/WebContent/src/modules/conference/participants/library.lzx?rev=1296115&r1=1296114&r2=1296115&view=diff
==============================================================================
---
incubator/openmeetings/trunk/singlewebapp/WebContent/src/modules/conference/participants/library.lzx
(original)
+++
incubator/openmeetings/trunk/singlewebapp/WebContent/src/modules/conference/participants/library.lzx
Fri Mar 2 10:26:30 2012
@@ -20,7 +20,9 @@
-->
<library>
- <resource name="participants_isactive" src="resources/button_ok.png" />
+ <resource name="right_isactive_rsc" src="resources/accept.png" />
+
+ <resource name="right_notactive_rsc" src="resources/delete.png" />
<resource name="participants_isMod_rsc" src="resources/kdmconfig.png" />
<resource name="participants_allow_drawing_rsc"
src="resources/color_line.png" />
Modified:
incubator/openmeetings/trunk/singlewebapp/WebContent/src/modules/conference/participants/participantListItem.lzx
URL:
http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/WebContent/src/modules/conference/participants/participantListItem.lzx?rev=1296115&r1=1296114&r2=1296115&view=diff
==============================================================================
---
incubator/openmeetings/trunk/singlewebapp/WebContent/src/modules/conference/participants/participantListItem.lzx
(original)
+++
incubator/openmeetings/trunk/singlewebapp/WebContent/src/modules/conference/participants/participantListItem.lzx
Fri Mar 2 10:26:30 2012
@@ -96,13 +96,6 @@
]]>
</method>
- <!--
- if (canvas.moderatorStreamID == this.refObj.streamid) {
- this.isMod = true;
- } else {
- this.isMod = false;
- }
- -->
<handler name="onismoderator" reference="canvas" args="m">
if ($debug) Debug.write("###### ismoderator ",m);
<![CDATA[
@@ -460,7 +453,7 @@
<view name="_miniIcons" x="113" y="22" height="18">
- <miniIcons name="_isMod" x="0" width="16"
resource="participants_isactive"
+ <miniIcons name="_isMod" x="0" width="16"
resource="right_isactive_rsc"
height="16" showhandcursor="false">
<handler name="onclick">
<![CDATA[
@@ -485,7 +478,7 @@
<labelTooltip name="_text" text="" />
</miniIcons>
- <miniIcons name="_isModAddbutton" opacity="0.5" x="0" width="16"
resource="participants_isactive"
+ <miniIcons name="_isModAddbutton" opacity="0.5" x="0" width="16"
resource="right_notactive_rsc"
height="16" showhandcursor="true">
<handler name="onclick">
<![CDATA[
@@ -504,7 +497,7 @@
<labelTooltip name="_text" labelid="676" />
</miniIcons>
- <miniIcons name="_canDraw" x="20" width="16"
resource="participants_isactive"
+ <miniIcons name="_canDraw" x="20" width="16"
resource="right_isactive_rsc"
height="16" showhandcursor="false" >
<handler name="onclick">
<![CDATA[
@@ -522,7 +515,7 @@
</miniIcons>
<miniIcons name="_canDrawModerator" x="20" width="16" opacity="0.5"
- resource="participants_isactive" height="16"
showhandcursor="true">
+ resource="right_notactive_rsc" height="16"
showhandcursor="true">
<handler name="onclick">
//Do it
if ($debug) Debug.write("Do it");
@@ -531,7 +524,7 @@
<labelTooltip labelid="611" />
</miniIcons>
- <miniIcons name="_allowShare" x="40" width="16"
resource="participants_isactive"
+ <miniIcons name="_allowShare" x="40" width="16"
resource="right_isactive_rsc"
height="16" showhandcursor="false" >
<handler name="onclick">
<![CDATA[
@@ -549,7 +542,7 @@
</miniIcons>
<miniIcons name="_denyShare" x="40" width="16" opacity="0.5"
- resource="participants_isactive" height="16"
showhandcursor="true">
+ resource="right_notactive_rsc" height="16"
showhandcursor="true">
<handler name="onclick">
//Do it
if ($debug) Debug.write("Do it");
@@ -559,7 +552,7 @@
</miniIcons>
- <miniIcons name="_allowRemote" x="60" width="16"
resource="participants_isactive"
+ <miniIcons name="_allowRemote" x="60" width="16"
resource="right_isactive_rsc"
height="16" showhandcursor="false" >
<handler name="onclick">
<![CDATA[
@@ -577,7 +570,7 @@
</miniIcons>
<miniIcons name="_denyRemote" x="60" width="16" opacity="0.5"
- resource="participants_isactive" height="16"
showhandcursor="true">
+ resource="right_notactive_rsc" height="16"
showhandcursor="true">
<handler name="onclick">
//Do it
if ($debug) Debug.write("Do it");
@@ -586,7 +579,7 @@
<labelTooltip labelid="1078" />
</miniIcons>
- <miniIcons name="_allowExclusiveAudio" x="80" width="16"
resource="participants_isactive"
+ <miniIcons name="_allowExclusiveAudio" x="80" width="16"
resource="right_isactive_rsc"
height="16" showhandcursor="false" >
<handler name="onclick">
<![CDATA[
@@ -603,7 +596,7 @@
</miniIcons>
<miniIcons name="_denyExclusiveAudio" x="80" width="16" opacity="0.5"
- resource="participants_isactive" height="16"
showhandcursor="true">
+ resource="right_notactive_rsc" height="16"
showhandcursor="true">
<handler name="onclick">
parent.parent.setCanGiveAudio.doCall();
</handler>
Added:
incubator/openmeetings/trunk/singlewebapp/WebContent/src/modules/conference/participants/resources/accept.png
URL:
http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/WebContent/src/modules/conference/participants/resources/accept.png?rev=1296115&view=auto
==============================================================================
Binary file - no diff available.
Propchange:
incubator/openmeetings/trunk/singlewebapp/WebContent/src/modules/conference/participants/resources/accept.png
------------------------------------------------------------------------------
svn:mime-type = application/octet-stream
Added:
incubator/openmeetings/trunk/singlewebapp/WebContent/src/modules/conference/participants/resources/delete.png
URL:
http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/WebContent/src/modules/conference/participants/resources/delete.png?rev=1296115&view=auto
==============================================================================
Binary file - no diff available.
Propchange:
incubator/openmeetings/trunk/singlewebapp/WebContent/src/modules/conference/participants/resources/delete.png
------------------------------------------------------------------------------
svn:mime-type = application/octet-stream
Modified:
incubator/openmeetings/trunk/singlewebapp/WebContent/swf10/commonVideoViewContentSWF10.lzx
URL:
http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/WebContent/swf10/commonVideoViewContentSWF10.lzx?rev=1296115&r1=1296114&r2=1296115&view=diff
==============================================================================
---
incubator/openmeetings/trunk/singlewebapp/WebContent/swf10/commonVideoViewContentSWF10.lzx
(original)
+++
incubator/openmeetings/trunk/singlewebapp/WebContent/swf10/commonVideoViewContentSWF10.lzx
Fri Mar 2 10:26:30 2012
@@ -41,6 +41,9 @@
// client.videoOnMove = this.videoOnMove; function not in use ?!
swagner 04.02.2012
client.updateMuteStatusVideoView = this.updateMuteStatusVideoView;
client.ismoderatorChanged = this.ismoderatorChanged;
+ // update rights to SWF10 client
+ client.updateModerationFlag = this.updateModerationFlag;
+ client.setDrawAllowStatus = this.setDrawAllowStatus
var lc:LocalConnection = new LocalConnection();
lc.connect(canvas.vid_lc_name);
@@ -408,12 +411,13 @@
]]>
</method>
+ <!---
+ Clear all views, probably this is caleld whenever a user leaves
the room for example
+ -->
<method name="clearAll">
<![CDATA[
if ($debug) Debug.write("clearAll", this.subviews);
- //var baseContent = this.subviews[0].close();
while(this.subviews.length > 0) {
- //if ($debug) Debug.write(this.subviews[0]);
this.subviews[0]._chatvideoinner._videostream._stop();
this.subviews[0].destroy();
}
@@ -423,7 +427,29 @@
]]>
</method>
+ <!---
+ Update the ismoderator flag, there is no need to check here which user
+ this happened already before sending it to the SWF10 app
+ -->
+ <method name="updateModerationFlag" args="moderator">
+ <![CDATA[
+ if ($debug) Debug.write("updateModerationFlag :: ",moderator);
+ this.setAttribute('ismoderator',moderator);
+ ]]>
+ </method>
+ <!---
+ Update the canDraw,canShare,canRemote flag, there is no need to check
here which user
+ this happened already before sending it to the SWF10 app
+ -->
+ <method name="setDrawAllowStatus" args="canDraw,canShare,canRemote">
+ <![CDATA[
+ if ($debug) Debug.write("setDrawAllowStatus ::
",canDraw,canShare,canRemote);
+ canvas.setAttribute("isAllowedToDraw",canDraw);
+ canvas.setAttribute("isAllowedToScreenShare",canShare);
+ canvas.setAttribute("isAllowedToRemoteControl",canRemote);
+ ]]>
+ </method>
<!--
function not in use ?! swagner 04.02.2012
Modified:
incubator/openmeetings/trunk/singlewebapp/src/app/org/openmeetings/app/remote/WhiteBoardService.java
URL:
http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/src/app/org/openmeetings/app/remote/WhiteBoardService.java?rev=1296115&r1=1296114&r2=1296115&view=diff
==============================================================================
---
incubator/openmeetings/trunk/singlewebapp/src/app/org/openmeetings/app/remote/WhiteBoardService.java
(original)
+++
incubator/openmeetings/trunk/singlewebapp/src/app/org/openmeetings/app/remote/WhiteBoardService.java
Fri Mar 2 10:26:30 2012
@@ -240,7 +240,7 @@ public class WhiteBoardService implement
newMessage.put(0,
"updateDrawStatus");
newMessage.put(1, rcl);
this.scopeApplicationAdapter
-
.sendMessageWithClient(newMessage);
+
.sendMessageWithClientWithSyncObject(newMessage, true);
} else {
return false;
@@ -282,7 +282,7 @@ public class WhiteBoardService implement
newMessage.put(0,
"updateDrawStatus");
newMessage.put(1, rcl);
this.scopeApplicationAdapter
-
.sendMessageWithClient(newMessage);
+
.sendMessageWithClientWithSyncObject(newMessage, true);
} else {
return false;
@@ -324,7 +324,7 @@ public class WhiteBoardService implement
newMessage.put(0,
"updateDrawStatus");
newMessage.put(1, rcl);
this.scopeApplicationAdapter
-
.sendMessageWithClient(newMessage);
+
.sendMessageWithClientWithSyncObject(newMessage, true);
} else {
return false;
@@ -365,7 +365,7 @@ public class WhiteBoardService implement
newMessage.put(0,
"updateGiveAudioStatus");
newMessage.put(1, rcl);
this.scopeApplicationAdapter
-
.sendMessageWithClient(newMessage);
+
.sendMessageWithClientWithSyncObject(newMessage, true);
} else {
return false;
}
Modified:
incubator/openmeetings/trunk/singlewebapp/src/app/org/openmeetings/app/remote/red5/ScopeApplicationAdapter.java
URL:
http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/src/app/org/openmeetings/app/remote/red5/ScopeApplicationAdapter.java?rev=1296115&r1=1296114&r2=1296115&view=diff
==============================================================================
---
incubator/openmeetings/trunk/singlewebapp/src/app/org/openmeetings/app/remote/red5/ScopeApplicationAdapter.java
(original)
+++
incubator/openmeetings/trunk/singlewebapp/src/app/org/openmeetings/app/remote/red5/ScopeApplicationAdapter.java
Fri Mar 2 10:26:30 2012
@@ -2288,6 +2288,17 @@ public class ScopeApplicationAdapter ext
public synchronized int sendMessageWithClient(Object newMessage) {
try {
+ sendMessageWithClientWithSyncObject(newMessage, false);
+
+ } catch (Exception err) {
+ log.error("[sendMessageWithClient] ", err);
+ return -1;
+ }
+ return 1;
+ }
+
+ public synchronized int sendMessageWithClientWithSyncObject(Object
newMessage, boolean sync) {
+ try {
IConnection current = Red5.getConnectionLocal();
RoomClient currentClient = this.clientListManager
.getClientByStreamId(current.getClient().getId());
@@ -2297,7 +2308,7 @@ public class ScopeApplicationAdapter ext
hsm.put("message", newMessage);
//Sync to all users of current scope
-
syncMessageToCurrentScope("sendVarsToMessageWithClient", hsm, false);
+
syncMessageToCurrentScope("sendVarsToMessageWithClient", hsm, sync);
} catch (Exception err) {
log.error("[sendMessageWithClient] ", err);