mirror of https://github.com/vector-im/riot-web
Show "Enable encryption in settings" only when the user can do that
Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>pull/21833/head
parent
5a1633d53c
commit
c0d98ba658
|
@ -36,6 +36,7 @@ import { showSpaceInvite } from "../../../utils/space";
|
||||||
import { privateShouldBeEncrypted } from "../../../createRoom";
|
import { privateShouldBeEncrypted } from "../../../createRoom";
|
||||||
import EventTileBubble from "../messages/EventTileBubble";
|
import EventTileBubble from "../messages/EventTileBubble";
|
||||||
import { ROOM_SECURITY_TAB } from "../dialogs/RoomSettingsDialog";
|
import { ROOM_SECURITY_TAB } from "../dialogs/RoomSettingsDialog";
|
||||||
|
import { MatrixClientPeg } from "../../../MatrixClientPeg";
|
||||||
|
|
||||||
function hasExpectedEncryptionSettings(matrixClient: MatrixClient, room: Room): boolean {
|
function hasExpectedEncryptionSettings(matrixClient: MatrixClient, room: Room): boolean {
|
||||||
const isEncrypted: boolean = matrixClient.isRoomEncrypted(room.roomId);
|
const isEncrypted: boolean = matrixClient.isRoomEncrypted(room.roomId);
|
||||||
|
@ -191,11 +192,21 @@ const NewRoomIntro = () => {
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
const sub2 = _t(
|
const subText = _t(
|
||||||
"Your private messages are normally encrypted, but this room isn't. "+
|
"Your private messages are normally encrypted, but this room isn't. "+
|
||||||
"Usually this is due to an unsupported device or method being used, " +
|
"Usually this is due to an unsupported device or method being used, " +
|
||||||
"like email invites. <a>Enable encryption in settings.</a>", {},
|
"like email invites.",
|
||||||
{ a: sub => <a onClick={openRoomSettings} href="#">{ sub }</a> },
|
);
|
||||||
|
|
||||||
|
let subButton;
|
||||||
|
if (room.currentState.mayClientSendStateEvent(EventType.RoomEncryption, MatrixClientPeg.get())) {
|
||||||
|
subButton = (
|
||||||
|
<a onClick={openRoomSettings} href="#"> { _t("Enable encryption in settings.") }</a>
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
const subtitle = (
|
||||||
|
<span> { subText } { subButton } </span>
|
||||||
);
|
);
|
||||||
|
|
||||||
return <div className="mx_NewRoomIntro">
|
return <div className="mx_NewRoomIntro">
|
||||||
|
@ -204,7 +215,7 @@ const NewRoomIntro = () => {
|
||||||
<EventTileBubble
|
<EventTileBubble
|
||||||
className="mx_cryptoEvent mx_cryptoEvent_icon_warning"
|
className="mx_cryptoEvent mx_cryptoEvent_icon_warning"
|
||||||
title={_t("End-to-end encryption isn't enabled")}
|
title={_t("End-to-end encryption isn't enabled")}
|
||||||
subtitle={sub2}
|
subtitle={subtitle}
|
||||||
/>
|
/>
|
||||||
) }
|
) }
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue