Better error reporting for failed multi invites
This commit is contained in:
parent
75c9f707e0
commit
435570a022
1 changed files with 27 additions and 2 deletions
|
@ -211,11 +211,15 @@ module.exports = React.createClass({
|
||||||
_startChat: function(addrs) {
|
_startChat: function(addrs) {
|
||||||
if (this.props.roomId) {
|
if (this.props.roomId) {
|
||||||
// Invite new user to a room
|
// Invite new user to a room
|
||||||
|
var self = this;
|
||||||
Invite.inviteMultipleToRoom(this.props.roomId, addrs)
|
Invite.inviteMultipleToRoom(this.props.roomId, addrs)
|
||||||
|
.then(function(addrs) {
|
||||||
|
return self._showAnyInviteErrors(addrs);
|
||||||
|
})
|
||||||
.catch(function(err) {
|
.catch(function(err) {
|
||||||
var ErrorDialog = sdk.getComponent("dialogs.ErrorDialog");
|
var ErrorDialog = sdk.getComponent("dialogs.ErrorDialog");
|
||||||
Modal.createDialog(ErrorDialog, {
|
Modal.createDialog(ErrorDialog, {
|
||||||
title: "Failure to invite user",
|
title: "Failure to invite",
|
||||||
description: err.toString()
|
description: err.toString()
|
||||||
});
|
});
|
||||||
return null;
|
return null;
|
||||||
|
@ -239,10 +243,13 @@ module.exports = React.createClass({
|
||||||
createRoom().then(function(roomId) {
|
createRoom().then(function(roomId) {
|
||||||
return Invite.inviteMultipleToRoom(roomId, addrs);
|
return Invite.inviteMultipleToRoom(roomId, addrs);
|
||||||
})
|
})
|
||||||
|
.then(function(addrs) {
|
||||||
|
return self._showAnyInviteErrors(addrs);
|
||||||
|
})
|
||||||
.catch(function(err) {
|
.catch(function(err) {
|
||||||
var ErrorDialog = sdk.getComponent("dialogs.ErrorDialog");
|
var ErrorDialog = sdk.getComponent("dialogs.ErrorDialog");
|
||||||
Modal.createDialog(ErrorDialog, {
|
Modal.createDialog(ErrorDialog, {
|
||||||
title: "Failure to invite user",
|
title: "Failure to invite",
|
||||||
description: err.toString()
|
description: err.toString()
|
||||||
});
|
});
|
||||||
return null;
|
return null;
|
||||||
|
@ -312,6 +319,24 @@ module.exports = React.createClass({
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
|
_showAnyInviteErrors: function(addrs) {
|
||||||
|
// Show user any errors
|
||||||
|
var errorList = [];
|
||||||
|
for (var addr in addrs) {
|
||||||
|
if (addrs.hasOwnProperty(addr) && addrs[addr] === "error") {
|
||||||
|
errorList.push(addr);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (errorList.length > 0) {
|
||||||
|
var ErrorDialog = sdk.getComponent("dialogs.ErrorDialog");
|
||||||
|
Modal.createDialog(ErrorDialog, {
|
||||||
|
title: "Failed to invite the following users:",
|
||||||
|
description: errorList.join(", "),
|
||||||
|
});
|
||||||
|
}
|
||||||
|
return addrs;
|
||||||
|
},
|
||||||
|
|
||||||
render: function() {
|
render: function() {
|
||||||
var TintableSvg = sdk.getComponent("elements.TintableSvg");
|
var TintableSvg = sdk.getComponent("elements.TintableSvg");
|
||||||
var AddressSelector = sdk.getComponent("elements.AddressSelector");
|
var AddressSelector = sdk.getComponent("elements.AddressSelector");
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue