Fix merge conflicts
This commit is contained in:
commit
f020964c50
@ -145,10 +145,13 @@ VOICE_CONFERENCE="bbb-voice-freeswitch.xml"
|
||||
# Determine IP so it works on multilingual installations
|
||||
#
|
||||
|
||||
if ifconfig eth0 > /dev/null 2>&1; then
|
||||
IP=$(LANG=c ifconfig eth0 | grep "inet addr" | awk -F: '{print $2}' | awk '{print $1}')
|
||||
if LANG=c ifconfig | grep -q 'venet0:0'; then
|
||||
# IP detection for OpenVZ environment
|
||||
echo "yes"
|
||||
IP=$(ifconfig | grep -v '127.0.0.1' | grep -E "[0-9]*\.[0-9]*\.[0-9]*\.[0-9]*" | tail -1 | cut -d: -f2 | awk '{ print $1}')
|
||||
else
|
||||
IP=$(ifconfig | grep -v '127.0.0.1' | grep -E "[0-9]*\.[0-9]*\.[0-9]*\.[0-9]*" | tail -1 | cut -d: -f2 | awk '{ print $1}')
|
||||
# IP detection for et* and en* networks
|
||||
IP=$(echo "$(LANG=c ifconfig | awk -v RS="" '{gsub (/\n[ ]*inet /," ")}1' | grep ^et.* | head -n1 | sed 's/.*addr://g' | sed 's/ .*//g')$(LANG=c ifconfig | awk -v RS="" '{gsub (/\n[ ]*inet /," ")}1' | grep ^en.* | head -n1 | sed 's/.*addr://g' | sed 's/ .*//g')" | head -n1)
|
||||
fi
|
||||
|
||||
MEM=`free -m | grep Mem | awk '{ print $2}'`
|
||||
|
@ -4,7 +4,7 @@ import { check } from 'meteor/check';
|
||||
import Logger from '/imports/startup/server/logger';
|
||||
import { isAllowedTo } from '/imports/startup/server/userPermissions';
|
||||
|
||||
Meteor.publish('chat', (credentials) => {
|
||||
Meteor.publish('chat', function(credentials) {
|
||||
if (!isAllowedTo('subscribeChat', credentials)) {
|
||||
this.error(new Meteor.Error(402, "The user was not authorized to subscribe for 'chats'"));
|
||||
}
|
||||
|
2
bigbluebutton-html5/imports/api/polls/server/publishers.js
Normal file → Executable file
2
bigbluebutton-html5/imports/api/polls/server/publishers.js
Normal file → Executable file
@ -4,7 +4,7 @@ import Polls from '/imports/api/polls';
|
||||
import { check } from 'meteor/check';
|
||||
import { logger } from '/imports/startup/server/logger';
|
||||
|
||||
Meteor.publish('polls', (credentials) => {
|
||||
Meteor.publish('polls', function(credentials) {
|
||||
//checking if it is allowed to see Poll Collection in general
|
||||
if (!isAllowedTo('subscribePoll', credentials)) {
|
||||
this.error(new Meteor.Error(402, "The user was not authorized to subscribe for 'polls'"));
|
||||
|
0
bigbluebutton-html5/imports/api/users/server/methods/userLeaving.js
Normal file → Executable file
0
bigbluebutton-html5/imports/api/users/server/methods/userLeaving.js
Normal file → Executable file
@ -9,7 +9,6 @@ const presenter = {
|
||||
subscribePoll: true,
|
||||
subscribeAnswers: true,
|
||||
|
||||
setPresenter: true,
|
||||
};
|
||||
|
||||
// holds the values for whether the moderator user is allowed to perform an action (true)
|
||||
|
@ -4,7 +4,6 @@ let currentModal = {
|
||||
component: null,
|
||||
tracker: new Tracker.Dependency,
|
||||
};
|
||||
const modalDep = new Tracker.Dependency;
|
||||
|
||||
const getModal = () => {
|
||||
currentModal.tracker.depend();
|
||||
@ -38,4 +37,5 @@ export {
|
||||
clearModal,
|
||||
getCaptionsStatus,
|
||||
getFontSize,
|
||||
meetingIsBreakout,
|
||||
};
|
||||
|
@ -93,15 +93,12 @@ class NavBar extends Component {
|
||||
|
||||
renderPresentationTitle() {
|
||||
const {
|
||||
meetingId,
|
||||
currentUserId,
|
||||
breakouts,
|
||||
isBreakoutRoom,
|
||||
presentationTitle,
|
||||
} = this.props;
|
||||
|
||||
const presentationTitle = this.props.presentationTitle;
|
||||
const breakouts = this.props.breakouts;
|
||||
const isMeetingBreakout = breakouts.find(b => b.breakoutMeetingId === meetingId);
|
||||
|
||||
if (!breakouts.length || isMeetingBreakout) {
|
||||
if (isBreakoutRoom) {
|
||||
return (
|
||||
<h1 className={styles.presentationTitle}>{presentationTitle}</h1>
|
||||
);
|
||||
@ -129,9 +126,8 @@ class NavBar extends Component {
|
||||
componentDidUpdate() {
|
||||
const {
|
||||
breakouts,
|
||||
currentUserId,
|
||||
meetingId,
|
||||
getBreakoutJoinURL,
|
||||
isBreakoutRoom,
|
||||
} = this.props;
|
||||
|
||||
breakouts.forEach(breakout => {
|
||||
@ -141,8 +137,7 @@ class NavBar extends Component {
|
||||
|
||||
const breakoutURL = getBreakoutJoinURL(breakout);
|
||||
|
||||
const meetingIsBreakout = meetingId === breakout.breakoutMeetingId;
|
||||
if (!this.state.didSendBreakoutInvite && !meetingIsBreakout) {
|
||||
if (!this.state.didSendBreakoutInvite && !isBreakoutRoom) {
|
||||
this.inviteUserToBreakout(breakout, breakoutURL);
|
||||
}
|
||||
});
|
||||
|
@ -7,6 +7,7 @@ import Auth from '/imports/ui/services/auth';
|
||||
import userListService from '../user-list/service';
|
||||
import ChatService from '../chat/service';
|
||||
import Service from './service';
|
||||
import { meetingIsBreakout } from '/imports/ui/components/app/service';
|
||||
|
||||
import NavBar from './component';
|
||||
|
||||
@ -65,6 +66,7 @@ export default withRouter(createContainer(({ location, router }) => {
|
||||
getBreakoutJoinURL: Service.getBreakoutJoinURL,
|
||||
presentationTitle: meetingTitle,
|
||||
hasUnreadMessages: checkUnreadMessages(),
|
||||
isBreakoutRoom: meetingIsBreakout(),
|
||||
beingRecorded: meetingRecorded,
|
||||
toggleUserList: () => {
|
||||
if (location.pathname.indexOf('/users') !== -1) {
|
||||
|
@ -42,7 +42,7 @@ export default class Settings extends Component {
|
||||
cc: _.clone(cc),
|
||||
participants: _.clone(participants),
|
||||
},
|
||||
selectedTab: 2,
|
||||
selectedTab: 0,
|
||||
};
|
||||
|
||||
this.handleSettingsApply = props.updateSettings;
|
||||
|
@ -39,7 +39,7 @@ const setDefaultSettings = () => {
|
||||
application: {
|
||||
chatAudioNotifications: false,
|
||||
chatPushNotifications: false,
|
||||
fontSize: '14px',
|
||||
fontSize: '16px',
|
||||
},
|
||||
audio: {
|
||||
inputDeviceId: undefined,
|
||||
|
@ -116,6 +116,7 @@ class UserList extends Component {
|
||||
currentUser,
|
||||
userActions,
|
||||
compact,
|
||||
isBreakoutRoom,
|
||||
} = this.props;
|
||||
|
||||
return (
|
||||
@ -146,6 +147,7 @@ class UserList extends Component {
|
||||
<UserListItem
|
||||
compact={this.state.compact}
|
||||
key={user.id}
|
||||
isBreakoutRoom={isBreakoutRoom}
|
||||
user={user}
|
||||
currentUser={currentUser}
|
||||
userActions={userActions}
|
||||
|
@ -1,5 +1,6 @@
|
||||
import React, { Component } from 'react';
|
||||
import { createContainer } from 'meteor/react-meteor-data';
|
||||
import { meetingIsBreakout } from '/imports/ui/components/app/service';
|
||||
import Service from './service.js';
|
||||
|
||||
import UserList from './component.jsx';
|
||||
@ -13,6 +14,7 @@ class UserListContainer extends Component {
|
||||
openChats,
|
||||
openChat,
|
||||
userActions,
|
||||
isBreakoutRoom,
|
||||
children,
|
||||
} = this.props;
|
||||
|
||||
@ -23,6 +25,7 @@ class UserListContainer extends Component {
|
||||
currentUser={currentUser}
|
||||
openChats={openChats}
|
||||
openChat={openChat}
|
||||
isBreakoutRoom={isBreakoutRoom}
|
||||
userActions={userActions}>
|
||||
{children}
|
||||
</UserList>
|
||||
@ -36,4 +39,5 @@ export default createContainer(({ params }) => ({
|
||||
openChats: Service.getOpenChats(params.chatID),
|
||||
openChat: params.chatID,
|
||||
userActions: Service.userActions,
|
||||
isBreakoutRoom: meetingIsBreakout(),
|
||||
}), UserListContainer);
|
||||
|
@ -102,6 +102,7 @@ class UserListItem extends Component {
|
||||
user,
|
||||
userActions,
|
||||
router,
|
||||
isBreakoutRoom,
|
||||
} = this.props;
|
||||
|
||||
const {
|
||||
@ -120,7 +121,7 @@ class UserListItem extends Component {
|
||||
let allowedToResetStatus = hasAuthority && user.emoji.status != 'none';
|
||||
|
||||
// if currentUser is a moderator, allow kicking other users
|
||||
let allowedToKick = currentUser.isModerator && !user.isCurrent;
|
||||
let allowedToKick = currentUser.isModerator && !user.isCurrent && !isBreakoutRoom;
|
||||
|
||||
let allowedToSetPresenter = (currentUser.isModerator || currentUser.isPresenter) && !user.isPresenter;
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user