Fix Database issues & Add Dummy /setup command
This commit is contained in:
parent
270c4391f1
commit
6792a45e48
|
@ -2,7 +2,7 @@
|
||||||
"name": "cx-oss",
|
"name": "cx-oss",
|
||||||
"version": "0.0.1",
|
"version": "0.0.1",
|
||||||
"description": "ConnectX Xantic",
|
"description": "ConnectX Xantic",
|
||||||
"main": "index.js",
|
"main": "src/index.js",
|
||||||
"scripts": {
|
"scripts": {
|
||||||
"test": "nodemon src/index",
|
"test": "nodemon src/index",
|
||||||
"start": "node src/index"
|
"start": "node src/index"
|
||||||
|
|
|
@ -0,0 +1,22 @@
|
||||||
|
const { SlashCommandBuilder } = require('discord.js');
|
||||||
|
|
||||||
|
module.exports = {
|
||||||
|
data: new SlashCommandBuilder()
|
||||||
|
.setName('setup')
|
||||||
|
.addChannelOption((o) => o
|
||||||
|
.setName("channel")
|
||||||
|
.setDescription("Channel to Chat with Xantic")
|
||||||
|
.setRequired(true)
|
||||||
|
).setDescription('Setup a Discord Server'),
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
* @param {import('discord.js').Interaction} interaction
|
||||||
|
*/
|
||||||
|
async execute(interaction) {
|
||||||
|
var channel = interaction.options.getChannel("channel");
|
||||||
|
|
||||||
|
console.log(channel);
|
||||||
|
|
||||||
|
await interaction.reply('Pong!');
|
||||||
|
},
|
||||||
|
};
|
30
src/index.js
30
src/index.js
|
@ -6,27 +6,31 @@ const path = require('node:path');
|
||||||
const { MongoClient } = require("mongodb");
|
const { MongoClient } = require("mongodb");
|
||||||
const { Client, Events, GatewayIntentBits, Collection } = require('discord.js');
|
const { Client, Events, GatewayIntentBits, Collection } = require('discord.js');
|
||||||
|
|
||||||
const client = new Client({ intents: [
|
const client = new Client({
|
||||||
|
intents: [
|
||||||
GatewayIntentBits.Guilds,
|
GatewayIntentBits.Guilds,
|
||||||
GatewayIntentBits.GuildMessages,
|
GatewayIntentBits.GuildMessages,
|
||||||
GatewayIntentBits.DirectMessages,
|
GatewayIntentBits.DirectMessages,
|
||||||
GatewayIntentBits.MessageContent
|
GatewayIntentBits.MessageContent
|
||||||
] });
|
]
|
||||||
|
});
|
||||||
|
|
||||||
async function main(){
|
async function main() {
|
||||||
if(config.database_adapter == "mongod"){
|
if (config.database_adapter == "mongod") {
|
||||||
const mongo_client = new MongoClient(config.database_uri);
|
const mongo_client = new MongoClient(config.database_uri);
|
||||||
|
|
||||||
await mongo_client.connect();
|
await mongo_client.connect();
|
||||||
console.log("Using MongoDB Connection for Database");
|
console.log("Using MongoDB Connection for Database");
|
||||||
|
|
||||||
require("../database/mongod").initMongoDBInstance(mongo_client, config , (back) => initMessageManager(back));
|
require("../database/mongod").initMongoDBInstance(mongo_client, config, (back) => initMessageManager(back));
|
||||||
}else if(config.database_adapter == "mysqld"){
|
} else if (config.database_adapter == "mysqld") {
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
async function initMessageManager(database){
|
async function initMessageManager(database) {
|
||||||
|
client.database = database;
|
||||||
|
|
||||||
database.build();
|
database.build();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -41,12 +45,11 @@ client.once(Events.ClientReady, readyClient => {
|
||||||
name: `Minecraft`,
|
name: `Minecraft`,
|
||||||
state: "2.0"
|
state: "2.0"
|
||||||
});
|
});
|
||||||
});
|
|
||||||
|
|
||||||
const foldersPath = path.join(__dirname, 'commands');
|
const foldersPath = path.join(__dirname, 'commands');
|
||||||
const commandFolders = fs.readdirSync(foldersPath);
|
const commandFolders = fs.readdirSync(foldersPath);
|
||||||
|
|
||||||
for (const folder of commandFolders) {
|
for (const folder of commandFolders) {
|
||||||
const commandsPath = path.join(foldersPath, folder);
|
const commandsPath = path.join(foldersPath, folder);
|
||||||
const commandFiles = fs.readdirSync(commandsPath).filter(file => file.endsWith('.js'));
|
const commandFiles = fs.readdirSync(commandsPath).filter(file => file.endsWith('.js'));
|
||||||
for (const file of commandFiles) {
|
for (const file of commandFiles) {
|
||||||
|
@ -60,9 +63,9 @@ for (const folder of commandFolders) {
|
||||||
console.log(`[WARNING] The command at ${filePath} is missing a required "data" or "execute" property.`);
|
console.log(`[WARNING] The command at ${filePath} is missing a required "data" or "execute" property.`);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
client.on(Events.InteractionCreate, async interaction => {
|
client.on(Events.InteractionCreate, async interaction => {
|
||||||
if (!interaction.isChatInputCommand()) return;
|
if (!interaction.isChatInputCommand()) return;
|
||||||
|
|
||||||
const command = interaction.client.commands.get(interaction.commandName);
|
const command = interaction.client.commands.get(interaction.commandName);
|
||||||
|
@ -82,6 +85,7 @@ client.on(Events.InteractionCreate, async interaction => {
|
||||||
await interaction.reply({ content: 'There was an error while executing this command!', ephemeral: true });
|
await interaction.reply({ content: 'There was an error while executing this command!', ephemeral: true });
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
// Login to ConnectX
|
// Login to ConnectX
|
||||||
|
|
Loading…
Reference in New Issue