Compare commits

..

2 commits

View file

@ -273,6 +273,20 @@ class Notifications(Cog):
""" """
try: try:
if keyword.startswith('"') and keyword.endswith('"') or keyword.startswith("") and keyword.endswith(""):
log.debug("Keyword surrounded with quotes")
to_clear = await confirm(
ctx,
"Are you sure you want to add a keyword surrounded with quotes? (Reply with yes/no)\n**Note:** Quotes are **not** necessary for a keyword with spaces!",
True,
)
if to_clear is None:
return await ctx.send("Timed out or received an invalid response", delete_after=10)
elif not to_clear:
return await ctx.send("Canceled", delete_after=10)
await self.add_keyword(ctx.guild.id, ctx.author.id, keyword, False) await self.add_keyword(ctx.guild.id, ctx.author.id, keyword, False)
except KeywordError as e: except KeywordError as e:
await e.send(ctx) await e.send(ctx)
@ -290,6 +304,20 @@ class Notifications(Cog):
# TODO: Add regex names to make notifications cleaner # TODO: Add regex names to make notifications cleaner
try: try:
if keyword.startswith('"') and keyword.endswith('"') or keyword.startswith("") and keyword.endswith(""):
log.debug("Keyword surrounded with quotes")
to_clear = await confirm(
ctx,
"Are you sure you want to add a keyword surrounded with quotes? (Reply with yes/no)\n**Note:** Quotes are **not** necessary for a keyword with spaces!",
True,
)
if to_clear is None:
return await ctx.send("Timed out or received an invalid response", delete_after=10)
elif not to_clear:
return await ctx.send("Canceled", delete_after=10)
await self.add_keyword(ctx.guild.id, ctx.author.id, keyword, True) await self.add_keyword(ctx.guild.id, ctx.author.id, keyword, True)
except KeywordError as e: except KeywordError as e:
await e.send(ctx) await e.send(ctx)
@ -306,12 +334,20 @@ class Notifications(Cog):
""" """
log.debug(f"Removing keyword: {keyword} of {ctx.author} (ctx.author.id) on {ctx.guild} ({ctx.guild.id})") log.debug(f"Removing keyword: {keyword} of {ctx.author} (ctx.author.id) on {ctx.guild} ({ctx.guild.id})")
await ctx.bot.db.execute( cursor = await ctx.bot.db.execute(
"DELETE FROM keywords WHERE guild_id=? AND keyword=? AND user_id=?", "DELETE FROM keywords WHERE guild_id=? AND keyword=? AND user_id=?",
(ctx.guild.id, keyword, ctx.author.id), (ctx.guild.id, keyword, ctx.author.id),
) )
await ctx.bot.db.commit() await ctx.bot.db.commit()
await ctx.send(f"Removed `{keyword}` from your list of keywords") if cursor.rowcount:
log.debug("Removed keyword")
await ctx.send(f"Removed `{keyword}` from your list of keywords")
else:
log.debug("Keyword not found")
await ctx.send(
f"Keyword `{keyword}` not found.\n**Note:** Removing keywords is case-sensitive, double check that the keyword is exactly as listed in `{await ctx.bot.get_guild_prefix(ctx.guild)
}keyword list`"
)
@keyword.command() @keyword.command()
@guild_only() @guild_only()