Merge branch 'hide-unneeded-components' of https://github.com/capilkey/bigbluebutton into capilkey-hide-unneeded-components

This commit is contained in:
Richard Alam 2017-07-24 18:06:30 -07:00
commit df99ac9689
5 changed files with 118 additions and 108 deletions

View File

@ -1,7 +1,6 @@
<?xml version="1.0" ?>
<config>
<localeversion suppressWarning="false">0.9.0</localeversion>
<version>VERSION</version>
<help url="http://HOST/help.html"/>
<javaTest url="http://HOST/testjava.html"/>
<porttest host="HOST" application="video/portTest" timeout="10000"/>
@ -14,7 +13,7 @@
<browserVersions chrome="CHROME_VERSION" firefox="FIREFOX_VERSION" flash="FLASH_VERSION" java="1.7.0_51" />
<layout showLogButton="false" defaultLayout="bbb.layout.name.defaultlayout"
showToolbar="true" showFooter="true" showMeetingName="true" showHelpButton="true"
showLogoutWindow="true" showLayoutTools="true" confirmLogout="true" showNetworkMonitor="true"
showLogoutWindow="true" showLayoutTools="true" confirmLogout="true" showNetworkMonitor="false"
showRecordingNotification="true" logoutOnStopRecording="false"/>
<meeting muteOnStart="false" />
<breakoutRooms enabled="true" record="false" />
@ -119,7 +118,7 @@
<module name="LayoutModule" url="http://HOST/client/LayoutModule.swf?v=VERSION"
uri="rtmp://HOST/bigbluebutton"
layoutConfig="http://HOST/client/conf/layout.xml"
enableEdit="true"
enableEdit="false"
/>
<module name="SharedNotesModule" url="http://HOST/client/SharedNotesModule.swf?v=VERSION"

View File

@ -52,7 +52,7 @@ package org.bigbluebutton.main.model.options {
public var logoutOnStopRecording:Boolean = false;
[Bindable]
public var showNetworkMonitor:Boolean = true;
public var showNetworkMonitor:Boolean = false;
public var defaultLayout:String = "Default";

View File

@ -85,68 +85,69 @@ with BigBlueButton; if not, see <http://www.gnu.org/licenses/>.
</fx:Declarations>
<fx:Script>
<![CDATA[
import com.asfusion.mate.events.Dispatcher;
import flash.events.Event;
import flash.events.FullScreenEvent;
import flash.events.IOErrorEvent;
import flash.events.TextEvent;
import flash.geom.Point;
import flash.net.navigateToURL;
import mx.binding.utils.ChangeWatcher;
import mx.collections.ArrayCollection;
import mx.controls.Alert;
import mx.core.FlexGlobals;
import mx.core.IFlexDisplayObject;
import mx.core.UIComponent;
import mx.events.FlexEvent;
import flexlib.mdi.effects.effectsLib.MDIVistaEffects;
import org.as3commons.lang.StringUtils;
import org.as3commons.logging.api.ILogger;
import org.as3commons.logging.api.getClassLogger;
import org.bigbluebutton.common.IBbbModuleWindow;
import org.bigbluebutton.common.events.AddUIComponentToMainCanvas;
import org.bigbluebutton.common.events.CloseWindowEvent;
import org.bigbluebutton.common.events.OpenWindowEvent;
import org.bigbluebutton.common.events.ToolbarButtonEvent;
import org.bigbluebutton.core.BBB;
import org.bigbluebutton.core.Options;
import org.bigbluebutton.core.PopUpUtil;
import org.bigbluebutton.core.UsersUtil;
import org.bigbluebutton.core.events.LockControlEvent;
import org.bigbluebutton.core.events.NewGuestWaitingEvent;
import org.bigbluebutton.core.events.SwitchedLayoutEvent;
import org.bigbluebutton.core.vo.LockSettingsVO;
import org.bigbluebutton.main.events.AppVersionEvent;
import org.bigbluebutton.main.events.BBBEvent;
import org.bigbluebutton.main.events.BreakoutRoomEvent;
import org.bigbluebutton.main.events.ClientStatusEvent;
import org.bigbluebutton.main.events.ConfigLoadedEvent;
import org.bigbluebutton.main.events.ExitApplicationEvent;
import org.bigbluebutton.main.events.InvalidAuthTokenEvent;
import org.bigbluebutton.main.events.MeetingNotFoundEvent;
import org.bigbluebutton.main.events.ModuleLoadEvent;
import org.bigbluebutton.main.events.NetworkStatsEvent;
import org.bigbluebutton.main.events.ShortcutEvent;
import org.bigbluebutton.main.model.Guest;
import org.bigbluebutton.main.model.ImageLoader;
import org.bigbluebutton.main.model.options.BrandingOptions;
import org.bigbluebutton.main.model.options.BrowserVersionsOptions;
import org.bigbluebutton.main.model.options.LanguageOptions;
import org.bigbluebutton.main.model.options.LayoutOptions;
import org.bigbluebutton.main.model.users.events.ConnectionFailedEvent;
import org.bigbluebutton.modules.phone.events.AudioSelectionWindowEvent;
import org.bigbluebutton.modules.phone.events.FlashMicSettingsEvent;
import org.bigbluebutton.modules.phone.events.WebRTCCallEvent;
import org.bigbluebutton.modules.phone.events.WebRTCEchoTestEvent;
import org.bigbluebutton.modules.phone.events.WebRTCMediaEvent;
import org.bigbluebutton.modules.phone.models.PhoneOptions;
import org.bigbluebutton.modules.users.views.BreakoutRoomSettings;
import org.bigbluebutton.modules.videoconf.events.ShareCameraRequestEvent;
import org.bigbluebutton.util.i18n.ResourceUtil;
import com.asfusion.mate.events.Dispatcher;
import flash.events.Event;
import flash.events.FullScreenEvent;
import flash.events.IOErrorEvent;
import flash.events.TextEvent;
import flash.geom.Point;
import flash.net.navigateToURL;
import flexlib.mdi.effects.effectsLib.MDIVistaEffects;
import mx.binding.utils.ChangeWatcher;
import mx.collections.ArrayCollection;
import mx.controls.Alert;
import mx.core.FlexGlobals;
import mx.core.IFlexDisplayObject;
import mx.core.UIComponent;
import mx.events.FlexEvent;
import org.as3commons.lang.StringUtils;
import org.as3commons.logging.api.ILogger;
import org.as3commons.logging.api.getClassLogger;
import org.bigbluebutton.common.IBbbModuleWindow;
import org.bigbluebutton.common.events.AddUIComponentToMainCanvas;
import org.bigbluebutton.common.events.CloseWindowEvent;
import org.bigbluebutton.common.events.OpenWindowEvent;
import org.bigbluebutton.common.events.ToolbarButtonEvent;
import org.bigbluebutton.core.BBB;
import org.bigbluebutton.core.Options;
import org.bigbluebutton.core.PopUpUtil;
import org.bigbluebutton.core.UsersUtil;
import org.bigbluebutton.core.events.LockControlEvent;
import org.bigbluebutton.core.events.NewGuestWaitingEvent;
import org.bigbluebutton.core.events.SwitchedLayoutEvent;
import org.bigbluebutton.core.vo.LockSettingsVO;
import org.bigbluebutton.main.events.AppVersionEvent;
import org.bigbluebutton.main.events.BBBEvent;
import org.bigbluebutton.main.events.BreakoutRoomEvent;
import org.bigbluebutton.main.events.ClientStatusEvent;
import org.bigbluebutton.main.events.ConfigLoadedEvent;
import org.bigbluebutton.main.events.ExitApplicationEvent;
import org.bigbluebutton.main.events.InvalidAuthTokenEvent;
import org.bigbluebutton.main.events.MeetingNotFoundEvent;
import org.bigbluebutton.main.events.ModuleLoadEvent;
import org.bigbluebutton.main.events.NetworkStatsEvent;
import org.bigbluebutton.main.events.ShortcutEvent;
import org.bigbluebutton.main.model.Guest;
import org.bigbluebutton.main.model.ImageLoader;
import org.bigbluebutton.main.model.options.BrandingOptions;
import org.bigbluebutton.main.model.options.BrowserVersionsOptions;
import org.bigbluebutton.main.model.options.LanguageOptions;
import org.bigbluebutton.main.model.options.LayoutOptions;
import org.bigbluebutton.main.model.users.events.ConnectionFailedEvent;
import org.bigbluebutton.modules.phone.events.AudioSelectionWindowEvent;
import org.bigbluebutton.modules.phone.events.FlashMicSettingsEvent;
import org.bigbluebutton.modules.phone.events.WebRTCCallEvent;
import org.bigbluebutton.modules.phone.events.WebRTCEchoTestEvent;
import org.bigbluebutton.modules.phone.events.WebRTCMediaEvent;
import org.bigbluebutton.modules.phone.models.PhoneOptions;
import org.bigbluebutton.modules.users.model.UsersOptions;
import org.bigbluebutton.modules.users.views.BreakoutRoomSettings;
import org.bigbluebutton.modules.videoconf.events.ShareCameraRequestEvent;
import org.bigbluebutton.util.i18n.ResourceUtil;
private static const LOGGER:ILogger = getClassLogger(MainApplicationShell);
@ -178,6 +179,7 @@ with BigBlueButton; if not, see <http://www.gnu.org/licenses/>.
[Bindable] private var layoutOptions:LayoutOptions;
[Bindable] private var brandingOptions:BrandingOptions;
[Bindable] private var usersOptions:UsersOptions;
[Bindable] private var showToolbarOpt:Boolean = true;
[Bindable] private var _showToolbar:Boolean = true;
@ -215,7 +217,8 @@ with BigBlueButton; if not, see <http://www.gnu.org/licenses/>.
public function initOptions(e:Event):void {
brandingOptions = Options.getOptions(BrandingOptions) as BrandingOptions;
layoutOptions = Options.getOptions(LayoutOptions) as LayoutOptions;
usersOptions = Options.getOptions(UsersOptions) as UsersOptions;
updateCopyrightText();
loadBackground();
@ -495,7 +498,7 @@ with BigBlueButton; if not, see <http://www.gnu.org/licenses/>.
private function refreshGuestView(evt:NewGuestWaitingEvent):void {
// do not show the guest window if the user isn't moderator or if he's waiting for acceptance
if (!UsersUtil.amIModerator() || UsersUtil.amIWaitingForAcceptance()) {
if (!UsersUtil.amIModerator() || UsersUtil.amIWaitingForAcceptance() && usersOptions.enableGuestUI) {
closeGuestWindow();
return;
}

View File

@ -52,44 +52,45 @@ with BigBlueButton; if not, see <http://www.gnu.org/licenses/>.
</fx:Declarations>
<fx:Script>
<![CDATA[
import com.asfusion.mate.events.Dispatcher;
import mx.binding.utils.BindingUtils;
import mx.controls.Alert;
import mx.core.FlexGlobals;
import mx.core.IToolTip;
import mx.core.UIComponent;
import mx.events.CloseEvent;
import mx.events.ToolTipEvent;
import mx.managers.PopUpManager;
import org.as3commons.lang.ArrayUtils;
import org.as3commons.lang.StringUtils;
import org.as3commons.logging.api.ILogger;
import org.as3commons.logging.api.getClassLogger;
import org.bigbluebutton.common.IBbbToolbarComponent;
import org.bigbluebutton.common.events.SettingsComponentEvent;
import org.bigbluebutton.common.events.ToolbarButtonEvent;
import org.bigbluebutton.core.BBB;
import org.bigbluebutton.core.Options;
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.ConfigLoadedEvent;
import org.bigbluebutton.main.events.LogoutEvent;
import org.bigbluebutton.main.events.NetworkStatsEvent;
import org.bigbluebutton.main.events.SettingsEvent;
import org.bigbluebutton.main.events.ShortcutEvent;
import org.bigbluebutton.main.events.SuccessfulLoginEvent;
import org.bigbluebutton.main.model.NetworkStatsData;
import org.bigbluebutton.main.model.options.BrandingOptions;
import org.bigbluebutton.main.model.options.LayoutOptions;
import org.bigbluebutton.main.model.options.ShortcutKeysOptions;
import org.bigbluebutton.main.model.users.events.ChangeMyRole;
import org.bigbluebutton.main.model.users.events.ConferenceCreatedEvent;
import org.bigbluebutton.main.model.users.events.ConnectionFailedEvent;
import org.bigbluebutton.util.i18n.ResourceUtil;
import com.asfusion.mate.events.Dispatcher;
import mx.binding.utils.BindingUtils;
import mx.controls.Alert;
import mx.core.FlexGlobals;
import mx.core.IToolTip;
import mx.core.UIComponent;
import mx.events.CloseEvent;
import mx.events.ToolTipEvent;
import mx.managers.PopUpManager;
import org.as3commons.lang.ArrayUtils;
import org.as3commons.lang.StringUtils;
import org.as3commons.logging.api.ILogger;
import org.as3commons.logging.api.getClassLogger;
import org.bigbluebutton.common.IBbbToolbarComponent;
import org.bigbluebutton.common.events.SettingsComponentEvent;
import org.bigbluebutton.common.events.ToolbarButtonEvent;
import org.bigbluebutton.core.BBB;
import org.bigbluebutton.core.Options;
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.ConfigLoadedEvent;
import org.bigbluebutton.main.events.LogoutEvent;
import org.bigbluebutton.main.events.NetworkStatsEvent;
import org.bigbluebutton.main.events.SettingsEvent;
import org.bigbluebutton.main.events.ShortcutEvent;
import org.bigbluebutton.main.events.SuccessfulLoginEvent;
import org.bigbluebutton.main.model.NetworkStatsData;
import org.bigbluebutton.main.model.options.BrandingOptions;
import org.bigbluebutton.main.model.options.LayoutOptions;
import org.bigbluebutton.main.model.options.ShortcutKeysOptions;
import org.bigbluebutton.main.model.users.events.ChangeMyRole;
import org.bigbluebutton.main.model.users.events.ConferenceCreatedEvent;
import org.bigbluebutton.main.model.users.events.ConnectionFailedEvent;
import org.bigbluebutton.modules.users.model.UsersOptions;
import org.bigbluebutton.util.i18n.ResourceUtil;
private static const LOGGER:ILogger = getClassLogger(MainToolbar);
@ -104,6 +105,7 @@ with BigBlueButton; if not, see <http://www.gnu.org/licenses/>.
[Bindable] private var showRecordButton:Boolean = false;
[Bindable] public var toolbarOptions:LayoutOptions;
[Bindable] private var brandingOptions:BrandingOptions;
[Bindable] private var usersOptions:UsersOptions;
[Bindable] private var numButtons:int;
@ -127,6 +129,8 @@ with BigBlueButton; if not, see <http://www.gnu.org/licenses/>.
private function init():void{
toolbarOptions = Options.getOptions(LayoutOptions) as LayoutOptions;
brandingOptions = Options.getOptions(BrandingOptions) as BrandingOptions;
usersOptions = Options.getOptions(UsersOptions) as UsersOptions;
numButtons = 0;
// Accessibility isn't active till a few second after the client starts to load so we need a delay
@ -194,7 +198,7 @@ with BigBlueButton; if not, see <http://www.gnu.org/licenses/>.
}
private function refreshModeratorButtonsVisibility(e:*):void {
showGuestSettingsButton = UsersUtil.amIModerator();
showGuestSettingsButton = UsersUtil.amIModerator() && usersOptions.enableGuestUI;
showRecordButton = UsersUtil.amIModerator();
}
@ -544,7 +548,8 @@ with BigBlueButton; if not, see <http://www.gnu.org/licenses/>.
styleName="bandwidthButtonStyle"
toolTip="dummy text"
click="onNetStatsButtonClick()"
visible="{toolbarOptions.showNetworkMonitor}" />
visible="{toolbarOptions.showNetworkMonitor}"
includeInLayout="{toolbarOptions.showNetworkMonitor}"/>
<mx:Button id="shortcutKeysBtn" label="{ResourceUtil.getInstance().getString('bbb.mainToolbar.shortcutBtn')}" styleName="shortcutButtonStyle"
click="onShortcutButtonClick()" height="30"
toolTip="{ResourceUtil.getInstance().getString('bbb.mainToolbar.shortcutBtn.toolTip')}"/>

View File

@ -33,6 +33,9 @@ package org.bigbluebutton.modules.users.model {
[Bindable]
public var enableSettingsButton:Boolean = true;
[Bindable]
public var enableGuestUI:Boolean = false;
public function UsersOptions() {
name = "UsersModule";