aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGravatar Scragly <[email protected]>2019-02-27 18:10:40 +1000
committerGravatar Scragly <[email protected]>2019-02-27 18:10:40 +1000
commit8b19bb2f1b7305ba4cf87ec61cd94ab7ee4b1dd0 (patch)
tree947e1d50905e565c25da13552314142e6d602d94
parentIn the json file,i now have a list containing all the peoms/compliments in li... (diff)
Address DM failure, random_user logic, str[key] error.
-rw-r--r--bot/seasons/valentines/be_my_valentine.py23
1 files changed, 16 insertions, 7 deletions
diff --git a/bot/seasons/valentines/be_my_valentine.py b/bot/seasons/valentines/be_my_valentine.py
index 163574c3..83c02841 100644
--- a/bot/seasons/valentines/be_my_valentine.py
+++ b/bot/seasons/valentines/be_my_valentine.py
@@ -163,8 +163,12 @@ class BeMyValentine:
description=f'{valentine} \n **{emoji_2}From anonymous{emoji_1}**',
color=Colours.pink
)
- await ctx.author.send(f"Your message has been sent to {user}")
- await user.send(embed=embed)
+ try:
+ await user.send(embed=embed)
+ except discord.Forbidden:
+ await ctx.author.send(f"{user} has DMs disabled, so I couldn't send the message. Sorry!")
+ else:
+ await ctx.author.send(f"Your message has been sent to {user}")
def valentine_check(self, valentine_type):
if valentine_type is None:
@@ -186,11 +190,16 @@ class BeMyValentine:
@staticmethod
def random_user(author, members):
- # just making sure that the random does not pick up the same user(ctx.author)
+ """
+ Picks a random member from the list provided in `members`, ensuring
+ the author is not one of the options.
- if members.__len__() != 0:
- if author in members:
- members.remove(author)
+ :param author: member who invoked the command
+ :param members: list of discord.Member objects
+ """
+ if author in members:
+ members.remove(author)
+ if len(members) != 0:
user = random.choice(members)
else:
user = None
@@ -213,7 +222,7 @@ class BeMyValentine:
title = 'A poem dedicated to'
else:
title = 'A compliment for '
- return random_valentine['message'], title
+ return random_valentine, title
def valentine_poem(self):
"""