Make invite work without an IS
Also fix it so you can't try to invite a room ID to a roompull/21833/head
parent
366f7e277a
commit
bcf53c6e33
|
@ -251,7 +251,7 @@ function _registerAsGuest(hsUrl, isUrl, defaultDeviceDisplayName) {
|
||||||
*/
|
*/
|
||||||
export function getLocalStorageSessionVars() {
|
export function getLocalStorageSessionVars() {
|
||||||
const hsUrl = localStorage.getItem("mx_hs_url");
|
const hsUrl = localStorage.getItem("mx_hs_url");
|
||||||
const isUrl = localStorage.getItem("mx_is_url") || 'https://matrix.org';
|
const isUrl = localStorage.getItem("mx_is_url");
|
||||||
const accessToken = localStorage.getItem("mx_access_token");
|
const accessToken = localStorage.getItem("mx_access_token");
|
||||||
const userId = localStorage.getItem("mx_user_id");
|
const userId = localStorage.getItem("mx_user_id");
|
||||||
const deviceId = localStorage.getItem("mx_device_id");
|
const deviceId = localStorage.getItem("mx_device_id");
|
||||||
|
@ -479,7 +479,9 @@ class AbortLoginAndRebuildStorage extends Error { }
|
||||||
|
|
||||||
function _persistCredentialsToLocalStorage(credentials) {
|
function _persistCredentialsToLocalStorage(credentials) {
|
||||||
localStorage.setItem("mx_hs_url", credentials.homeserverUrl);
|
localStorage.setItem("mx_hs_url", credentials.homeserverUrl);
|
||||||
|
if (credentials.identityServerUrl) {
|
||||||
localStorage.setItem("mx_is_url", credentials.identityServerUrl);
|
localStorage.setItem("mx_is_url", credentials.identityServerUrl);
|
||||||
|
}
|
||||||
localStorage.setItem("mx_user_id", credentials.userId);
|
localStorage.setItem("mx_user_id", credentials.userId);
|
||||||
localStorage.setItem("mx_access_token", credentials.accessToken);
|
localStorage.setItem("mx_access_token", credentials.accessToken);
|
||||||
localStorage.setItem("mx_is_guest", JSON.stringify(credentials.guest));
|
localStorage.setItem("mx_is_guest", JSON.stringify(credentials.guest));
|
||||||
|
|
|
@ -42,11 +42,17 @@ function inviteMultipleToRoom(roomId, addrs) {
|
||||||
|
|
||||||
export function showStartChatInviteDialog() {
|
export function showStartChatInviteDialog() {
|
||||||
const AddressPickerDialog = sdk.getComponent("dialogs.AddressPickerDialog");
|
const AddressPickerDialog = sdk.getComponent("dialogs.AddressPickerDialog");
|
||||||
|
|
||||||
|
const validAddressTypes = ['mx-user-id'];
|
||||||
|
if (MatrixClientPeg.get().getIdentityServerUrl()) {
|
||||||
|
validAddressTypes.push('email');
|
||||||
|
}
|
||||||
|
|
||||||
Modal.createTrackedDialog('Start a chat', '', AddressPickerDialog, {
|
Modal.createTrackedDialog('Start a chat', '', AddressPickerDialog, {
|
||||||
title: _t('Start a chat'),
|
title: _t('Start a chat'),
|
||||||
description: _t("Who would you like to communicate with?"),
|
description: _t("Who would you like to communicate with?"),
|
||||||
placeholder: _t("Email, name or Matrix ID"),
|
placeholder: _t("Email, name or Matrix ID"),
|
||||||
validAddressTypes: ['mx-user-id', 'email'],
|
validAddressTypes,
|
||||||
button: _t("Start Chat"),
|
button: _t("Start Chat"),
|
||||||
onFinished: _onStartChatFinished,
|
onFinished: _onStartChatFinished,
|
||||||
});
|
});
|
||||||
|
@ -54,11 +60,18 @@ export function showStartChatInviteDialog() {
|
||||||
|
|
||||||
export function showRoomInviteDialog(roomId) {
|
export function showRoomInviteDialog(roomId) {
|
||||||
const AddressPickerDialog = sdk.getComponent("dialogs.AddressPickerDialog");
|
const AddressPickerDialog = sdk.getComponent("dialogs.AddressPickerDialog");
|
||||||
|
|
||||||
|
const validAddressTypes = ['mx-user-id'];
|
||||||
|
if (MatrixClientPeg.get().getIdentityServerUrl()) {
|
||||||
|
validAddressTypes.push('email');
|
||||||
|
}
|
||||||
|
|
||||||
Modal.createTrackedDialog('Chat Invite', '', AddressPickerDialog, {
|
Modal.createTrackedDialog('Chat Invite', '', AddressPickerDialog, {
|
||||||
title: _t('Invite new room members'),
|
title: _t('Invite new room members'),
|
||||||
description: _t('Who would you like to add to this room?'),
|
description: _t('Who would you like to add to this room?'),
|
||||||
button: _t('Send Invites'),
|
button: _t('Send Invites'),
|
||||||
placeholder: _t("Email, name or Matrix ID"),
|
placeholder: _t("Email, name or Matrix ID"),
|
||||||
|
validAddressTypes,
|
||||||
onFinished: (shouldInvite, addrs) => {
|
onFinished: (shouldInvite, addrs) => {
|
||||||
_onRoomInviteFinished(roomId, shouldInvite, addrs);
|
_onRoomInviteFinished(roomId, shouldInvite, addrs);
|
||||||
},
|
},
|
||||||
|
|
Loading…
Reference in New Issue