aboutsummaryrefslogtreecommitdiff
path: root/174bg/discord-bot/commands/requisition.js
diff options
context:
space:
mode:
authorAlex Pooley (@zuedev) <zuedev@gmail.com>2026-07-15 13:56:24 +0100
committerAlex Pooley (@zuedev) <zuedev@gmail.com>2026-07-15 13:56:24 +0100
commita8cd84b8291990265dbdddcdaa079886234180a1 (patch)
tree20dec2454dc7ee331f29d53b339f0f26a384b56a /174bg/discord-bot/commands/requisition.js
parentc488c4840588fd88fa840306c40ab99ebb3512b9 (diff)
downloadunnamed-group-a8cd84b8291990265dbdddcdaa079886234180a1.tar
unnamed-group-a8cd84b8291990265dbdddcdaa079886234180a1.tar.gz
unnamed-group-a8cd84b8291990265dbdddcdaa079886234180a1.tar.bz2
unnamed-group-a8cd84b8291990265dbdddcdaa079886234180a1.tar.xz
unnamed-group-a8cd84b8291990265dbdddcdaa079886234180a1.zip
refactor codebase for dry
Diffstat (limited to '174bg/discord-bot/commands/requisition.js')
-rw-r--r--174bg/discord-bot/commands/requisition.js32
1 files changed, 32 insertions, 0 deletions
diff --git a/174bg/discord-bot/commands/requisition.js b/174bg/discord-bot/commands/requisition.js
new file mode 100644
index 0000000..be3cb8a
--- /dev/null
+++ b/174bg/discord-bot/commands/requisition.js
@@ -0,0 +1,32 @@
+import { SlashCommandBuilder } from "discord.js";
+import createTicket from "../utilities/createTicket.js";
+import notifyRoleByName from "../utilities/notifyRoleByName.js";
+
+export default {
+ data: new SlashCommandBuilder()
+ .setName("requisition")
+ .setDescription(
+ "Request items from the quartermaster. A new requisition ticket will be created.",
+ )
+ .addStringOption((option) =>
+ option
+ .setName("contents")
+ .setDescription("What are you requesting? Be as specific as possible.")
+ .setRequired(true),
+ ),
+ execute: async (interaction) => {
+ const contents = interaction.options.getString("contents");
+
+ const ticket = await createTicket(interaction, ["quartermaster"]);
+
+ await ticket.send({
+ content: `**New requisition request from <@${interaction.user.id}>**: ${contents}`,
+ });
+
+ // reply to the user
+ await interaction.reply({
+ content: `Your requisition ticket has been created: <#${ticket.id}>`,
+ ephemeral: true,
+ });
+ },
+};