1
0
Fork 1
mirror of https://github.com/TeamOctolings/Octobot.git synced 2025-04-20 00:43:36 +03:00

Fixed my cringe merge

This commit is contained in:
neroduckale 2023-12-05 21:52:39 +05:00
parent 2b42b8d91e
commit 091e51ecc9
WARNING! Although there is a key with this ID in the database it does not verify this commit! This commit is SUSPICIOUS.
GPG key ID: 399E73062E1A3667
3 changed files with 24 additions and 17 deletions

View file

@ -72,10 +72,10 @@ public class RemindCommandGroup : CommandGroup
var data = await _guildData.GetData(guildId, CancellationToken); var data = await _guildData.GetData(guildId, CancellationToken);
Messages.Culture = GuildSettings.Language.Get(data.Settings); Messages.Culture = GuildSettings.Language.Get(data.Settings);
return await ListRemindersAsync(data.GetOrCreateMemberData(executorId), executor, bot, CancellationToken); return await ListRemindersAsync(data.GetOrCreateMemberData(executorId), guildId, executor, bot, CancellationToken);
} }
private async Task<Result> ListRemindersAsync(MemberData data, IUser executor, IUser bot, CancellationToken ct) private async Task<Result> ListRemindersAsync(MemberData data, Snowflake guildId, IUser executor, IUser bot, CancellationToken ct)
{ {
if (data.Reminders.Count == 0) if (data.Reminders.Count == 0)
{ {
@ -92,7 +92,8 @@ public class RemindCommandGroup : CommandGroup
var reminder = data.Reminders[i]; var reminder = data.Reminders[i];
builder.AppendBulletPointLine(string.Format(Messages.ReminderPosition, Markdown.InlineCode((i + 1).ToString()))) builder.AppendBulletPointLine(string.Format(Messages.ReminderPosition, Markdown.InlineCode((i + 1).ToString())))
.AppendSubBulletPointLine(string.Format(Messages.ReminderText, Markdown.InlineCode(reminder.Text))) .AppendSubBulletPointLine(string.Format(Messages.ReminderText, Markdown.InlineCode(reminder.Text)))
.AppendSubBulletPointLine(string.Format(Messages.ReminderTime, Markdown.Timestamp(reminder.At))); .AppendSubBulletPointLine(string.Format(Messages.ReminderTime, Markdown.Timestamp(reminder.At)))
.AppendSubBulletPointLine(string.Format(Messages.DescriptionActionJumpToMessage, $"https://discord.com/channels/{guildId.Value}/{reminder.ChannelId}/{reminder.MessageId}"));
} }
var embed = new EmbedBuilder().WithSmallTitle( var embed = new EmbedBuilder().WithSmallTitle(
@ -146,14 +147,6 @@ public class RemindCommandGroup : CommandGroup
var remindAt = DateTimeOffset.UtcNow.Add(@in); var remindAt = DateTimeOffset.UtcNow.Add(@in);
var memberData = data.GetOrCreateMemberData(executor.ID); var memberData = data.GetOrCreateMemberData(executor.ID);
memberData.Reminders.Add(
new Reminder
{
At = remindAt,
Channel = channelId.Value,
Text = text
});
var builder = new StringBuilder().AppendBulletPointLine(string.Format( var builder = new StringBuilder().AppendBulletPointLine(string.Format(
Messages.ReminderText, Markdown.InlineCode(text))) Messages.ReminderText, Markdown.InlineCode(text)))
.AppendBulletPoint(string.Format(Messages.ReminderTime, Markdown.Timestamp(remindAt))); .AppendBulletPoint(string.Format(Messages.ReminderTime, Markdown.Timestamp(remindAt)));
@ -162,10 +155,24 @@ public class RemindCommandGroup : CommandGroup
string.Format(Messages.ReminderCreated, executor.GetTag()), executor) string.Format(Messages.ReminderCreated, executor.GetTag()), executor)
.WithDescription(builder.ToString()) .WithDescription(builder.ToString())
.WithColour(ColorsList.Green) .WithColour(ColorsList.Green)
.WithFooter(string.Format(Messages.ReminderPosition, memberData.Reminders.Count)) .WithFooter(string.Format(Messages.ReminderPosition, memberData.Reminders.Count + 1))
.Build(); .Build();
var messageResult = await _feedback.SendContextualEmbedAsync(embed.Entity, ct: ct);
if (!messageResult.IsDefined(out var message))
{
return (Result)messageResult;
}
return await _feedback.SendContextualEmbedResultAsync(embed, ct); var messageId = message.ID.Value;
memberData.Reminders.Add(
new Reminder
{
At = remindAt,
ChannelId = channelId.Value,
Text = text,
MessageId = messageId
});
return (Result)messageResult;
} }
/// <summary> /// <summary>

View file

@ -4,6 +4,6 @@ public struct Reminder
{ {
public DateTimeOffset At { get; init; } public DateTimeOffset At { get; init; }
public string Text { get; init; } public string Text { get; init; }
public ulong Channel { get; init; } public ulong ChannelId { get; init; }
public string MessageId { get; init; } public ulong MessageId { get; init; }
} }

View file

@ -229,7 +229,7 @@ public sealed partial class MemberUpdateService : BackgroundService
string.Format(Messages.Reminder, user.GetTag()), user) string.Format(Messages.Reminder, user.GetTag()), user)
.WithTitle( .WithTitle(
string.Format(Messages.DescriptionReminder, Markdown.InlineCode(reminder.Text))) string.Format(Messages.DescriptionReminder, Markdown.InlineCode(reminder.Text)))
.WithDescription(string.Format(Messages.DescriptionActionJumpToMessage, $"https://discord.com/channels/{guildId.Value}/{reminder.Channel}/{reminder.MessageId}")) .WithDescription(string.Format(Messages.DescriptionActionJumpToMessage, $"https://discord.com/channels/{guildId.Value}/{reminder.ChannelId}/{reminder.MessageId}"))
.WithColour(ColorsList.Magenta) .WithColour(ColorsList.Magenta)
.Build(); .Build();
@ -239,7 +239,7 @@ public sealed partial class MemberUpdateService : BackgroundService
} }
var messageResult = await _channelApi.CreateMessageAsync( var messageResult = await _channelApi.CreateMessageAsync(
reminder.Channel.ToSnowflake(), Mention.User(user), embeds: new[] { built }, ct: ct); reminder.ChannelId.ToSnowflake(), Mention.User(user), embeds: new[] { built }, ct: ct);
if (!messageResult.IsSuccess) if (!messageResult.IsSuccess)
{ {
return Result.FromError(messageResult); return Result.FromError(messageResult);