diff --git a/Cargo.lock b/Cargo.lock index 1ae51d3..b6b69c6 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1285,7 +1285,7 @@ dependencies = [ [[package]] name = "reminder_rs" -version = "1.5.0-1" +version = "1.5.1" dependencies = [ "Inflector", "chrono", diff --git a/Cargo.toml b/Cargo.toml index 61ebd5a..d20c414 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "reminder_rs" -version = "1.5.0-1" +version = "1.5.1" authors = ["jellywx "] edition = "2018" diff --git a/src/commands/reminder_cmds.rs b/src/commands/reminder_cmds.rs index f3c8187..c93d0c5 100644 --- a/src/commands/reminder_cmds.rs +++ b/src/commands/reminder_cmds.rs @@ -1593,11 +1593,19 @@ async fn create_reminder<'a, U: Into, T: TryInto>( let db_channel_id = match scope_id { ReminderScope::User(user_id) => { - let user = UserId(*user_id).to_user(&ctx).await.unwrap(); + if let Ok(user) = UserId(*user_id).to_user(&ctx).await { + let user_data = UserData::from_user(&user, &ctx, &pool).await.unwrap(); - let user_data = UserData::from_user(&user, &ctx, &pool).await.unwrap(); + if let Some(guild_id) = guild_id { + if guild_id.member(ctx, user).await.is_err() { + return Err(ReminderError::InvalidTag); + } + } - user_data.dm_channel + user_data.dm_channel + } else { + return Err(ReminderError::InvalidTag); + } } ReminderScope::Channel(channel_id) => {