Files
2024-03-03 10:51:42 +01:00

71 lines
2.5 KiB
JavaScript

const sqlite3 = require('sqlite3').verbose();
const db = new sqlite3.Database('myDatabase.db');
const { EmbedBuilder } = require('discord.js');
module.exports = {
name: 'confession',
description: 'Evnoie une comfession.',
category: 'utils',
emote: '🙏',
utilisation: 'confession <confession>',
async execute(message, args, client) {
const ConfessionMessageToSend = args.join(' ');
let data = await new Promise((resolve, reject) => {
db.get('SELECT value FROM gestion WHERE id = ?', [client.user.id], (err, row) => {
if (err) {
console.error(err.message);
reject(err);
}
resolve(row ? JSON.parse(row.value) : {});
});
});
data.confession = data.confession || {};
data.confession.channel = data.confession.channel || {};
const guildId = message.guild.id;
const channelId = data.confession.channel[guildId];
if (!channelId) {
try {
await message.delete();
const sentMessage = await message.channel.send({ content: "Le salon de confession n'est pas défini." });
setTimeout(async () => {
await sentMessage.delete();
}, 2500);
} catch(err) {
}
return;
}
const embed = new EmbedBuilder()
.setTitle('**Nouvelle Confession**')
.setAuthor({ name: 'Confidentiel' })
.setDescription(ConfessionMessageToSend)
.setFooter({ text: `${message.client.user.username} - ${message.guild.name}` })
.setColor('#0099ff');
const channel = message.guild.channels.cache.get(channelId);
if (channel) {
try {
await message.delete();
channel.send({ embeds: [embed] });
const sentMessage = await message.channel.send({ content: "Votre confession a été envoyée."});
setTimeout(async () => {
await sentMessage.delete();
}, 2500);
} catch(err) {
message.reply("Une erreur est survenue lors de l'envoie de la confession")
}
} else {
try {
await message.delete();
const sentMessage= await message.channel.send({ content: "Le salon spécifié n'a pas été trouvé."});
setTimeout(async () => {
await sentMessage.delete();
}, 2500);
} catch(err) {
}
}
},
};