Filled out remove presence some more. Not currently working.
build_develop / build (push) Successful in 1m25s

This commit is contained in:
2023-12-22 22:05:07 -05:00
parent 2f75f0cdcb
commit 2632bb883f
2 changed files with 21 additions and 11 deletions
+3 -1
View File
@@ -4,6 +4,7 @@ Cog loader. Adds all command cogs to the bot.
from nextcord.ext import commands
from cogs.commands.remove import RemoveCog
from cogs.commands.request import RequestCog
from cogs.commands.set import setCog
from cogs.commands.test import TestCog
@@ -17,7 +18,8 @@ def setup(bot: commands.Bot):
Adds all command classes to bot.
"""
bot.add_cog(RemoveCog())
bot.add_cog(RequestCog(bot))
bot.add_cog(TestCog(bot))
bot.add_cog(setCog())
bot.add_cog(ViewCog())
bot.add_cog(setCog())
+18 -10
View File
@@ -4,7 +4,7 @@ Commands for removing information in the database.
import nextcord
from nextcord.ext import commands
from sqlalchemy import select
from sqlalchemy import delete, select
from sqlalchemy.orm import Session
from database_setup.sql_data_classes import Presences, engine
@@ -33,21 +33,29 @@ class RemoveCog(commands.Cog, name="View Commands"):
async def presence(
self,
interaction: nextcord.Interaction,
presence: str = nextcord.SlashOption(
presence_str: str = nextcord.SlashOption(
description="The presence to remove", required=True
),
):
"""
_summary_
Deletes the given presence id from the database.
Args:
interaction (nextcord.Interaction): Interaction that invoked the command.
presence (str): Is SlashOption. The presence to remove.
presence (str): Is SlashOption. The presence to remove. Is the ID of the presence.
"""
@remove.on_autocomplete("presence")
async def election_autocomplete(
self, interaction: nextcord.Interaction, presence: str
presence_id = int(presence_str)
with Session(engine) as session:
stmt = delete(Presences).where(Presences.Id == presence_id)
session.execute(stmt)
session.commit()
await interaction.response.send_message("Presence deleted.", ephemeral=True)
@remove.on_autocomplete("presence_str")
async def presence_autocomplete(
self, interaction: nextcord.Interaction, presence_str: str
):
"""
Collects all presences that start with the presence string.
@@ -55,7 +63,7 @@ class RemoveCog(commands.Cog, name="View Commands"):
Args:
interaction (nextcord.Interaction): Interaction with command.
presence (str): String to run autocomplete on.
presence_str (str): String to run autocomplete on.
"""
with Session(engine) as session:
@@ -65,7 +73,7 @@ class RemoveCog(commands.Cog, name="View Commands"):
}
# if empty compare string
if not presence:
if not presence_str:
await interaction.response.send_autocomplete(
dict(list(presences_dict.items())[:25])
)
@@ -74,6 +82,6 @@ class RemoveCog(commands.Cog, name="View Commands"):
autofilled_presences: "dict[str,str]" = {
pres: pres_id
for pres, pres_id in presences_dict.items()
if presence.lower() in pres.lower()
if presence_str.lower() in pres.lower()
}
await interaction.response.send_autocomplete(autofilled_presences[:25])