- display meeting time remaining

This commit is contained in:
Richard Alam 2017-07-25 11:54:13 -07:00
parent ad37b52835
commit 59e149a6e1
6 changed files with 1373 additions and 1376 deletions

View File

@ -15,7 +15,7 @@ trait SendTimeRemainingUpdateHdlr {
def handleSendTimeRemainingUpdate(msg: SendTimeRemainingAuditInternalMsg, state: MeetingState2x): MeetingState2x = {
if (liveMeeting.props.durationProps.duration > 0) {
if (state.expiryTracker.durationInMinutes > 0) {
val endMeetingTime = state.expiryTracker.endMeetingTime()
val timeRemaining = endMeetingTime - TimeUtil.timeNowInSeconds

View File

@ -49,6 +49,7 @@ with BigBlueButton; if not, see <http://www.gnu.org/licenses/>.
<mate:Listener type="{SuccessfulLoginEvent.USER_LOGGED_IN}" method="refreshModeratorButtonsVisibility" />
<mate:Listener type="{ChangeMyRole.CHANGE_MY_ROLE_EVENT}" method="refreshRole" />
<mate:Listener type="{BBBEvent.CONFIRM_LOGOUT_END_MEETING_EVENT}" method="confirmEndSession" />
<mate:Listener type="{BreakoutRoomEvent.UPDATE_REMAINING_TIME_PARENT}" method="handleRemainingTimeUpdate" />
</fx:Declarations>
<fx:Script>
<![CDATA[
@ -72,10 +73,12 @@ with BigBlueButton; if not, see <http://www.gnu.org/licenses/>.
import org.bigbluebutton.common.events.ToolbarButtonEvent;
import org.bigbluebutton.core.BBB;
import org.bigbluebutton.core.Options;
import org.bigbluebutton.core.TimerUtil;
import org.bigbluebutton.core.UsersUtil;
import org.bigbluebutton.core.model.Config;
import org.bigbluebutton.core.model.LiveMeeting;
import org.bigbluebutton.main.events.BBBEvent;
import org.bigbluebutton.main.events.BreakoutRoomEvent;
import org.bigbluebutton.main.events.ConfigLoadedEvent;
import org.bigbluebutton.main.events.LogoutEvent;
import org.bigbluebutton.main.events.NetworkStatsEvent;
@ -186,6 +189,14 @@ with BigBlueButton; if not, see <http://www.gnu.org/licenses/>.
}
}
private function handleRemainingTimeUpdate(e:BreakoutRoomEvent):void {
trace("Displaying remaining time: " + e.durationInMinutes);
// timeRemaining.text = "Remaining time: " + e.durationInMinutes;
// timeRemaining.htmlText = "Remaining time 2:" + e.durationInMinutes;
TimerUtil.setCountDownTimer(timeRemaining, e.durationInMinutes);
}
private function retrieveMeetingName(e:ConferenceCreatedEvent):void {
if (toolbarOptions.showMeetingName) {
var meetingTitle:String = LiveMeeting.inst().meeting.name;
@ -528,6 +539,9 @@ with BigBlueButton; if not, see <http://www.gnu.org/licenses/>.
<mx:VRule styleName="toolbarSeparator" height="10" />
<mx:Label id="meetingNameLbl" minWidth="1" styleName="meetingNameLabelStyle" />
<mx:HBox id="addedBtns" width="100%" horizontalAlign="center"/>
<mx:Label id="timeRemaining"
text="foo-{ResourceUtil.getInstance().getString('bbb.users.breakout.calculatingRemainingTime')}"
toolTip="{ResourceUtil.getInstance().getString('bbb.users.breakout.timer.toolTip')}"/>
<views:RecordButton id="recordBtn" visible="{showRecordButton}" includeInLayout="{showRecordButton}"/>
<views:WebRTCAudioStatus id="webRTCAudioStatus" height="30"/>

View File

@ -61,7 +61,6 @@ with BigBlueButton; if not, see <http://www.gnu.org/licenses/>.
<mate:Listener type="{ShortcutEvent.CHANGE_FONT_COLOUR}" method="focusColourPicker" />
<mate:Listener type="{ShortcutEvent.SEND_MESSAGE}" method="remoteSendMessage" />
<mate:Listener type="{BBBEvent.RECONNECT_DISCONNECTED_EVENT}" receive="refreshChat(event)"/>
<mate:Listener type="{LockControlEvent.CHANGED_LOCK_SETTINGS}" method="lockSettingsChanged" />
<mate:Listener type="{ChangeMyRole.CHANGE_MY_ROLE_EVENT}" method="refreshRole" />
</fx:Declarations>
@ -78,7 +77,6 @@ with BigBlueButton; if not, see <http://www.gnu.org/licenses/>.
import org.as3commons.logging.api.ILogger;
import org.as3commons.logging.api.getClassLogger;
import org.bigbluebutton.core.Options;
import org.bigbluebutton.core.TimerUtil;
import org.bigbluebutton.core.UsersUtil;
import org.bigbluebutton.core.events.LockControlEvent;
import org.bigbluebutton.core.model.LiveMeeting;
@ -176,13 +174,6 @@ with BigBlueButton; if not, see <http://www.gnu.org/licenses/>.
chatMessagesList.accessibilityProperties.description = ResourceUtil.getInstance().getString('bbb.accessibility.chat.initialDescription');
if (publicChat && UsersUtil.isBreakout()){
var timerListener : Listener = new Listener();
timerListener.type = BreakoutRoomEvent.UPDATE_REMAINING_TIME_BREAKOUT;
timerListener.method = handleRemaininTimeBreakout;
timerBox.visible = timerBox.includeInLayout = true;
timerBox.height = 60;
}
LOGGER.debug(" onCreationComplete. Apply lock settings");
applyLockSettings();
@ -192,9 +183,6 @@ with BigBlueButton; if not, see <http://www.gnu.org/licenses/>.
chatMessagesList.addEventListener(ChatEvent.RESIZE_CHAT_TOOLBAR, adjustToolbarWidthAccordingToScrollBar);
}
private function handleRemaininTimeBreakout(e:BreakoutRoomEvent):void {
TimerUtil.setCountDownTimer(timerLabel, e.durationInMinutes);
}
private function checkNavigableButtonDown(e:KeyboardEvent):void {
if (e.shiftKey && !shiftPressed) {
@ -659,22 +647,14 @@ with BigBlueButton; if not, see <http://www.gnu.org/licenses/>.
<mx:VBox width="100%" height="{chatListHeight}" verticalScrollPolicy="off">
<mx:Canvas id="chatMessagesCanvas" width="100%" height="{chatListHeight}" horizontalScrollPolicy="off" verticalScrollPolicy="off" >
<chat:AdvancedList width="100%" height="{chatListHeight - timerBox.height}" id="chatMessagesList" selectable="true" variableRowHeight="true"
<chat:AdvancedList width="100%" height="{chatListHeight}" id="chatMessagesList" selectable="true" variableRowHeight="true"
itemRenderer="org.bigbluebutton.modules.chat.views.ChatMessageRenderer" verticalScrollPolicy="on" horizontalScrollPolicy="off" wordWrap="true"
dataProvider="{chatMessages.messages}"
styleName="chatMessageListStyle"
accessibilityName="{ResourceUtil.getInstance().getString('bbb.chat.messageList')}" />
<chat:ChatToolbar id="chatToolbar" />
</mx:Canvas>
<mx:HBox id="timerBox" styleName="breakoutRoomTimerBox"
includeInLayout="false" visible="false"
width="100%" height="0">
<mx:Label id="timerLabel"
text="{ResourceUtil.getInstance().getString('bbb.users.breakout.calculatingRemainingTime')}"
toolTip="{ResourceUtil.getInstance().getString('bbb.users.breakout.timer.toolTip')}"/>
</mx:HBox>
</mx:VBox>
<mx:HBox id="chatCtrlBar" width="100%" height="60" styleName="chatControlBarStyle" verticalScrollPolicy="off"
paddingLeft="5" paddingRight="5">
<mx:VBox width="100%" height="100%">

View File

@ -726,9 +726,10 @@ package org.bigbluebutton.modules.users.services
}
private function handleMeetingTimeRemainingUpdateEvtMsg(msg:Object):void {
// var e:BreakoutRoomEvent = new BreakoutRoomEvent(BreakoutRoomEvent.UPDATE_REMAINING_TIME_PARENT);
// e.durationInMinutes = msg.body.timeRemaining;
// dispatcher.dispatchEvent(e);
trace("Message meeting time remaining " + msg.body.timeLeftInSec);
var e:BreakoutRoomEvent = new BreakoutRoomEvent(BreakoutRoomEvent.UPDATE_REMAINING_TIME_PARENT);
e.durationInMinutes = msg.body.timeLeftInSec;
dispatcher.dispatchEvent(e);
}
private function handleBreakoutRoomsTimeRemainingUpdate(msg:Object):void {

View File

@ -131,7 +131,7 @@ package org.bigbluebutton.modules.users.services
var message:Object = {
header: {name: "TransferUserToMeetingRequestMsg", meetingId: UsersUtil.getInternalMeetingID(),
userId: UsersUtil.getMyUserID()},
body: {meetingId: fomMeetingId, toMeetingId: toMeetingId, userId: UsersUtil.getMyUserID()}
body: {fomMeetingId: fomMeetingId, toMeetingId: toMeetingId, userId: UsersUtil.getMyUserID()}
};
var _nc:ConnectionManager = BBB.initConnectionManager();

View File

@ -451,6 +451,8 @@
private function handleBreakoutRoomsListUpdatedEvent(event: BreakoutRoomsListUpdatedEvent):void {
breakoutRoomsList = LiveMeeting.inst().breakoutRooms.breakoutRooms;
breakoutRoomsList.refresh();
}
private function handleBreakoutJoinUrl(event:BreakoutRoomEvent):void {