3
0
Fork 0
mirror of https://github.com/ZeppelinBot/Zeppelin.git synced 2025-03-15 05:41:51 +00:00

Merge pull request #20 from DarkView/fixLocateUser

Fixed locateUser being unable to load and added w alias for where
This commit is contained in:
Miikka 2020-01-12 11:52:12 +02:00 committed by GitHub
commit d1ba1b34b6
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -78,6 +78,7 @@ export class LocatePlugin extends ZeppelinPlugin<TConfigSchema> {
}
@d.command("where", "<member:resolvedMember>", {
aliases: ["w"],
extra: {
info: {
description: "Posts an instant invite to the voice channel that `<member>` is in",
@ -85,7 +86,7 @@ export class LocatePlugin extends ZeppelinPlugin<TConfigSchema> {
},
})
@d.permission("can_where")
async whereCmd(msg: Message, args: { member: Member; time?: number; reminder?: string }) {
async whereCmd(msg: Message, args: { member: Member }) {
const member = await resolveMember(this.bot, this.guild, args.member.id);
sendWhere(this.guild, member, msg.channel, `${msg.member.mention} |`);
}
@ -100,7 +101,7 @@ export class LocatePlugin extends ZeppelinPlugin<TConfigSchema> {
},
})
@d.permission("can_alert")
async vcalertCmd(msg: Message, args: { member: Member; duration?: number; reminder?: string }) {
async vcalertCmd(msg: Message, args: { member: Member; duration: number; reminder?: string }) {
const time = args.duration || 10 * MINUTES;
const alertTime = moment().add(time, "millisecond");
const body = args.reminder || "None";
@ -183,7 +184,9 @@ export class LocatePlugin extends ZeppelinPlugin<TConfigSchema> {
const member = await resolveMember(this.bot, this.guild, userId);
triggeredAlerts.forEach(alert => {
const prepend = `<@!${alert.requestor_id}>, an alert requested by you has triggered!\nReminder: \`${alert.body}\`\n`;
const prepend = `<@!${alert.requestor_id}>, an alert requested by you has triggered!\nReminder: \`${
alert.body
}\`\n`;
sendWhere(this.guild, member, this.bot.getChannel(alert.channel_id) as TextableChannel, prepend);
this.alerts.delete(alert.id);
});
@ -203,9 +206,15 @@ export async function sendWhere(guild: Guild, member: Member, channel: TextableC
if (voice == null) {
channel.createMessage(prepend + "That user is not in a channel");
} else {
const invite = await createInvite(voice);
let invite = null;
try {
invite = await createInvite(voice);
} catch (e) {
this.sendErrorMessage(channel, "Cannot create an invite to that channel!");
return;
}
channel.createMessage(
prepend + ` ${member.mention} is in the following channel: ${voice.name} https://${getInviteLink(invite)}`,
prepend + ` ${member.mention} is in the following channel: ${voice.name} ${getInviteLink(invite)}`,
);
}
}