- put lock setting out of Conference
This commit is contained in:
parent
2ce9b95775
commit
d8bc6fc2db
@ -5,7 +5,12 @@ gradle clean
|
|||||||
gradle resolveDeps
|
gradle resolveDeps
|
||||||
gradle war deploy
|
gradle war deploy
|
||||||
|
|
||||||
|
sudo chown -R red5.red5 /usr/share/red5/webapps
|
||||||
|
|
||||||
# Remove slf4j jar as it conflicts with logging with red5
|
# Remove slf4j jar as it conflicts with logging with red5
|
||||||
sudo rm /usr/share/red5/webapps/bigbluebutton/WEB-INF/lib/slf4j-api-1.7.23.jar
|
FILE=/usr/share/red5/webapps/bigbluebutton/WEB-INF/lib/slf4j-api-1.7.23.jar
|
||||||
|
if [ -f $FILE ]
|
||||||
|
then
|
||||||
|
sudo rm $FILE
|
||||||
|
fi
|
||||||
|
|
||||||
|
@ -26,8 +26,10 @@ package org.bigbluebutton.core
|
|||||||
import org.bigbluebutton.core.managers.UserManager;
|
import org.bigbluebutton.core.managers.UserManager;
|
||||||
import org.bigbluebutton.core.model.LiveMeeting;
|
import org.bigbluebutton.core.model.LiveMeeting;
|
||||||
import org.bigbluebutton.core.vo.CameraSettingsVO;
|
import org.bigbluebutton.core.vo.CameraSettingsVO;
|
||||||
|
import org.bigbluebutton.core.vo.LockSettingsVO;
|
||||||
|
import org.bigbluebutton.main.model.options.LockOptions;
|
||||||
import org.bigbluebutton.main.model.users.BBBUser;
|
import org.bigbluebutton.main.model.users.BBBUser;
|
||||||
import org.bigbluebutton.util.SessionTokenUtil;
|
import org.bigbluebutton.util.SessionTokenUtil;
|
||||||
|
|
||||||
public class UsersUtil
|
public class UsersUtil
|
||||||
{
|
{
|
||||||
@ -73,16 +75,16 @@ package org.bigbluebutton.core
|
|||||||
return LiveMeeting.inst().meeting.recorded;
|
return LiveMeeting.inst().meeting.recorded;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static function amIPublishing():ArrayCollection {
|
public static function myCamSettings():ArrayCollection {
|
||||||
return UserManager.getInstance().getConference().amIPublishing() as ArrayCollection;
|
return LiveMeeting.inst().myStatus.myCamSettings() as ArrayCollection;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static function addCameraSettings(camSettings:CameraSettingsVO):void {
|
public static function addCameraSettings(camSettings:CameraSettingsVO):void {
|
||||||
UserManager.getInstance().getConference().addCameraSettings(camSettings);
|
LiveMeeting.inst().myStatus.addCameraSettings(camSettings);
|
||||||
}
|
}
|
||||||
|
|
||||||
public static function removeCameraSettings(camIndex:int):void {
|
public static function removeCameraSettings(camIndex:int):void {
|
||||||
UserManager.getInstance().getConference().removeCameraSettings(camIndex);
|
LiveMeeting.inst().myStatus.removeCameraSettings(camIndex);
|
||||||
}
|
}
|
||||||
|
|
||||||
public static function hasWebcamStream(userID:String):Boolean {
|
public static function hasWebcamStream(userID:String):Boolean {
|
||||||
@ -103,6 +105,14 @@ package org.bigbluebutton.core
|
|||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static function setDefaultLayout(defaultLayout:String):void {
|
||||||
|
LiveMeeting.inst().meeting.defaultLayout = defaultLayout;
|
||||||
|
}
|
||||||
|
|
||||||
|
public static function getDefaultLayout():String {
|
||||||
|
return LiveMeeting.inst().meeting.defaultLayout;
|
||||||
|
}
|
||||||
|
|
||||||
public static function getUserIDs():ArrayCollection {
|
public static function getUserIDs():ArrayCollection {
|
||||||
return UserManager.getInstance().getConference().getUserIDs();
|
return UserManager.getInstance().getConference().getUserIDs();
|
||||||
}
|
}
|
||||||
@ -287,5 +297,28 @@ package org.bigbluebutton.core
|
|||||||
myUser.applyLockSettings();
|
myUser.applyLockSettings();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Read default lock settings from config.xml
|
||||||
|
* */
|
||||||
|
public static function configLockSettings():void {
|
||||||
|
var lockOptions:LockOptions = Options.getOptions(LockOptions) as LockOptions;
|
||||||
|
var lockSettings:LockSettingsVO = new LockSettingsVO(lockOptions.disableCam, lockOptions.disableMic,
|
||||||
|
lockOptions.disablePrivateChat, lockOptions.disablePublicChat,
|
||||||
|
lockOptions.lockedLayout, lockOptions.lockOnJoin,
|
||||||
|
lockOptions.lockOnJoinConfigurable);
|
||||||
|
|
||||||
|
setLockSettings(lockSettings);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static function getLockSettings():LockSettingsVO {
|
||||||
|
return LiveMeeting.inst().meetingStatus.lockSettings;
|
||||||
|
}
|
||||||
|
|
||||||
|
public static function setLockSettings(lockSettings:LockSettingsVO):void {
|
||||||
|
LiveMeeting.inst().meetingStatus.lockSettings = lockSettings;
|
||||||
|
UsersUtil.applyLockSettings();
|
||||||
|
UserManager.getInstance().getConference().refreshUsers(); // we need to refresh after updating the lock settings to trigger the user item renderers to redraw
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -18,6 +18,9 @@
|
|||||||
*/
|
*/
|
||||||
package org.bigbluebutton.core.model
|
package org.bigbluebutton.core.model
|
||||||
{
|
{
|
||||||
|
import mx.collections.ArrayCollection;
|
||||||
|
|
||||||
|
import org.bigbluebutton.core.vo.CameraSettingsVO;
|
||||||
|
|
||||||
public class MyStatus {
|
public class MyStatus {
|
||||||
|
|
||||||
@ -41,6 +44,29 @@ package org.bigbluebutton.core.model
|
|||||||
public var isPresenter: Boolean = false;
|
public var isPresenter: Boolean = false;
|
||||||
public var myEmojiStatus: String = "none";
|
public var myEmojiStatus: String = "none";
|
||||||
|
|
||||||
|
private var _myCamSettings:ArrayCollection = new ArrayCollection();
|
||||||
|
|
||||||
|
public function addCameraSettings(camSettings: CameraSettingsVO): void {
|
||||||
|
if(!_myCamSettings.contains(camSettings)) {
|
||||||
|
_myCamSettings.addItem(camSettings);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public function removeCameraSettings(camIndex:int): void {
|
||||||
|
if (camIndex != -1) {
|
||||||
|
for(var i:int = 0; i < _myCamSettings.length; i++) {
|
||||||
|
if (_myCamSettings.getItemAt(i) != null && _myCamSettings.getItemAt(i).camIndex == camIndex) {
|
||||||
|
_myCamSettings.removeItemAt(i);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public function myCamSettings():ArrayCollection {
|
||||||
|
return _myCamSettings;
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -18,77 +18,77 @@
|
|||||||
*/
|
*/
|
||||||
package org.bigbluebutton.core.vo
|
package org.bigbluebutton.core.vo
|
||||||
{
|
{
|
||||||
public class LockSettingsVO
|
public class LockSettingsVO
|
||||||
{
|
{
|
||||||
private var lockOnJoinConfigurable:Boolean;
|
private var lockOnJoinConfigurable:Boolean = true;
|
||||||
private var disableCam:Boolean;
|
private var disableCam:Boolean = false;
|
||||||
private var disableMic:Boolean;
|
private var disableMic:Boolean = false;
|
||||||
private var disablePrivateChat:Boolean;
|
private var disablePrivateChat:Boolean = false;
|
||||||
private var disablePublicChat:Boolean;
|
private var disablePublicChat:Boolean = false;
|
||||||
private var lockedLayout:Boolean;
|
private var lockedLayout:Boolean = false;
|
||||||
private var lockOnJoin:Boolean;
|
private var lockOnJoin:Boolean = false;
|
||||||
|
|
||||||
public function LockSettingsVO(pDisableCam:Boolean,
|
public function LockSettingsVO(pDisableCam:Boolean,
|
||||||
pDisableMic:Boolean,
|
pDisableMic:Boolean,
|
||||||
pDisablePrivateChat:Boolean,
|
pDisablePrivateChat:Boolean,
|
||||||
pDisablePublicChat:Boolean,
|
pDisablePublicChat:Boolean,
|
||||||
pLockLayout: Boolean,
|
pLockLayout: Boolean,
|
||||||
pLockOnJoin:Boolean,
|
pLockOnJoin:Boolean,
|
||||||
pLockOnJoinConfigurable:Boolean)
|
pLockOnJoinConfigurable:Boolean)
|
||||||
{
|
{
|
||||||
this.disableCam = pDisableCam;
|
this.disableCam = pDisableCam;
|
||||||
this.disableMic = pDisableMic;
|
this.disableMic = pDisableMic;
|
||||||
this.disablePrivateChat = pDisablePrivateChat;
|
this.disablePrivateChat = pDisablePrivateChat;
|
||||||
this.disablePublicChat = pDisablePublicChat;
|
this.disablePublicChat = pDisablePublicChat;
|
||||||
this.lockedLayout = pLockLayout;
|
this.lockedLayout = pLockLayout;
|
||||||
this.lockOnJoin = pLockOnJoin;
|
this.lockOnJoin = pLockOnJoin;
|
||||||
this.lockOnJoinConfigurable = pLockOnJoinConfigurable;
|
this.lockOnJoinConfigurable = pLockOnJoinConfigurable;
|
||||||
}
|
}
|
||||||
|
|
||||||
public function toMap():Object {
|
public function toMap():Object {
|
||||||
var map:Object = {
|
var map:Object = {
|
||||||
disableCam: this.disableCam,
|
disableCam: this.disableCam,
|
||||||
disableMic: this.disableMic,
|
disableMic: this.disableMic,
|
||||||
disablePrivateChat: this.disablePrivateChat,
|
disablePrivateChat: this.disablePrivateChat,
|
||||||
disablePublicChat: this.disablePublicChat,
|
disablePublicChat: this.disablePublicChat,
|
||||||
lockedLayout: this.lockedLayout,
|
lockedLayout: this.lockedLayout,
|
||||||
lockOnJoin: this.lockOnJoin,
|
lockOnJoin: this.lockOnJoin,
|
||||||
lockOnJoinConfigurable: this.lockOnJoinConfigurable
|
lockOnJoinConfigurable: this.lockOnJoinConfigurable
|
||||||
};
|
};
|
||||||
|
|
||||||
return map;
|
return map;
|
||||||
}
|
}
|
||||||
|
|
||||||
public function getDisableCam():Boolean {
|
public function getDisableCam():Boolean {
|
||||||
return disableCam;
|
return disableCam;
|
||||||
}
|
}
|
||||||
|
|
||||||
public function getDisableMic():Boolean {
|
public function getDisableMic():Boolean {
|
||||||
return disableMic;
|
return disableMic;
|
||||||
}
|
}
|
||||||
|
|
||||||
public function getDisablePrivateChat():Boolean {
|
public function getDisablePrivateChat():Boolean {
|
||||||
return disablePrivateChat;
|
return disablePrivateChat;
|
||||||
}
|
}
|
||||||
|
|
||||||
public function getDisablePublicChat():Boolean {
|
public function getDisablePublicChat():Boolean {
|
||||||
return disablePublicChat;
|
return disablePublicChat;
|
||||||
}
|
}
|
||||||
|
|
||||||
public function getLockedLayout():Boolean {
|
public function getLockedLayout():Boolean {
|
||||||
return lockedLayout;
|
return lockedLayout;
|
||||||
}
|
}
|
||||||
|
|
||||||
public function getLockOnJoin():Boolean {
|
public function getLockOnJoin():Boolean {
|
||||||
return lockOnJoin;
|
return lockOnJoin;
|
||||||
}
|
}
|
||||||
|
|
||||||
public function getLockOnJoinConfigurable():Boolean {
|
public function getLockOnJoinConfigurable():Boolean {
|
||||||
return lockOnJoinConfigurable;
|
return lockOnJoinConfigurable;
|
||||||
}
|
}
|
||||||
|
|
||||||
public function isAnythingLocked():Boolean {
|
public function isAnythingLocked():Boolean {
|
||||||
return ( lockedLayout || disableCam || disableMic || disablePrivateChat || disablePublicChat );
|
return ( lockedLayout || disableCam || disableMic || disablePrivateChat || disablePublicChat );
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
@ -192,7 +192,7 @@ package org.bigbluebutton.main.api
|
|||||||
var obj:Object = new Object();
|
var obj:Object = new Object();
|
||||||
var camArray: ArrayCollection = new ArrayCollection();
|
var camArray: ArrayCollection = new ArrayCollection();
|
||||||
|
|
||||||
var camSettingsArray:ArrayCollection = UsersUtil.amIPublishing();
|
var camSettingsArray:ArrayCollection = UsersUtil.myCamSettings();
|
||||||
for (var i:int = 0; i < camSettingsArray.length; i++) {
|
for (var i:int = 0; i < camSettingsArray.length; i++) {
|
||||||
var camSettings:CameraSettingsVO = camSettingsArray.getItemAt(i) as CameraSettingsVO;
|
var camSettings:CameraSettingsVO = camSettingsArray.getItemAt(i) as CameraSettingsVO;
|
||||||
var cam:Object = new Object();
|
var cam:Object = new Object();
|
||||||
|
@ -161,7 +161,7 @@ package org.bigbluebutton.main.api
|
|||||||
}
|
}
|
||||||
|
|
||||||
public function handleAmISharingCamQueryEvent(event:AmISharingWebcamQueryEvent):void {
|
public function handleAmISharingCamQueryEvent(event:AmISharingWebcamQueryEvent):void {
|
||||||
var camSettingsArray:ArrayCollection = UsersUtil.amIPublishing();
|
var camSettingsArray:ArrayCollection = UsersUtil.myCamSettings();
|
||||||
var payload:Object = new Object();
|
var payload:Object = new Object();
|
||||||
var camArray: ArrayCollection = new ArrayCollection();
|
var camArray: ArrayCollection = new ArrayCollection();
|
||||||
for (var i:int = 0; i < camSettingsArray.length; i++) {
|
for (var i:int = 0; i < camSettingsArray.length; i++) {
|
||||||
|
@ -1,33 +1,33 @@
|
|||||||
/**
|
/**
|
||||||
* BigBlueButton open source conferencing system - http://www.bigbluebutton.org/
|
* BigBlueButton open source conferencing system - http://www.bigbluebutton.org/
|
||||||
*
|
*
|
||||||
* Copyright (c) 2012 BigBlueButton Inc. and by respective authors (see below).
|
* Copyright (c) 2012 BigBlueButton Inc. and by respective authors (see below).
|
||||||
*
|
*
|
||||||
* This program is free software; you can redistribute it and/or modify it under the
|
* This program is free software; you can redistribute it and/or modify it under the
|
||||||
* terms of the GNU Lesser General Public License as published by the Free Software
|
* terms of the GNU Lesser General Public License as published by the Free Software
|
||||||
* Foundation; either version 3.0 of the License, or (at your option) any later
|
* Foundation; either version 3.0 of the License, or (at your option) any later
|
||||||
* version.
|
* version.
|
||||||
*
|
*
|
||||||
* BigBlueButton is distributed in the hope that it will be useful, but WITHOUT ANY
|
* BigBlueButton is distributed in the hope that it will be useful, but WITHOUT ANY
|
||||||
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
|
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
|
||||||
* PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.
|
* PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.
|
||||||
*
|
*
|
||||||
* You should have received a copy of the GNU Lesser General Public License along
|
* You should have received a copy of the GNU Lesser General Public License along
|
||||||
* with BigBlueButton; if not, see <http://www.gnu.org/licenses/>.
|
* with BigBlueButton; if not, see <http://www.gnu.org/licenses/>.
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
package org.bigbluebutton.main.model
|
package org.bigbluebutton.main.model
|
||||||
{
|
{
|
||||||
public class User
|
public class User
|
||||||
{
|
{
|
||||||
public var room:String;
|
public var room:String;
|
||||||
public var conference:String;
|
public var conference:String;
|
||||||
public var userid:String;
|
public var userid:String;
|
||||||
public var externUserID:String;
|
public var externUserID:String;
|
||||||
public var name:String;
|
public var name:String;
|
||||||
public var role:String;
|
public var role:String;
|
||||||
public var isPresenter:Boolean;
|
public var isPresenter:Boolean;
|
||||||
public var authToken:String;
|
public var authToken:String;
|
||||||
public var guest:Boolean;
|
public var guest:Boolean;
|
||||||
}
|
}
|
||||||
}
|
}
|
@ -402,7 +402,7 @@ package org.bigbluebutton.main.model.users
|
|||||||
}
|
}
|
||||||
|
|
||||||
public function applyLockSettings():void {
|
public function applyLockSettings():void {
|
||||||
var lockSettings:LockSettingsVO = UserManager.getInstance().getConference().getLockSettings();
|
var lockSettings:LockSettingsVO = UsersUtil.getLockSettings();
|
||||||
var amNotModerator:Boolean = !UsersUtil.amIModerator();
|
var amNotModerator:Boolean = !UsersUtil.amIModerator();
|
||||||
var amNotPresenter:Boolean = !UsersUtil.amIPresenter();
|
var amNotPresenter:Boolean = !UsersUtil.amIPresenter();
|
||||||
var lockAppliesToMe:Boolean = me && amNotModerator && amNotPresenter && userLocked;
|
var lockAppliesToMe:Boolean = me && amNotModerator && amNotPresenter && userLocked;
|
||||||
|
@ -32,7 +32,6 @@ package org.bigbluebutton.main.model.users {
|
|||||||
import org.bigbluebutton.core.Options;
|
import org.bigbluebutton.core.Options;
|
||||||
import org.bigbluebutton.core.UsersUtil;
|
import org.bigbluebutton.core.UsersUtil;
|
||||||
import org.bigbluebutton.core.model.LiveMeeting;
|
import org.bigbluebutton.core.model.LiveMeeting;
|
||||||
import org.bigbluebutton.core.vo.CameraSettingsVO;
|
|
||||||
import org.bigbluebutton.core.vo.LockSettingsVO;
|
import org.bigbluebutton.core.vo.LockSettingsVO;
|
||||||
import org.bigbluebutton.main.events.BreakoutRoomEvent;
|
import org.bigbluebutton.main.events.BreakoutRoomEvent;
|
||||||
import org.bigbluebutton.main.model.options.LockOptions;
|
import org.bigbluebutton.main.model.options.LockOptions;
|
||||||
@ -44,10 +43,6 @@ package org.bigbluebutton.main.model.users {
|
|||||||
|
|
||||||
private static const LOGGER:ILogger = getClassLogger(Conference);
|
private static const LOGGER:ILogger = getClassLogger(Conference);
|
||||||
|
|
||||||
private var lockSettings:LockSettingsVO;
|
|
||||||
|
|
||||||
private var _myCamSettings:ArrayCollection = null;
|
|
||||||
|
|
||||||
[Bindable]
|
[Bindable]
|
||||||
public var users:ArrayCollection = null;
|
public var users:ArrayCollection = null;
|
||||||
|
|
||||||
@ -59,8 +54,6 @@ package org.bigbluebutton.main.model.users {
|
|||||||
|
|
||||||
private var sort:Sort;
|
private var sort:Sort;
|
||||||
|
|
||||||
private var defaultLayout:String;
|
|
||||||
|
|
||||||
public function Conference():void {
|
public function Conference():void {
|
||||||
users = new ArrayCollection();
|
users = new ArrayCollection();
|
||||||
sort = new Sort();
|
sort = new Sort();
|
||||||
@ -68,7 +61,7 @@ package org.bigbluebutton.main.model.users {
|
|||||||
users.sort = sort;
|
users.sort = sort;
|
||||||
users.refresh();
|
users.refresh();
|
||||||
breakoutRooms = new ArrayCollection();
|
breakoutRooms = new ArrayCollection();
|
||||||
_myCamSettings = new ArrayCollection();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// Custom sort function for the users ArrayCollection. Need to put dial-in users at the very bottom.
|
// Custom sort function for the users ArrayCollection. Need to put dial-in users at the very bottom.
|
||||||
@ -132,34 +125,7 @@ package org.bigbluebutton.main.model.users {
|
|||||||
users.refresh();
|
users.refresh();
|
||||||
}
|
}
|
||||||
|
|
||||||
public function addCameraSettings(camSettings: CameraSettingsVO): void {
|
|
||||||
if(!_myCamSettings.contains(camSettings)) {
|
|
||||||
_myCamSettings.addItem(camSettings);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public function removeCameraSettings(camIndex:int): void {
|
|
||||||
if (camIndex != -1) {
|
|
||||||
for(var i:int = 0; i < _myCamSettings.length; i++) {
|
|
||||||
if (_myCamSettings.getItemAt(i) != null && _myCamSettings.getItemAt(i).camIndex == camIndex) {
|
|
||||||
_myCamSettings.removeItemAt(i);
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public function amIPublishing():ArrayCollection {
|
|
||||||
return _myCamSettings;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function setDefaultLayout(defaultLayout:String):void {
|
|
||||||
this.defaultLayout = defaultLayout;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function getDefaultLayout():String {
|
|
||||||
return defaultLayout;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function hasUser(userID:String):Boolean {
|
public function hasUser(userID:String):Boolean {
|
||||||
var p:Object = getUserIndex(userID);
|
var p:Object = getUserIndex(userID);
|
||||||
@ -389,18 +355,7 @@ package org.bigbluebutton.main.model.users {
|
|||||||
return uids;
|
return uids;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* Read default lock settings from config.xml
|
|
||||||
* */
|
|
||||||
public function configLockSettings():void {
|
|
||||||
var lockOptions:LockOptions = Options.getOptions(LockOptions) as LockOptions;
|
|
||||||
lockSettings = new LockSettingsVO(lockOptions.disableCam, lockOptions.disableMic,
|
|
||||||
lockOptions.disablePrivateChat, lockOptions.disablePublicChat,
|
|
||||||
lockOptions.lockedLayout, lockOptions.lockOnJoin,
|
|
||||||
lockOptions.lockOnJoinConfigurable);
|
|
||||||
setLockSettings(lockSettings);
|
|
||||||
}
|
|
||||||
|
|
||||||
public function getMyUser():BBBUser {
|
public function getMyUser():BBBUser {
|
||||||
var eachUser:BBBUser;
|
var eachUser:BBBUser;
|
||||||
for (var i:int = 0; i < users.length; i++) {
|
for (var i:int = 0; i < users.length; i++) {
|
||||||
@ -411,14 +366,8 @@ package org.bigbluebutton.main.model.users {
|
|||||||
}
|
}
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
public function getLockSettings():LockSettingsVO {
|
public function refreshUsers():void {
|
||||||
return lockSettings;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function setLockSettings(lockSettings:LockSettingsVO):void {
|
|
||||||
this.lockSettings = lockSettings;
|
|
||||||
UsersUtil.applyLockSettings();
|
|
||||||
users.refresh(); // we need to refresh after updating the lock settings to trigger the user item renderers to redraw
|
users.refresh(); // we need to refresh after updating the lock settings to trigger the user item renderers to redraw
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -101,8 +101,6 @@ package org.bigbluebutton.main.model.users
|
|||||||
if (success) {
|
if (success) {
|
||||||
var meetingOptions : MeetingOptions = Options.getOptions(MeetingOptions) as MeetingOptions;
|
var meetingOptions : MeetingOptions = Options.getOptions(MeetingOptions) as MeetingOptions;
|
||||||
|
|
||||||
LiveMeeting.inst().meetingStatus.lockSettings = UserManager.getInstance().getConference().getLockSettings();
|
|
||||||
|
|
||||||
LiveMeeting.inst().me.id = result.intUserId
|
LiveMeeting.inst().me.id = result.intUserId
|
||||||
LiveMeeting.inst().me.name = result.username;
|
LiveMeeting.inst().me.name = result.username;
|
||||||
LiveMeeting.inst().me.externalId = result.extUserId;
|
LiveMeeting.inst().me.externalId = result.extUserId;
|
||||||
|
@ -222,7 +222,7 @@ with BigBlueButton; if not, see <http://www.gnu.org/licenses/>.
|
|||||||
updateCopyrightText();
|
updateCopyrightText();
|
||||||
loadBackground();
|
loadBackground();
|
||||||
|
|
||||||
UserManager.getInstance().getConference().configLockSettings();
|
UsersUtil.configLockSettings();
|
||||||
showToolbarOpt = layoutOptions.showToolbar;
|
showToolbarOpt = layoutOptions.showToolbar;
|
||||||
if (!showToolbarOpt) {
|
if (!showToolbarOpt) {
|
||||||
toolbarHeight = 0;
|
toolbarHeight = 0;
|
||||||
@ -926,8 +926,7 @@ with BigBlueButton; if not, see <http://www.gnu.org/licenses/>.
|
|||||||
}
|
}
|
||||||
|
|
||||||
private function openLockSettingsWindow(event:LockControlEvent):void {
|
private function openLockSettingsWindow(event:LockControlEvent):void {
|
||||||
var conference:Conference = UserManager.getInstance().getConference();
|
var lsv:LockSettingsVO = UsersUtil.getLockSettings();
|
||||||
var lsv:LockSettingsVO = conference.getLockSettings();
|
|
||||||
|
|
||||||
var popUp:IFlexDisplayObject = PopUpUtil.createModalPopUp(mdiCanvas, LockSettings, false);
|
var popUp:IFlexDisplayObject = PopUpUtil.createModalPopUp(mdiCanvas, LockSettings, false);
|
||||||
if (popUp) {
|
if (popUp) {
|
||||||
|
2
bigbluebutton-client/src/org/bigbluebutton/modules/layout/managers/LayoutManager.as
Normal file → Executable file
2
bigbluebutton-client/src/org/bigbluebutton/modules/layout/managers/LayoutManager.as
Normal file → Executable file
@ -268,7 +268,7 @@ package org.bigbluebutton.modules.layout.managers
|
|||||||
var layoutOptions:LayoutOptions = Options.getOptions(LayoutOptions) as LayoutOptions;
|
var layoutOptions:LayoutOptions = Options.getOptions(LayoutOptions) as LayoutOptions;
|
||||||
var defaultLayout:LayoutDefinition = _layoutModel.getLayout(layoutOptions.defaultLayout);
|
var defaultLayout:LayoutDefinition = _layoutModel.getLayout(layoutOptions.defaultLayout);
|
||||||
|
|
||||||
var sessionDefaulLayout:String = UserManager.getInstance().getConference().getDefaultLayout();
|
var sessionDefaulLayout:String = UsersUtil.getDefaultLayout();
|
||||||
|
|
||||||
if (sessionDefaulLayout != "NOLAYOUT") {
|
if (sessionDefaulLayout != "NOLAYOUT") {
|
||||||
var sesLayout:LayoutDefinition = _layoutModel.getLayout(sessionDefaulLayout);
|
var sesLayout:LayoutDefinition = _layoutModel.getLayout(sessionDefaulLayout);
|
||||||
|
@ -39,9 +39,9 @@ with BigBlueButton; if not, see <http://www.gnu.org/licenses/>.
|
|||||||
<fx:Script>
|
<fx:Script>
|
||||||
<![CDATA[
|
<![CDATA[
|
||||||
import com.asfusion.mate.events.Dispatcher;
|
import com.asfusion.mate.events.Dispatcher;
|
||||||
|
|
||||||
import mx.collections.ArrayCollection;
|
import mx.collections.ArrayCollection;
|
||||||
|
|
||||||
import org.as3commons.logging.api.ILogger;
|
import org.as3commons.logging.api.ILogger;
|
||||||
import org.as3commons.logging.api.getClassLogger;
|
import org.as3commons.logging.api.getClassLogger;
|
||||||
import org.bigbluebutton.common.events.LocaleChangeEvent;
|
import org.bigbluebutton.common.events.LocaleChangeEvent;
|
||||||
@ -130,7 +130,7 @@ with BigBlueButton; if not, see <http://www.gnu.org/licenses/>.
|
|||||||
}
|
}
|
||||||
|
|
||||||
public function refreshRole(amIModerator:Boolean):void {
|
public function refreshRole(amIModerator:Boolean):void {
|
||||||
var layoutLocked:Boolean = UserManager.getInstance().getConference().getLockSettings().getLockedLayout();
|
var layoutLocked:Boolean = UsersUtil.getLockSettings().getLockedLayout();
|
||||||
this.enabled = amIModerator || !layoutLocked;
|
this.enabled = amIModerator || !layoutLocked;
|
||||||
}
|
}
|
||||||
]]>
|
]]>
|
||||||
|
@ -238,7 +238,7 @@ package org.bigbluebutton.modules.users.services
|
|||||||
map.lockedLayout,
|
map.lockedLayout,
|
||||||
map.lockOnJoin,
|
map.lockOnJoin,
|
||||||
map.lockOnJoinConfigurable);
|
map.lockOnJoinConfigurable);
|
||||||
UserManager.getInstance().getConference().setLockSettings(lockSettings);
|
UsersUtil.setLockSettings(lockSettings);
|
||||||
}
|
}
|
||||||
|
|
||||||
private function sendRecordingStatusUpdate(recording:Boolean):void {
|
private function sendRecordingStatusUpdate(recording:Boolean):void {
|
||||||
@ -293,7 +293,7 @@ package org.bigbluebutton.modules.users.services
|
|||||||
|
|
||||||
var lockSettings:LockSettingsVO = new LockSettingsVO(perm.disableCam, perm.disableMic,
|
var lockSettings:LockSettingsVO = new LockSettingsVO(perm.disableCam, perm.disableMic,
|
||||||
perm.disablePrivateChat, perm.disablePublicChat, perm.lockedLayout, perm.lockOnJoin, perm.lockOnJoinConfigurable);
|
perm.disablePrivateChat, perm.disablePublicChat, perm.lockedLayout, perm.lockOnJoin, perm.lockOnJoinConfigurable);
|
||||||
UserManager.getInstance().getConference().setLockSettings(lockSettings);
|
UsersUtil.setLockSettings(lockSettings);
|
||||||
LiveMeeting.inst().meetingStatus.isMeetingMuted = map.meetingMuted;
|
LiveMeeting.inst().meetingStatus.isMeetingMuted = map.meetingMuted;
|
||||||
|
|
||||||
UsersUtil.applyLockSettings();
|
UsersUtil.applyLockSettings();
|
||||||
@ -452,7 +452,7 @@ package org.bigbluebutton.modules.users.services
|
|||||||
bbbEvent.payload.userID = bu.userID;
|
bbbEvent.payload.userID = bu.userID;
|
||||||
globalDispatcher.dispatchEvent(bbbEvent);
|
globalDispatcher.dispatchEvent(bbbEvent);
|
||||||
|
|
||||||
if (_conference.getLockSettings().getDisableMic() && !bu.voiceMuted && bu.userLocked && bu.me) {
|
if (UsersUtil.getLockSettings().getDisableMic() && !bu.voiceMuted && bu.userLocked && bu.me) {
|
||||||
var ev:VoiceConfEvent = new VoiceConfEvent(VoiceConfEvent.MUTE_USER);
|
var ev:VoiceConfEvent = new VoiceConfEvent(VoiceConfEvent.MUTE_USER);
|
||||||
ev.userid = voiceUser.userId;
|
ev.userid = voiceUser.userId;
|
||||||
ev.mute = true;
|
ev.mute = true;
|
||||||
|
@ -179,7 +179,7 @@
|
|||||||
// reset the mute image filter so the talking indicator doesn't stick
|
// reset the mute image filter so the talking indicator doesn't stick
|
||||||
muteImg.filters = null;
|
muteImg.filters = null;
|
||||||
|
|
||||||
var ls:LockSettingsVO = UserManager.getInstance().getConference().getLockSettings();
|
var ls:LockSettingsVO = UsersUtil.getLockSettings();
|
||||||
|
|
||||||
if (data != null) {
|
if (data != null) {
|
||||||
settingsBtn.visible = rolledOver && !data.me && !UsersUtil.isBreakout();
|
settingsBtn.visible = rolledOver && !data.me && !UsersUtil.isBreakout();
|
||||||
|
@ -176,7 +176,7 @@
|
|||||||
resourcesChanged();
|
resourcesChanged();
|
||||||
|
|
||||||
roomMuted = LiveMeeting.inst().meetingStatus.isMeetingMuted;
|
roomMuted = LiveMeeting.inst().meetingStatus.isMeetingMuted;
|
||||||
var lockSettings:LockSettingsVO = UserManager.getInstance().getConference().getLockSettings();
|
var lockSettings:LockSettingsVO = UsersUtil.getLockSettings();
|
||||||
roomLocked = lockSettings.isAnythingLocked() && ( lockSettings.getLockOnJoin() || UsersUtil.isAnyoneLocked());
|
roomLocked = lockSettings.isAnythingLocked() && ( lockSettings.getLockOnJoin() || UsersUtil.isAnyoneLocked());
|
||||||
|
|
||||||
titleBarOverlay.tabIndex = partOptions.baseTabIndex;
|
titleBarOverlay.tabIndex = partOptions.baseTabIndex;
|
||||||
@ -329,7 +329,7 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
private function handleChangedLockSettingsEvent(e:LockControlEvent):void {
|
private function handleChangedLockSettingsEvent(e:LockControlEvent):void {
|
||||||
var lockSettings:LockSettingsVO = UserManager.getInstance().getConference().getLockSettings();
|
var lockSettings:LockSettingsVO = UsersUtil.getLockSettings();
|
||||||
roomLocked = lockSettings.isAnythingLocked() && (lockSettings.getLockOnJoin() || UsersUtil.isAnyoneLocked());
|
roomLocked = lockSettings.isAnythingLocked() && (lockSettings.getLockOnJoin() || UsersUtil.isAnyoneLocked());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -309,7 +309,7 @@ package org.bigbluebutton.modules.videoconf.maps
|
|||||||
|
|
||||||
_isWaitingActivation = false;
|
_isWaitingActivation = false;
|
||||||
|
|
||||||
var arr: ArrayCollection = UsersUtil.amIPublishing();
|
var arr: ArrayCollection = UsersUtil.myCamSettings();
|
||||||
for (var i:int = 0; i < arr.length; i++) {
|
for (var i:int = 0; i < arr.length; i++) {
|
||||||
var broadcastEvent:BroadcastStartedEvent = new BroadcastStartedEvent();
|
var broadcastEvent:BroadcastStartedEvent = new BroadcastStartedEvent();
|
||||||
streamList.addItem(e.stream);
|
streamList.addItem(e.stream);
|
||||||
|
Loading…
Reference in New Issue
Block a user