From fd0c84d834c1fb58be3257ef53290ef231bfea37 Mon Sep 17 00:00:00 2001 From: mctaylors <95250141+mctaylors@users.noreply.github.com> Date: Fri, 21 Jul 2023 02:49:16 +0300 Subject: [PATCH] where tf is GlobalName Signed-off-by: mctaylors <95250141+mctaylors@users.noreply.github.com> --- src/Services/GuildUpdateService.cs | 14 +++++--------- 1 file changed, 5 insertions(+), 9 deletions(-) diff --git a/src/Services/GuildUpdateService.cs b/src/Services/GuildUpdateService.cs index 9fc9f60..64277ea 100644 --- a/src/Services/GuildUpdateService.cs +++ b/src/Services/GuildUpdateService.cs @@ -1,4 +1,5 @@ using System.Text.Json.Nodes; +using System.Text.RegularExpressions; using Boyfriend.Data; using Microsoft.Extensions.Hosting; using Microsoft.Extensions.Logging; @@ -122,16 +123,11 @@ public class GuildUpdateService : BackgroundService { var userResult = await _userApi.GetUserAsync(memberData.Id.ToSnowflake(), ct); if (!userResult.IsDefined(out var user)) return; - var guildUser = _guildApi.GetGuildMemberAsync(guildId, user.ID, ct); + var guildUser = await _guildApi.GetGuildMemberAsync(guildId, user.ID, ct); - var tag = guildUser.Result.Entity.Nickname.ToString(); - var symbols = new[] { "~"[0], "`"[0], "!"[0], "@"[0], "#"[0], "$"[0], "%"[0], "^"[0], "&"[0], "*"[0], "("[0], ")"[0], "_"[0], "-"[0], "+"[0], "="[0]}; - foreach (var symbol in symbols) { - if (tag[0] == symbol) { - - await _guildApi.ModifyGuildMemberAsync(guildId, user.ID, "nickname", ct: ct); - } - } + var pattern = new Regex(@"^[~`!?@#№$%^&*:;.,()<>{}\[\]\-_=+/\\|']*(.*)"); + var match = pattern.Match(guildUser.Entity.Nickname.ToString()); + await _guildApi.ModifyGuildMemberAsync(guildId, user.ID, match.Groups[1].ToString(), ct: ct); await TickMemberAsync(guildId, user, memberData, defaultRole, ct); }