Merge pull request #230 from dev-kittens/fix/log-channel-clear
Fix log channel clear matching
This commit is contained in:
commit
f9db2558dd
@ -26,20 +26,24 @@ namespace PluralKit.Bot
|
|||||||
{
|
{
|
||||||
ctx.CheckGuildContext().CheckAuthorPermission(Permissions.ManageGuild, "Manage Server");
|
ctx.CheckGuildContext().CheckAuthorPermission(Permissions.ManageGuild, "Manage Server");
|
||||||
|
|
||||||
DiscordChannel channel = null;
|
if (ctx.MatchClear())
|
||||||
|
{
|
||||||
|
await _db.Execute(conn => _repo.UpsertGuild(conn, ctx.Guild.Id, new GuildPatch {LogChannel = null}));
|
||||||
|
await ctx.Reply($"{Emojis.Success} Proxy logging channel cleared.");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
if (!ctx.HasNext())
|
if (!ctx.HasNext())
|
||||||
throw new PKSyntaxError("You must pass a #channel to set.");
|
throw new PKSyntaxError("You must pass a #channel to set, or `clear` to clear it.");
|
||||||
|
|
||||||
|
DiscordChannel channel = null;
|
||||||
var channelString = ctx.PeekArgument();
|
var channelString = ctx.PeekArgument();
|
||||||
channel = await ctx.MatchChannel();
|
channel = await ctx.MatchChannel();
|
||||||
if (channel == null || channel.GuildId != ctx.Guild.Id) throw Errors.ChannelNotFound(channelString);
|
if (channel == null || channel.GuildId != ctx.Guild.Id) throw Errors.ChannelNotFound(channelString);
|
||||||
|
|
||||||
var patch = new GuildPatch {LogChannel = channel?.Id};
|
var patch = new GuildPatch {LogChannel = channel.Id};
|
||||||
await _db.Execute(conn => _repo.UpsertGuild(conn, ctx.Guild.Id, patch));
|
await _db.Execute(conn => _repo.UpsertGuild(conn, ctx.Guild.Id, patch));
|
||||||
|
|
||||||
if (channel != null)
|
|
||||||
await ctx.Reply($"{Emojis.Success} Proxy logging channel set to #{channel.Name}.");
|
await ctx.Reply($"{Emojis.Success} Proxy logging channel set to #{channel.Name}.");
|
||||||
else
|
|
||||||
await ctx.Reply($"{Emojis.Success} Proxy logging channel cleared.");
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public async Task SetLogEnabled(Context ctx, bool enable)
|
public async Task SetLogEnabled(Context ctx, bool enable)
|
||||||
|
Loading…
Reference in New Issue
Block a user