aboutsummaryrefslogtreecommitdiff
path: root/174bg/discord-bot/commands/requisition.js
diff options
context:
space:
mode:
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,
+ });
+ },
+};