diff --git a/broccolini-discord.js b/broccolini-discord.js index 20f4f1e..58fb0e6 100644 --- a/broccolini-discord.js +++ b/broccolini-discord.js @@ -6,6 +6,7 @@ const { Client, GatewayIntentBits, Partials } = require('discord.js'); const express = require('express'); const { connectMongoDB } = require('./db-connection'); const { CONFIG } = require('./config'); +const { mongoose } = require('./db-connection'); // Handlers const { handleButton, handleTicketModal } = require('./handlers/buttons'); diff --git a/commands/register.js b/commands/register.js index dd3c438..b6c0473 100644 --- a/commands/register.js +++ b/commands/register.js @@ -574,15 +574,17 @@ async function registerCommands() { ) ), + + new SlashCommandBuilder() .setName('signature') .setDescription('Set your personal email signature (valediction, display name, tagline)') .setContexts([InteractionContextType.Guild]) .setIntegrationTypes([ApplicationIntegrationType.GuildInstall]) - .setDefaultMemberPermissions(PermissionFlagsBits.ManageMessages) - ), + .setDefaultMemberPermissions(PermissionFlagsBits.ManageMessages) + ]; - const contextMenuCommands = [ + const contextMenuCommands = [ new ContextMenuCommandBuilder() .setName('Create Ticket From Message') .setType(ApplicationCommandType.Message) diff --git a/services/gmail.js b/services/gmail.js index 69ed16a..805a5f2 100644 --- a/services/gmail.js +++ b/services/gmail.js @@ -157,54 +157,10 @@ async function sendTicketClosedEmail(ticket, discordDisplayName) { } } +// StaffSignature model is registered in models.js; re-import here for use in this file const { mongoose } = require('../db-connection'); const StaffSignature = mongoose.model('StaffSignature'); -/** - * Get formatted signature blocks (text and HTML) for a staff member - * @param {string} userId - Discord user ID - * @returns {Promise<{text: string, html: string}>} Signature blocks - */ -async function getStaffSignatureBlocks(userId) { - try { - const signature = await StaffSignature.findOne({ userId }).lean(); - - if (!signature) { - return { - text: '', - html: '' - }; - } - - const valediction = signature.valediction || ''; - const displayName = signature.displayName || ''; - const tagline = signature.tagline || ''; - - const textSignature = [ - valediction, - displayName, - tagline - ].filter(Boolean).join('\n'); - - const htmlSignature = [ - valediction ? `
${escapeHtml(valediction)}
` : '', - displayName ? `${escapeHtml(displayName)}
` : '', - tagline ? `