aboutsummaryrefslogtreecommitdiffstats
path: root/bot/exts
diff options
context:
space:
mode:
authorGravatar ChrisJL <[email protected]>2021-05-16 19:05:22 +0100
committerGravatar GitHub <[email protected]>2021-05-16 19:05:22 +0100
commit0da9cbd6261db34a309c6fe77a849cd825867d57 (patch)
tree31ae59f46aeb5823ada7883bc97059119cf48a86 /bot/exts
parentMerge pull request #623 from python-discord/pipenv-to-poetry (diff)
parentfix: use resolved reference (diff)
Merge pull request #738 from python-discord/vcokltfre/feat/bookmark-reply
feat: allow replying to messages to bookmark
Diffstat (limited to 'bot/exts')
-rw-r--r--bot/exts/evergreen/bookmark.py8
1 files changed, 7 insertions, 1 deletions
diff --git a/bot/exts/evergreen/bookmark.py b/bot/exts/evergreen/bookmark.py
index 29915627..85c9b46f 100644
--- a/bot/exts/evergreen/bookmark.py
+++ b/bot/exts/evergreen/bookmark.py
@@ -1,6 +1,7 @@
import asyncio
import logging
import random
+import typing as t
import discord
from discord.ext import commands
@@ -88,11 +89,16 @@ class Bookmark(commands.Cog):
async def bookmark(
self,
ctx: commands.Context,
- target_message: WrappedMessageConverter,
+ target_message: t.Optional[WrappedMessageConverter],
*,
title: str = "Bookmark"
) -> None:
"""Send the author a link to `target_message` via DMs."""
+ if not target_message:
+ if not ctx.message.reference:
+ raise commands.UserInputError("You must either provide a valid message to bookmark, or reply to one.")
+ target_message = ctx.message.reference.resolved
+
# Prevent users from bookmarking a message in a channel they don't have access to
permissions = ctx.author.permissions_in(target_message.channel)
if not permissions.read_messages: