From 173b1b08f76e9f0cdda3ba96f9948d01e1be2b7c Mon Sep 17 00:00:00 2001 From: Fabi-Chan Date: Sat, 23 Dec 2023 19:48:35 +0100 Subject: [PATCH] Refactor code for readability and clarity --- src/Commands/Moderation/BanRequestCommand.cs | 4 +- src/Commands/Moderation/BanUserCommand.cs | 3 +- src/Commands/Moderation/MultiBanCommand.cs | 3 +- .../Moderation/MultiBanRequestCommand.cs | 3 +- src/Commands/Moderation/MultiWarnCommand.cs | 3 +- src/Commands/Moderation/PermaWarnCommand.cs | 3 +- src/Commands/Moderation/WarnUserCommand.cs | 3 +- .../Utilities/ReasonTemplateManager.cs | 18 ++++--- src/Commands/Utilities/UserReportMessage.cs | 54 +++++++++++-------- src/Utils/Helpers.cs | 15 +++--- src/Utils/ReasonTemplateResolver.cs | 1 - src/Utils/Ticket/SnippetManagerHelper.cs | 2 +- src/Utils/Ticket/TicketManagerHelper.cs | 3 -- 13 files changed, 65 insertions(+), 50 deletions(-) diff --git a/src/Commands/Moderation/BanRequestCommand.cs b/src/Commands/Moderation/BanRequestCommand.cs index 21b3e830..8896501f 100644 --- a/src/Commands/Moderation/BanRequestCommand.cs +++ b/src/Commands/Moderation/BanRequestCommand.cs @@ -2,7 +2,6 @@ using AGC_Management.Attributes; using AGC_Management.Utils; -using AGC_Management.Managers; using DisCatSharp.CommandsNext; using DisCatSharp.CommandsNext.Attributes; using DisCatSharp.Entities; @@ -201,7 +200,8 @@ public async Task BanRequest(CommandContext ctx, DiscordUser user, [RemainingTex var semoji = sent ? "<:yes:861266772665040917>" : "<:no:861266772724023296>"; try { - await ctx.Guild.BanMemberAsync(user.Id, await Helpers.GenerateBannDeleteMessageDays(user.Id), ReasonString); + await ctx.Guild.BanMemberAsync(user.Id, await Helpers.GenerateBannDeleteMessageDays(user.Id), + ReasonString); var dm = sent ? "✅" : "❌"; b_users += $"{user.UsernameWithDiscriminator} | DM: {dm}\n"; } diff --git a/src/Commands/Moderation/BanUserCommand.cs b/src/Commands/Moderation/BanUserCommand.cs index 66e0c061..48e65408 100644 --- a/src/Commands/Moderation/BanUserCommand.cs +++ b/src/Commands/Moderation/BanUserCommand.cs @@ -116,7 +116,8 @@ public async Task BanMember(CommandContext ctx, DiscordUser user, [RemainingText var semoji = sent ? "<:yes:861266772665040917>" : "<:no:861266772724023296>"; try { - await ctx.Guild.BanMemberAsync(user.Id, await Helpers.GenerateBannDeleteMessageDays(user.Id), ReasonString); + await ctx.Guild.BanMemberAsync(user.Id, await Helpers.GenerateBannDeleteMessageDays(user.Id), + ReasonString); var dm = sent ? "✅" : "❌"; b_users += $"{user.UsernameWithDiscriminator} | DM: {dm}\n"; } diff --git a/src/Commands/Moderation/MultiBanCommand.cs b/src/Commands/Moderation/MultiBanCommand.cs index e7174bda..83095ee3 100644 --- a/src/Commands/Moderation/MultiBanCommand.cs +++ b/src/Commands/Moderation/MultiBanCommand.cs @@ -147,7 +147,8 @@ public async Task MultiBan(CommandContext ctx, [RemainingText] string ids_and_re var semoji = sent ? "<:yes:861266772665040917>" : "<:no:861266772724023296>"; try { - await ctx.Guild.BanMemberAsync(user.Id, await Helpers.GenerateBannDeleteMessageDays(user.Id), reasonString); + await ctx.Guild.BanMemberAsync(user.Id, await Helpers.GenerateBannDeleteMessageDays(user.Id), + reasonString); var dm = sent ? "✅" : "❌"; b_users += $"{user.UsernameWithDiscriminator} | DM: {dm}\n"; } diff --git a/src/Commands/Moderation/MultiBanRequestCommand.cs b/src/Commands/Moderation/MultiBanRequestCommand.cs index cf6d6684..291748a4 100644 --- a/src/Commands/Moderation/MultiBanRequestCommand.cs +++ b/src/Commands/Moderation/MultiBanRequestCommand.cs @@ -257,7 +257,8 @@ public async Task MultiBanRequest(CommandContext ctx, [RemainingText] string ids var semoji = sent ? "<:yes:861266772665040917>" : "<:no:861266772724023296>"; try { - await ctx.Guild.BanMemberAsync(user.Id, await Helpers.GenerateBannDeleteMessageDays(user.Id), ReasonString); + await ctx.Guild.BanMemberAsync(user.Id, await Helpers.GenerateBannDeleteMessageDays(user.Id), + ReasonString); var dm = sent ? "✅" : "❌"; b_users += $"{user.UsernameWithDiscriminator} | DM: {dm}\n"; } diff --git a/src/Commands/Moderation/MultiWarnCommand.cs b/src/Commands/Moderation/MultiWarnCommand.cs index f7c62044..fab7609a 100644 --- a/src/Commands/Moderation/MultiWarnCommand.cs +++ b/src/Commands/Moderation/MultiWarnCommand.cs @@ -191,7 +191,8 @@ public async Task MultiWarnUser(CommandContext ctx, [RemainingText] string ids_a { if (BanEnabled) { - await ctx.Guild.BanMemberAsync(user, await Helpers.GenerateBannDeleteMessageDays(user.Id), reasonString); + await ctx.Guild.BanMemberAsync(user, await Helpers.GenerateBannDeleteMessageDays(user.Id), + reasonString); uAction = "Gebannt"; } } diff --git a/src/Commands/Moderation/PermaWarnCommand.cs b/src/Commands/Moderation/PermaWarnCommand.cs index 5af58eec..be0134ee 100644 --- a/src/Commands/Moderation/PermaWarnCommand.cs +++ b/src/Commands/Moderation/PermaWarnCommand.cs @@ -152,7 +152,8 @@ public async Task PermaWarnUser(CommandContext ctx, DiscordUser user, [Remaining { if (BanEnabled) { - await ctx.Guild.BanMemberAsync(user, await Helpers.GenerateBannDeleteMessageDays(user.Id), reasonString); + await ctx.Guild.BanMemberAsync(user, await Helpers.GenerateBannDeleteMessageDays(user.Id), + reasonString); uAction = "Gebannt"; } } diff --git a/src/Commands/Moderation/WarnUserCommand.cs b/src/Commands/Moderation/WarnUserCommand.cs index bea96ca2..57c73bc7 100644 --- a/src/Commands/Moderation/WarnUserCommand.cs +++ b/src/Commands/Moderation/WarnUserCommand.cs @@ -152,7 +152,8 @@ public async Task WarnUser(CommandContext ctx, DiscordUser user, [RemainingText] { if (BanEnabled) { - await ctx.Guild.BanMemberAsync(user, await Helpers.GenerateBannDeleteMessageDays(user.Id), reasonString); + await ctx.Guild.BanMemberAsync(user, await Helpers.GenerateBannDeleteMessageDays(user.Id), + reasonString); uAction = "Gebannt"; } } diff --git a/src/Commands/Utilities/ReasonTemplateManager.cs b/src/Commands/Utilities/ReasonTemplateManager.cs index 7cd8e562..793af604 100644 --- a/src/Commands/Utilities/ReasonTemplateManager.cs +++ b/src/Commands/Utilities/ReasonTemplateManager.cs @@ -1,9 +1,13 @@ -using AGC_Management.Attributes; -using DisCatSharp.CommandsNext; +#region + +using AGC_Management.Attributes; using AGC_Management.Utils; +using DisCatSharp.CommandsNext; using DisCatSharp.CommandsNext.Attributes; using DisCatSharp.Entities; +#endregion + namespace AGC_Management.Commands; [Group("template")] @@ -25,13 +29,15 @@ public async Task ReasonTemplateManager_Help(CommandContext ctx) eb.AddField(new DiscordEmbedField("-" + key, value, true)); i++; } + if (i == 0) { eb.WithDescription("__Keine Templates vorhanden.__"); } + await ctx.RespondAsync(eb); } - + [Command("add")] [RequireStaffRole] public async Task AddTemplate(CommandContext ctx, string key, [RemainingText] string text) @@ -46,7 +52,7 @@ public async Task AddTemplate(CommandContext ctx, string key, [RemainingText] st await ctx.RespondAsync($"Template `{key}` existiert bereits."); } } - + [Command("remove")] [RequireStaffRole] public async Task RemoveTemplate(CommandContext ctx, string key) @@ -61,6 +67,4 @@ public async Task RemoveTemplate(CommandContext ctx, string key) await ctx.RespondAsync($"Template `{key}` existiert nicht."); } } - -} - +} \ No newline at end of file diff --git a/src/Commands/Utilities/UserReportMessage.cs b/src/Commands/Utilities/UserReportMessage.cs index 23754455..3a8eb02c 100644 --- a/src/Commands/Utilities/UserReportMessage.cs +++ b/src/Commands/Utilities/UserReportMessage.cs @@ -1,10 +1,14 @@ -using DisCatSharp.ApplicationCommands; +#region + +using DisCatSharp.ApplicationCommands; using DisCatSharp.ApplicationCommands.Attributes; using DisCatSharp.ApplicationCommands.Context; using DisCatSharp.Entities; using DisCatSharp.Enums; using DisCatSharp.Interactivity.Extensions; +#endregion + namespace AGC_Management.Commands; public class UserReportMessage : ApplicationCommandsModule @@ -14,9 +18,9 @@ public static async Task UserReportMessageCommand(ContextMenuContext ctx) { var randomid = new Random(); var cid = randomid.Next(100000, 999999).ToString(); - + DiscordInteractionModalBuilder modal = new(); - + /* Disable this for now because Discord doenst support it yet List options = new(); options.Add(new DiscordStringSelectComponentOption("Spam", "spam", "Spam")); @@ -25,15 +29,15 @@ public static async Task UserReportMessageCommand(ContextMenuContext ctx) options.Add(new DiscordStringSelectComponentOption("Sonstiges", "sonstiges", "Sonstiges")); modal.AddSelectComponent(new DiscordStringSelectComponent("report_reason", options, "Kategorie für die Meldung")); */ - + var guild = ctx.Guild; var role = guild.GetRole(ulong.Parse(BotConfig.GetConfig()["ServerConfig"]["StaffRoleId"])); - + var member = await guild.GetMemberAsync(ctx.User.Id); ulong serverIdToSkip = 818699057878663168; // My test server - + var isEventler = false; - + foreach (var r in member.Roles) { if (r.Name.ToLower().Contains("event manager")) @@ -45,11 +49,12 @@ public static async Task UserReportMessageCommand(ContextMenuContext ctx) if (member.Roles.Contains(role) && (guild.Id != serverIdToSkip && isEventler)) { await ctx.CreateResponseAsync(InteractionResponseType.ChannelMessageWithSource, - new DiscordInteractionResponseBuilder().WithContent("Moderative Teammitglieder können keine Nachrichten melden!") + new DiscordInteractionResponseBuilder() + .WithContent("Moderative Teammitglieder können keine Nachrichten melden!") .AsEphemeral()); return; } - + if (ctx.User.Id == ctx.TargetMessage.Author.Id) { @@ -58,30 +63,30 @@ await ctx.CreateResponseAsync(InteractionResponseType.ChannelMessageWithSource, .AsEphemeral()); return; } - - + + modal.WithTitle("Nachricht melden"); modal.CustomId = cid; modal.AddTextComponent(new DiscordTextComponent(TextComponentStyle.Paragraph, label: "Geb uns weitere Infos hierzu", minLength: 4, maxLength: 400)); - + await ctx.CreateModalResponseAsync(modal); var interactivity = ctx.Client.GetInteractivity(); var result = await interactivity.WaitForModalAsync(cid, TimeSpan.FromMinutes(5)); - + if (result.TimedOut) { return; } - - + + var message = ctx.TargetMessage; var channel = ctx.Channel; - + var reportChannelId = ulong.Parse(BotConfig.GetConfig()["ModerationConfig"]["ReportLogId"]); var reportChannel = guild.GetChannel(reportChannelId); - + var teamChannelId = ulong.Parse(BotConfig.GetConfig()["ModerationConfig"]["TeamChatId"]); var teamChannel = guild.GetChannel(teamChannelId); @@ -91,11 +96,13 @@ await ctx.CreateResponseAsync(InteractionResponseType.ChannelMessageWithSource, { messagecontent = "Kein Textinhalt. Möglicherweise ein Bild oder Sticker oder ähnliches."; } + var targetMessageLink = message.JumpLink.ToString(); - var targetmessagebutton = new DiscordLinkButtonComponent(targetMessageLink, "Zur gemeldeten Nachricht", false); + var targetmessagebutton = new DiscordLinkButtonComponent(targetMessageLink, "Zur gemeldeten Nachricht"); var embed = new DiscordEmbedBuilder() .WithTitle("Nachricht gemeldet") - .WithDescription($"**Gemeldete Nachricht:**```{messagecontent}```\n**Gemeldet von:**\n{ctx.User.Mention} / {ctx.User.Id}\n\n**Zusätzliche Infos:**\n```{result.Result.Interaction.Data.Components[0].Value}```") + .WithDescription( + $"**Gemeldete Nachricht:**```{messagecontent}```\n**Gemeldet von:**\n{ctx.User.Mention} / {ctx.User.Id}\n\n**Zusätzliche Infos:**\n```{result.Result.Interaction.Data.Components[0].Value}```") .WithColor(DiscordColor.Red) .WithFooter($"Gemeldet in #{channel.Name}") .Build(); @@ -103,15 +110,16 @@ await ctx.CreateResponseAsync(InteractionResponseType.ChannelMessageWithSource, mb.AddComponents(targetmessagebutton); mb.WithEmbed(embed); var m = await reportChannel.SendMessageAsync(mb); - + var targetuser = message.Author; - + await result.Result.Interaction.CreateResponseAsync( InteractionResponseType.ChannelMessageWithSource, new DiscordInteractionResponseBuilder().WithContent("Danke fürs deinen Report!").AsEphemeral()); - + await Task.Delay(500); - await teamChannel.SendMessageAsync($"**Neuer Report** \n{ctx.User.Mention} / {ctx.User.Id} hat eine Nachricht von {message.Author.Mention} / {message.Author.Id} gemeldet. {m.JumpLink}"); + await teamChannel.SendMessageAsync( + $"**Neuer Report** \n{ctx.User.Mention} / {ctx.User.Id} hat eine Nachricht von {message.Author.Mention} / {message.Author.Id} gemeldet. {m.JumpLink}"); } } \ No newline at end of file diff --git a/src/Utils/Helpers.cs b/src/Utils/Helpers.cs index 44f47e9a..9cf2446c 100644 --- a/src/Utils/Helpers.cs +++ b/src/Utils/Helpers.cs @@ -228,10 +228,11 @@ public static async Task UserHasClosedPendingTicket(ulong UserId) await connection.CloseAsync(); return true; } + await connection.CloseAsync(); return false; } - + public static async Task UserHasOpenTicket(ulong UserId) { string con = TicketDatabaseService.GetConnectionString(); @@ -245,6 +246,7 @@ public static async Task UserHasOpenTicket(ulong UserId) await connection.CloseAsync(); return true; } + await connection.CloseAsync(); return false; } @@ -257,16 +259,15 @@ public static async Task GenerateBannDeleteMessageDays(ulong UserId) { return 0; } - else if (hasClosedPendingTicket) + + if (hasClosedPendingTicket) { return 0; } - else - { - return 7; - } + + return 7; } - + public static async Task SendWarnAsChannel(CommandContext ctx, DiscordUser user, DiscordEmbed uembed, string caseid) { DiscordEmbed userembed = uembed; diff --git a/src/Utils/ReasonTemplateResolver.cs b/src/Utils/ReasonTemplateResolver.cs index f970cbff..ccd40c92 100644 --- a/src/Utils/ReasonTemplateResolver.cs +++ b/src/Utils/ReasonTemplateResolver.cs @@ -92,6 +92,5 @@ public static async Task RemoveReplacement(string key) return false; } } - } } \ No newline at end of file diff --git a/src/Utils/Ticket/SnippetManagerHelper.cs b/src/Utils/Ticket/SnippetManagerHelper.cs index 10935666..61f8d94c 100644 --- a/src/Utils/Ticket/SnippetManagerHelper.cs +++ b/src/Utils/Ticket/SnippetManagerHelper.cs @@ -1,8 +1,8 @@ #region using System.Text.RegularExpressions; -using AGC_Management.Services; using AGC_Management.Managers; +using AGC_Management.Services; using DisCatSharp.Entities; using DisCatSharp.Enums; using Npgsql; diff --git a/src/Utils/Ticket/TicketManagerHelper.cs b/src/Utils/Ticket/TicketManagerHelper.cs index e82c85f1..e78e2dab 100644 --- a/src/Utils/Ticket/TicketManagerHelper.cs +++ b/src/Utils/Ticket/TicketManagerHelper.cs @@ -2,11 +2,9 @@ using System.Diagnostics; using System.Text; -using AGC_Management; using AGC_Management.Components; using AGC_Management.Enums; using AGC_Management.Helper; -using AGC_Management.Managers; using AGC_Management.Services; using AGC_Management.Utils; using DisCatSharp; @@ -1204,7 +1202,6 @@ public static async Task InsertTransscriptIntoDB(DiscordChannel ticket_channel, await cmd2.ExecuteNonQueryAsync(); } } - public static async Task SendTranscriptToLog(DiscordChannel channel, string ticket_url,