Changed directory structure
This commit is contained in:
parent
4441737d57
commit
8aec106671
|
@ -157,13 +157,13 @@ def main():
|
||||||
JoinLeave.create_table()
|
JoinLeave.create_table()
|
||||||
|
|
||||||
# Load extensions
|
# Load extensions
|
||||||
bot.load_extension("commands.admin")
|
bot.load_extension("heimdallr.commands.admin")
|
||||||
bot.load_extension("commands.gatekeep")
|
bot.load_extension("heimdallr.commands.gatekeep")
|
||||||
bot.load_extension("commands.quote")
|
bot.load_extension("heimdallr.commands.quote")
|
||||||
bot.load_extension("commands.infractions")
|
bot.load_extension("heimdallr.commands.infractions")
|
||||||
bot.load_extension("commands.self_roles")
|
bot.load_extension("heimdallr.commands.self_roles")
|
||||||
bot.load_extension("commands.polls")
|
bot.load_extension("heimdallr.commands.polls")
|
||||||
bot.load_extension("commands.bot_messages")
|
bot.load_extension("heimdallr.commands.bot_messages")
|
||||||
bot.start(getenv("DISCORD_TOKEN"))
|
bot.start(getenv("DISCORD_TOKEN"))
|
||||||
|
|
||||||
if __name__ == "__main__":
|
if __name__ == "__main__":
|
|
@ -15,6 +15,7 @@ from naff import (
|
||||||
Button,
|
Button,
|
||||||
ButtonStyles,
|
ButtonStyles,
|
||||||
)
|
)
|
||||||
|
from naff.ext.paginators import Paginator
|
||||||
from peewee import fn
|
from peewee import fn
|
||||||
from database import (
|
from database import (
|
||||||
GuildSettings,
|
GuildSettings,
|
||||||
|
@ -59,7 +60,10 @@ class Infractions(Extension):
|
||||||
)
|
)
|
||||||
embeds.append(embed)
|
embeds.append(embed)
|
||||||
|
|
||||||
await ctx.send(embed=embeds, ephemeral=True)
|
# await ctx.send(embed=embeds, ephemeral=True)
|
||||||
|
paginator = Paginator.create_from_embeds(self.client, *embeds)
|
||||||
|
await paginator.send(ctx)
|
||||||
|
paginator.send
|
||||||
|
|
||||||
@slash_command(
|
@slash_command(
|
||||||
name="user-infractions",
|
name="user-infractions",
|
||||||
|
@ -121,13 +125,23 @@ class Infractions(Extension):
|
||||||
)
|
)
|
||||||
embeds.append(embed)
|
embeds.append(embed)
|
||||||
|
|
||||||
await ctx.send(
|
if len(embeds) <= 10:
|
||||||
content=f"{user.mention} has {infractions_weight[0].total_infractions} infractions, for a total weight of {infractions_weight[0].total_weight:.2f}"
|
await ctx.send(
|
||||||
if infractions_weight.count() > 0
|
content=f"{user.mention} has {infractions_weight[0].total_infractions} infractions, for a total weight of {infractions_weight[0].total_weight:.2f}"
|
||||||
else None,
|
if infractions_weight.count() > 0
|
||||||
embed=embeds,
|
else None,
|
||||||
ephemeral=False,
|
embed=embeds,
|
||||||
)
|
ephemeral=False,
|
||||||
|
)
|
||||||
|
else:
|
||||||
|
await ctx.send(
|
||||||
|
content=f"{user.mention} has {infractions_weight[0].total_infractions} infractions, for a total weight of {infractions_weight[0].total_weight:.2f}"
|
||||||
|
if infractions_weight.count() > 0
|
||||||
|
else None,
|
||||||
|
embed=embeds[:10],
|
||||||
|
ephemeral=False,
|
||||||
|
)
|
||||||
|
await ctx.send(embed=embeds[10:])
|
||||||
|
|
||||||
@slash_command(
|
@slash_command(
|
||||||
name="warn",
|
name="warn",
|
||||||
|
@ -209,7 +223,6 @@ class Infractions(Extension):
|
||||||
ephemeral=True,
|
ephemeral=True,
|
||||||
)
|
)
|
||||||
|
|
||||||
# TODO: Add this in again when GuildSettings is implemented
|
|
||||||
|
|
||||||
guild_settings: Optional[GuildSettings] = GuildSettings.get_or_none(GuildSettings.guild_id == int(ctx.guild_id))
|
guild_settings: Optional[GuildSettings] = GuildSettings.get_or_none(GuildSettings.guild_id == int(ctx.guild_id))
|
||||||
if guild_settings is not None:
|
if guild_settings is not None:
|
||||||
|
@ -271,6 +284,7 @@ class Infractions(Extension):
|
||||||
)
|
)
|
||||||
]
|
]
|
||||||
|
|
||||||
|
given_by: Member = await self.client.fetch_member(f"{infraction.given_by}", ctx.guild_id)
|
||||||
await ctx.send(
|
await ctx.send(
|
||||||
content="Remove this infraction? (times out in 60 seconds)",
|
content="Remove this infraction? (times out in 60 seconds)",
|
||||||
embed=Embed(
|
embed=Embed(
|
||||||
|
@ -284,7 +298,7 @@ class Infractions(Extension):
|
||||||
value=f"<t:{int(infraction.at_time.timestamp())}:F>",
|
value=f"<t:{int(infraction.at_time.timestamp())}:F>",
|
||||||
),
|
),
|
||||||
EmbedField(name="**Severity**", value=f"{infraction.weight}"),
|
EmbedField(name="**Severity**", value=f"{infraction.weight}"),
|
||||||
EmbedField(name="**Issued by**", value=f"{infraction.given_by}"),
|
EmbedField(name="**Issued by**", value=f"{given_by.display_name} ({given_by.username}#{given_by.discriminator})"),
|
||||||
],
|
],
|
||||||
),
|
),
|
||||||
ephemeral=True,
|
ephemeral=True,
|
|
@ -309,7 +309,6 @@ class Polls(Extension):
|
||||||
@listen(events.Button)
|
@listen(events.Button)
|
||||||
async def on_button(self, button: events.Button):
|
async def on_button(self, button: events.Button):
|
||||||
ctx = button.context
|
ctx = button.context
|
||||||
await ctx.defer(ephemeral=True)
|
|
||||||
|
|
||||||
# Ensure that the pressed button is a vote button.
|
# Ensure that the pressed button is a vote button.
|
||||||
if ctx.custom_id.startswith("poll-vote:"):
|
if ctx.custom_id.startswith("poll-vote:"):
|
||||||
|
@ -325,6 +324,7 @@ class Polls(Extension):
|
||||||
if poll_entry.expires and datetime.now() > poll_entry.expires:
|
if poll_entry.expires and datetime.now() > poll_entry.expires:
|
||||||
return
|
return
|
||||||
|
|
||||||
|
await ctx.defer(ephemeral=True)
|
||||||
if not poll_entry.multiple_choice:
|
if not poll_entry.multiple_choice:
|
||||||
votes_q: List[PollVotesModel] = PollVotesModel.select().where(
|
votes_q: List[PollVotesModel] = PollVotesModel.select().where(
|
||||||
PollVotesModel.poll_id == poll_id,
|
PollVotesModel.poll_id == poll_id,
|
|
@ -4,6 +4,9 @@ version = "0.1.0"
|
||||||
description = "A moderation and general-purpose Discord bot, originally intended for the Norwegian Language Learning community."
|
description = "A moderation and general-purpose Discord bot, originally intended for the Norwegian Language Learning community."
|
||||||
authors = ["Vegard Berg <vgberg@gmail.com>"]
|
authors = ["Vegard Berg <vgberg@gmail.com>"]
|
||||||
|
|
||||||
|
[tool.poetry.scripts]
|
||||||
|
heimdallr = "heimdallr.Heimdallr:main"
|
||||||
|
|
||||||
[tool.poetry.dependencies]
|
[tool.poetry.dependencies]
|
||||||
python = "^3.10"
|
python = "^3.10"
|
||||||
peewee = "^3.15.1"
|
peewee = "^3.15.1"
|
||||||
|
|
2
run.sh
2
run.sh
|
@ -1,6 +1,6 @@
|
||||||
#! /bin/sh
|
#! /bin/sh
|
||||||
if command -v poetry > /dev/null; then
|
if command -v poetry > /dev/null; then
|
||||||
poetry install -q && poetry run python Heimdallr.py
|
poetry install -q && poetry run python heimdallr/Heimdallr.py
|
||||||
else
|
else
|
||||||
echo "Poetry must be installed and available in the PATH" >&2
|
echo "Poetry must be installed and available in the PATH" >&2
|
||||||
fi
|
fi
|
Loading…
Reference in New Issue