aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGravatar wookie184 <[email protected]>2022-08-06 19:46:17 +0100
committerGravatar wookie184 <[email protected]>2022-08-06 19:46:17 +0100
commit4e59178d9cc4e23ed4c7b40a2c672ca61e6c9843 (patch)
tree640814dd46f5d7002354a028352ec331d878a691
parentRemove now unused scheduler from talentpool (diff)
Make handling of reviews over multiple messages more robust
-rw-r--r--bot/exts/recruitment/talentpool/_review.py11
1 files changed, 8 insertions, 3 deletions
diff --git a/bot/exts/recruitment/talentpool/_review.py b/bot/exts/recruitment/talentpool/_review.py
index c3c29fa54..bd851e116 100644
--- a/bot/exts/recruitment/talentpool/_review.py
+++ b/bot/exts/recruitment/talentpool/_review.py
@@ -44,6 +44,10 @@ NOMINATION_MESSAGE_REGEX = re.compile(
re.MULTILINE
)
+# This is a constant so we can detect the final message in a nomination. Keep this in mind
+# if changing this value.
+REVIEW_FOOTER_MESSAGE = "*Refer to their nomination and infraction histories for further details.*"
+
class Reviewer:
"""Manages, formats, and publishes reviews of helper nominees."""
@@ -81,8 +85,9 @@ class Reviewer:
review_count = 0
is_first_message = True
async for msg in voting_channel.history():
- # Try and filter out any non-review messages.
- if not msg.author.bot or "for Helper!" not in msg.content:
+ # Try and filter out any non-review messages. We also only want to count
+ # the final message in the case of reviews split over multiple messages.
+ if not msg.author.bot or REVIEW_FOOTER_MESSAGE not in msg.content:
continue
if is_first_message:
@@ -198,7 +203,7 @@ class Reviewer:
reviewed_emoji = self._random_ducky(guild)
vote_request = (
- "*Refer to their nomination and infraction histories for further details*.\n"
+ f"{REVIEW_FOOTER_MESSAGE}.\n"
f"*Please react {reviewed_emoji} once you have reviewed this user,"
" and react :+1: for approval, or :-1: for disapproval*."
)