From 2262a10849b295a13c8b3ef7f55cb84ddd336715 Mon Sep 17 00:00:00 2001 From: Octol1ttle Date: Fri, 9 Jun 2023 21:30:06 +0500 Subject: [PATCH] Encode Reason field in /ban and /unban to allow for non-ASCII characters Signed-off-by: Octol1ttle --- Commands/BanCommand.cs | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/Commands/BanCommand.cs b/Commands/BanCommand.cs index 6566d68..84c212f 100644 --- a/Commands/BanCommand.cs +++ b/Commands/BanCommand.cs @@ -1,4 +1,5 @@ using System.ComponentModel; +using System.Net; using Boyfriend.Services; using Boyfriend.Services.Data; using Remora.Commands.Attributes; @@ -86,7 +87,8 @@ public class BanCommand : CommandGroup { return Result.FromError(userResult); var banResult = await _guildApi.CreateGuildBanAsync( - guildId.Value, target.ID, reason: $"({user.GetTag()}) {reason}", ct: CancellationToken); + guildId.Value, target.ID, reason: $"({user.GetTag()}) {WebUtility.UrlEncode(reason)}", + ct: CancellationToken); if (!banResult.IsSuccess) return Result.FromError(banResult.Error); @@ -155,7 +157,8 @@ public class BanCommand : CommandGroup { return Result.FromError(userResult); var banResult = await _guildApi.CreateGuildBanAsync( - guildId.Value, target.ID, reason: $"({user.GetTag()}) {reason}", ct: CancellationToken); + guildId.Value, target.ID, reason: $"({user.GetTag()}) {WebUtility.UrlEncode(reason)}", + ct: CancellationToken); if (!banResult.IsSuccess) return Result.FromError(banResult.Error);