Support sending invite reasons with /invite command
Signed-off-by: Robin Townsend <robin@robin.town>
This commit is contained in:
parent
e3065f5a02
commit
c25a8b70fa
1 changed files with 4 additions and 5 deletions
|
@ -441,15 +441,14 @@ export const Commands = [
|
||||||
}),
|
}),
|
||||||
new Command({
|
new Command({
|
||||||
command: 'invite',
|
command: 'invite',
|
||||||
args: '<user-id>',
|
args: '<user-id> [<reason>]',
|
||||||
description: _td('Invites user with given id to current room'),
|
description: _td('Invites user with given id to current room'),
|
||||||
runFn: function(roomId, args) {
|
runFn: function(roomId, args) {
|
||||||
if (args) {
|
if (args) {
|
||||||
const matches = args.match(/^(\S+)$/);
|
const [address, reason] = args.split(/\s+(.+)/);
|
||||||
if (matches) {
|
if (address) {
|
||||||
// We use a MultiInviter to re-use the invite logic, even though
|
// We use a MultiInviter to re-use the invite logic, even though
|
||||||
// we're only inviting one user.
|
// we're only inviting one user.
|
||||||
const address = matches[1];
|
|
||||||
// If we need an identity server but don't have one, things
|
// If we need an identity server but don't have one, things
|
||||||
// get a bit more complex here, but we try to show something
|
// get a bit more complex here, but we try to show something
|
||||||
// meaningful.
|
// meaningful.
|
||||||
|
@ -490,7 +489,7 @@ export const Commands = [
|
||||||
}
|
}
|
||||||
const inviter = new MultiInviter(roomId);
|
const inviter = new MultiInviter(roomId);
|
||||||
return success(prom.then(() => {
|
return success(prom.then(() => {
|
||||||
return inviter.invite([address]);
|
return inviter.invite([address], reason);
|
||||||
}).then(() => {
|
}).then(() => {
|
||||||
if (inviter.getCompletionState(address) !== "invited") {
|
if (inviter.getCompletionState(address) !== "invited") {
|
||||||
throw new Error(inviter.getErrorText(address));
|
throw new Error(inviter.getErrorText(address));
|
||||||
|
|
Loading…
Reference in a new issue