Dear Maxim,

We added a menu item (Math Tool) at the level 1 of Room Menu (same as Exit button). We would like moderator to moderate this menu item (make it appear/ disappear) just like the moderator can do for Files menu. We have created a label ID in Application.properties.xml to serve as a tooltip for requesting the menu item. We have created a flag attribute "isAllowedMathMenu” that toggles appearing and disappearing of the menu item. We want to tie this to the visibility of the Math menu item. When audience requests moderator rights by clicking on our new icon resource (mod_mathmenu.png), and is allowed by moderator (allowMathMenu), this variable would get updated, thereby allowing the Math menu item to appear (onisAllowedMathMenu) for the audience to use
(via conferenceMenuBar itemlist member's "visible" attribute).

(i) Do we need to define a new method in ScopeApplicationAdapter.java:
applyForMathMenu and then call it via: canvas.thishib.applyForMathMenu(). It may not be required.

(ii) Should we modify, the setRoomValues method?  If so, which one?
    // participants.lzx
     <netRemoteCallHib name="setRoomValues" funcname="setRoomValues"
or
     // mainMethods.lzx
     <method name="setRoomValues" args="roomTypeId,roomId,roomObj">


(iii) Should we define a method like: canvas.thishib.applyForMathMenu.doCall(); Accordingly, which method will run when moderator approves it, and in that method we would do the following?

(a) Trigger the Room / Menubar to display the new menu dropdown {{ How ? }}

(b) Will updating its "visible" attribute trigger corresponding onvisible method? (c) Is it required to implement such "onvisible" method or is it implicitly triggered?


Below are details
------------------

1.   // Application.properties.xml
 <entry key="1648">Get Math Tools</entry>

2.   In mainAttributes.lzx
    <attribute name="isAllowedMathMenu" value="false" type="boolean" />

It should update this to value TRUE when moderator approves the request from a userwithout giving moderator rightsand also have the visibility of the Math Menu be tied to this attribute.Should it be subordinate to "canvas.currentRoomObj", similar to:
   canvas.currentRoomObj.hideActionsMenu ?

3.  A new icon button is created called: mod_mathmenu_btn.
    Also, define a new icon image holder called: mod_mathmenu_rsc
    Its icon image is called: mod_mathmenu.png.
    And stored in:
~/WebContent/src/modules/conference/flexibleConferenceRoom/resources

4. Add new variable (*allowMathmenu*) to creation call of Moderation Panel, in file:
*baseConferenceRoom.lzx

*// Near line 103
    new lz.moderationPanel(canvas._moderatormenu,{
        name:'_moderationPanel',align:'right',
*allowMathmenu*:this.roomobj.*allowMathmenu*,
        allowUserQuestions:this.roomobj.allowUserQuestions,
        roomName:this.roomobj.name
*
*5.   For canvas variable defined earlier, goto participants.lzx

<moderationMiniIconsEventUserList name="_applyAndStatusIcons" x="2" y="2" >
   <handler name="onismoderator" reference="canvas" args="m">
        this.updateIcons();
   </handler>
. . .
// Define here the “on” handler for that, so that it will be called whenever its value changes:"onisAllowedMathMenu"

<handler name="onisAllowedMathMenu" reference="canvas" args="userObject">
          this.updateIcons();
    </handler>

6.  // moderationMiniIconsEventUserList.lzx

 <miniIconsNew name="mod_mathmenu_btn" y="6"
  innerResource="mod_mathmenu_rsc" width="16" height="16"
visible="${ (canvas.isAllowedMathMenu) ? false : true }" showhandcursor="true">
  <handler name="onclick">
// Now toggle back the state of miniIcon. Onclick would happen only after it was visible
     this.visible=false;


       </handler>
   <labelTooltip inittwice="true" labelid="1648" />
</miniIconsNew>


7. In conferenceMenuBar.lzx, inside the itemlist, the menu member's "visible" attribute)


    <baseMenuMeetingsItem text="$once{ canvas.getLabelName(16XX) }"  . . .>

. . . .
visible="${ canvas.isAllowedMathMenu ? ((classroot.viewType=='conference') ? true : (canvas.ismoderator ? true : false )) }"
   . . . .
</baseMenuMeetingsItem>


--

Regards,

Susheel Jalali

__

Web site:www.CoscendCommunications.com <http://www.coscendcommunications.com/>

------------------------------------------------------------------

CONFIDENTIALITY NOTICE: See 'Confidentiality Notice Regarding E-mail Messages from Coscend Communications Solutions' posted at: http://www.CoscendCommunications.com/Terms_and_Conditions.html <http://www.coscendcommunications.com/Terms_and_Conditions.html>

Reply via email to