[Mod] Add default tempban duration setting (#4473)

* Add support for default duration in kickban.py

* add setting command and info to settings view

* add config key

* black

* Thx jack

Co-authored-by: jack1142 <6032823+jack1142@users.noreply.github.com>

* adress review

* Address review

* typo

Co-authored-by: jack1142 <6032823+jack1142@users.noreply.github.com>
This commit is contained in:
Dav
2020-10-15 22:15:14 +00:00
committed by GitHub
parent dc817aeeac
commit f5de382946
3 changed files with 29 additions and 3 deletions

View File

@@ -473,7 +473,7 @@ class KickBanMixin(MixinMeta):
self,
ctx: commands.Context,
user: discord.Member,
duration: UserInputOptional[commands.TimedeltaConverter] = timedelta(days=1),
duration: Optional[commands.TimedeltaConverter] = None,
days: Optional[int] = None,
*,
reason: str = None,
@@ -481,7 +481,6 @@ class KickBanMixin(MixinMeta):
"""Temporarily ban a user from this server."""
guild = ctx.guild
author = ctx.author
unban_time = datetime.now(timezone.utc) + duration
if author == user:
await ctx.send(
@@ -501,6 +500,10 @@ class KickBanMixin(MixinMeta):
await ctx.send(_("I cannot do that due to Discord hierarchy rules."))
return
if duration is None:
duration = timedelta(seconds=await self.config.guild(guild).default_tempban_duration())
unban_time = datetime.now(timezone.utc) + duration
if days is None:
days = await self.config.guild(guild).default_days()