swapped to a new db locally hosted
This commit is contained in:
@@ -1,4 +1,5 @@
|
||||
const { SlashCommandBuilder, ActionRowBuilder, ChannelSelectMenuBuilder, StringSelectMenuBuilder, ModalBuilder, TextInputBuilder, TextInputStyle, ComponentType } = require('discord.js');
|
||||
const api = require('../api');
|
||||
const { readDb, writeDb } = require('../../backend/db.js');
|
||||
|
||||
const defaultLeaveMessages = ["{user} has left the server.", "Goodbye, {user}.", "We'll miss you, {user}."];
|
||||
@@ -38,8 +39,19 @@ module.exports = {
|
||||
});
|
||||
|
||||
const channelId = channelConfirmation.values[0];
|
||||
db[guildId].leaveChannel = channelId;
|
||||
db[guildId].leaveEnabled = true;
|
||||
try {
|
||||
const existing = (await api.getServerSettings(guildId)) || {};
|
||||
existing.leaveEnabled = true;
|
||||
existing.leaveChannel = channelId;
|
||||
await api.upsertServerSettings(guildId, existing);
|
||||
} catch (e) {
|
||||
console.error('Error persisting leave settings to backend, falling back to local:', e);
|
||||
const db = readDb();
|
||||
if (!db[guildId]) db[guildId] = {};
|
||||
db[guildId].leaveChannel = channelId;
|
||||
db[guildId].leaveEnabled = true;
|
||||
writeDb(db);
|
||||
}
|
||||
|
||||
const messageOptions = defaultLeaveMessages.map(msg => ({
|
||||
label: msg.length > 100 ? msg.substring(0, 97) + '...' : msg,
|
||||
@@ -92,8 +104,17 @@ module.exports = {
|
||||
});
|
||||
|
||||
const customMessage = modalSubmit.fields.getTextInputValue('custom_message_input');
|
||||
db[guildId].leaveMessage = customMessage;
|
||||
writeDb(db);
|
||||
try {
|
||||
const existing = (await api.getServerSettings(guildId)) || {};
|
||||
existing.leaveMessage = customMessage;
|
||||
await api.upsertServerSettings(guildId, existing);
|
||||
} catch (e) {
|
||||
console.error('Error persisting leave message to backend, falling back to local:', e);
|
||||
const db = readDb();
|
||||
if (!db[guildId]) db[guildId] = {};
|
||||
db[guildId].leaveMessage = customMessage;
|
||||
writeDb(db);
|
||||
}
|
||||
|
||||
await modalSubmit.reply({
|
||||
content: `Leave message setup complete! Channel: <#${channelId}>, Message: "${customMessage}"`,
|
||||
@@ -101,8 +122,17 @@ module.exports = {
|
||||
});
|
||||
|
||||
} else {
|
||||
db[guildId].leaveMessage = selectedMessage;
|
||||
writeDb(db);
|
||||
try {
|
||||
const existing = (await api.getServerSettings(guildId)) || {};
|
||||
existing.leaveMessage = selectedMessage;
|
||||
await api.upsertServerSettings(guildId, existing);
|
||||
} catch (e) {
|
||||
console.error('Error persisting leave message to backend, falling back to local:', e);
|
||||
const db = readDb();
|
||||
if (!db[guildId]) db[guildId] = {};
|
||||
db[guildId].leaveMessage = selectedMessage;
|
||||
writeDb(db);
|
||||
}
|
||||
await messageConfirmation.update({
|
||||
content: `Leave message setup complete! Channel: <#${channelId}>, Message: "${selectedMessage}"`,
|
||||
components: [],
|
||||
|
||||
Reference in New Issue
Block a user