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:
parent
2b42b8d91e
commit
091e51ecc9
3 changed files with 24 additions and 17 deletions
|
@ -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>
|
||||||
|
|
|
@ -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; }
|
||||||
}
|
}
|
||||||
|
|
|
@ -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);
|
||||||
|
|
Loading…
Add table
Reference in a new issue