mirror of https://github.com/vector-im/riot-web
Merge remote-tracking branch 'origin/develop' into develop
commit
fb29eff011
|
@ -349,6 +349,34 @@ export default class MessageComposer extends React.Component {
|
||||||
const canSendMessages = !this.state.tombstone &&
|
const canSendMessages = !this.state.tombstone &&
|
||||||
this.props.room.maySendMessage();
|
this.props.room.maySendMessage();
|
||||||
|
|
||||||
|
// TODO: Remove temporary logging for riot-web#7838
|
||||||
|
// Note: we rip apart the power level event ourselves because we don't want to
|
||||||
|
// log too much data about it - just the bits we care about. Many of the variables
|
||||||
|
// logged here are to help figure out where in the stack the 'cannot post in room'
|
||||||
|
// warning is coming from. This means logging various numbers from the PL event to
|
||||||
|
// verify RoomState._maySendEventOfType is doing the right thing.
|
||||||
|
const room = this.props.room;
|
||||||
|
const plEvent = room.currentState.getStateEvents('m.room.power_levels', '');
|
||||||
|
let plEventString = "<no power level event>";
|
||||||
|
if (plEvent) {
|
||||||
|
const content = plEvent.getContent();
|
||||||
|
if (!content) {
|
||||||
|
plEventString = "<no event content>";
|
||||||
|
} else {
|
||||||
|
const stringifyFalsey = (v) => v === null ? '<null>' : (v === undefined ? '<undefined>' : v);
|
||||||
|
const actualUserPl = stringifyFalsey(content.users ? content.users[room.myUserId] : "<no users in content>");
|
||||||
|
const usersPl = stringifyFalsey(content.users_default);
|
||||||
|
const actualEventPl = stringifyFalsey(content.events ? content.events['m.room.message'] : "<no events in content>");
|
||||||
|
const eventPl = stringifyFalsey(content.events_default);
|
||||||
|
plEventString = `actualUserPl=${actualUserPl} defaultUserPl=${usersPl} actualEventPl=${actualEventPl} defaultEventPl=${eventPl}`;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
console.log(
|
||||||
|
`[riot-web#7838] renderComposer() hasTombstone=${!!this.state.tombstone} maySendMessage=${room.maySendMessage()}` +
|
||||||
|
` myMembership=${room.getMyMembership()} maySendEvent=${room.currentState.maySendEvent('m.room.message', room.myUserId)}` +
|
||||||
|
` myUserId=${room.myUserId} roomId=${room.roomId} hasPlEvent=${!!plEvent} powerLevels='${plEventString}'`
|
||||||
|
);
|
||||||
|
|
||||||
if (canSendMessages) {
|
if (canSendMessages) {
|
||||||
// This also currently includes the call buttons. Really we should
|
// This also currently includes the call buttons. Really we should
|
||||||
// check separately for whether we can call, but this is slightly
|
// check separately for whether we can call, but this is slightly
|
||||||
|
@ -425,6 +453,8 @@ export default class MessageComposer extends React.Component {
|
||||||
</div>
|
</div>
|
||||||
</div>);
|
</div>);
|
||||||
} else {
|
} else {
|
||||||
|
// TODO: Remove temporary logging for riot-web#7838
|
||||||
|
console.log("[riot-web#7838] Falling back to showing cannot post in room error");
|
||||||
controls.push(
|
controls.push(
|
||||||
<div key="controls_error" className="mx_MessageComposer_noperm_error">
|
<div key="controls_error" className="mx_MessageComposer_noperm_error">
|
||||||
{ _t('You do not have permission to post to this room') }
|
{ _t('You do not have permission to post to this room') }
|
||||||
|
|
Loading…
Reference in New Issue