mirror of
https://github.com/AsgardEternal/DiscordWhitelist.git
synced 2024-12-30 15:19:12 -06:00
fix: properly allow user to set steam64
This commit is contained in:
parent
48540cd884
commit
dbca836d47
@ -1,29 +1,47 @@
|
||||
import discord
|
||||
import logging
|
||||
from autowl import config
|
||||
from autowl.bot import Bot
|
||||
from discord.ext import commands
|
||||
from discord import app_commands
|
||||
|
||||
|
||||
log = logging.getLogger(__name__)
|
||||
|
||||
|
||||
class Whitelist(commands.Cog):
|
||||
def __init__(self, client: Bot):
|
||||
self.client = client
|
||||
|
||||
@app_commands.command()
|
||||
async def register(self, interaction: discord.Interaction, steam64: int):
|
||||
ctx: commands.Context = await self.client.get_context(interaction)
|
||||
if not ctx.guild:
|
||||
ctx.reply("This command must be ran within a discord server!")
|
||||
if not interaction.guild:
|
||||
await interaction.response.send_message(
|
||||
"This command must be ran within a discord server!"
|
||||
)
|
||||
return
|
||||
|
||||
if not len(self.client.whitelist.keys()):
|
||||
await interaction.response.send_message(
|
||||
"There are no Whitelist roles defined, unable to continue!"
|
||||
)
|
||||
return
|
||||
|
||||
steam64_updated = False
|
||||
for role in ctx.author.roles:
|
||||
for role in interaction.user.roles:
|
||||
for group in self.client.whitelist:
|
||||
if role.id == group.discord_role_id:
|
||||
if role.id == self.client.whitelist[group].discord_role_id:
|
||||
steam64_updated = True
|
||||
group.members[ctx.author.id] = config.WhitelistMember(
|
||||
ctx.author.name, steam64
|
||||
)
|
||||
self.client.whitelist[group].members[
|
||||
interaction.user.id
|
||||
] = config.WhitelistMember(interaction.user.name, steam64)
|
||||
|
||||
if steam64_updated:
|
||||
ctx.reply(f"Updated {ctx.author.name}'s whitelist steam64 to {steam64}!")
|
||||
log.info(
|
||||
f"Updated {interaction.user.name}'s ({interaction.user.id}) whitelist steam64 to {steam64}"
|
||||
)
|
||||
await interaction.response.send_message(
|
||||
f"Updated `{interaction.user.name}`'s whitelist steam64 to `{steam64}`!"
|
||||
)
|
||||
else:
|
||||
await interaction.response.send_message(f"Unable to update `{interaction.user.name}`'s whitelist steam64 as they are not in a valid Whitelisted group")
|
||||
|
Loading…
Reference in New Issue
Block a user