From bef33c6dac81206622ce6120f7de57d188a80e6d Mon Sep 17 00:00:00 2001 From: jellywx Date: Sat, 10 Jul 2021 18:24:43 +0100 Subject: [PATCH] show user who created reminder --- src/commands/reminder_cmds.rs | 47 +++++++++++++++++++++++++++-------- 1 file changed, 37 insertions(+), 10 deletions(-) diff --git a/src/commands/reminder_cmds.rs b/src/commands/reminder_cmds.rs index c93d0c5..e111a57 100644 --- a/src/commands/reminder_cmds.rs +++ b/src/commands/reminder_cmds.rs @@ -350,6 +350,7 @@ struct LookReminder { channel: u64, content: String, description: String, + set_by: Option, } impl LookReminder { @@ -386,18 +387,24 @@ impl LookReminder { if let Some(interval) = self.interval { format!( - "'{}' *{}* **{}**, repeating every **{}**", + "'{}' *{}* **{}**, repeating every **{}** (set by {})", self.display_content(), &inter, time_display, - longhand_displacement(interval as u64) + longhand_displacement(interval as u64), + self.set_by + .map(|i| format!("<@{}>", i)) + .unwrap_or_else(|| "unknown".to_string()) ) } else { format!( - "'{}' *{}* **{}**", + "'{}' *{}* **{}** (set by {})", self.display_content(), &inter, - time_display + time_display, + self.set_by + .map(|i| format!("<@{}>", i)) + .unwrap_or_else(|| "unknown".to_string()) ) } } @@ -439,13 +446,18 @@ SELECT reminders.interval, channels.channel, reminders.content, - reminders.embed_description AS description + reminders.embed_description AS description, + users.user AS set_by FROM reminders INNER JOIN channels ON reminders.channel_id = channels.id +LEFT JOIN + users +ON + reminders.set_by = users.id WHERE channels.channel = ? AND FIND_IN_SET(reminders.enabled, ?) @@ -511,13 +523,18 @@ SELECT reminders.interval, channels.channel, reminders.content, - reminders.embed_description AS description + reminders.embed_description AS description, + users.user AS set_by FROM reminders -LEFT OUTER JOIN +LEFT JOIN channels ON channels.id = reminders.channel_id +LEFT JOIN + users +ON + reminders.set_by = users.id WHERE FIND_IN_SET(channels.channel, ?) ", @@ -535,13 +552,18 @@ SELECT reminders.interval, channels.channel, reminders.content, - reminders.embed_description AS description + reminders.embed_description AS description, + users.user AS set_by FROM reminders -LEFT OUTER JOIN +LEFT JOIN channels ON channels.id = reminders.channel_id +LEFT JOIN + users +ON + reminders.set_by = users.id WHERE channels.guild_id = (SELECT id FROM guilds WHERE guild = ?) ", @@ -560,13 +582,18 @@ SELECT reminders.interval, channels.channel, reminders.content, - reminders.embed_description AS description + reminders.embed_description AS description, + users.user AS set_by FROM reminders INNER JOIN channels ON channels.id = reminders.channel_id +LEFT JOIN + users +ON + reminders.set_by = users.id WHERE channels.channel = ? ",