Added database
This commit is contained in:
@@ -3,43 +3,43 @@ const fs = require('node:fs');
|
||||
const path = require('node:path');
|
||||
|
||||
module.exports = function deployCommands() {
|
||||
const commands = [];
|
||||
const commands = [];
|
||||
|
||||
const commandsPath = path.join(__dirname, '../commands');
|
||||
const commandFiles = fs.readdirSync(commandsPath).filter(file => file.endsWith('.js'));
|
||||
const commandsPath = path.join(__dirname, '../commands');
|
||||
const commandFiles = fs.readdirSync(commandsPath).filter(file => file.endsWith('.js'));
|
||||
|
||||
for (const file of commandFiles) {
|
||||
const filePath = path.join(commandsPath, file);
|
||||
const command = require(filePath);
|
||||
if ('data' in command && 'execute' in command) {
|
||||
commands.push(command.data.toJSON());
|
||||
} else {
|
||||
console.log(`[WARNING] The command at ${filePath} is missing a required "data" or "execute" property.`);
|
||||
}
|
||||
}
|
||||
for (const file of commandFiles) {
|
||||
const filePath = path.join(commandsPath, file);
|
||||
const command = require(filePath);
|
||||
if ('data' in command && 'execute' in command) {
|
||||
commands.push(command.data.toJSON());
|
||||
} else {
|
||||
console.log(`[WARNING] The command at ${filePath} is missing a required "data" or "execute" property.`);
|
||||
}
|
||||
}
|
||||
|
||||
const rest = new REST().setToken(process.env.DISCORD_TOKEN);
|
||||
const rest = new REST().setToken(process.env.DISCORD_TOKEN);
|
||||
|
||||
(async () => {
|
||||
try {
|
||||
console.log(`Started refreshing ${commands.length} application (/) commands.`);
|
||||
(async () => {
|
||||
try {
|
||||
console.log(`Started refreshing ${commands.length} application (/) commands.`);
|
||||
|
||||
let data;
|
||||
if (process.env.GUILD_ID === 'production') {
|
||||
data = await rest.put(
|
||||
Routes.applicationCommands(process.env.DISCORD_APPLICATION_ID),
|
||||
{ body: commands },
|
||||
);
|
||||
} else {
|
||||
data = await rest.put(
|
||||
Routes.applicationGuildCommands(process.env.DISCORD_APPLICATION_ID, process.env.GUILD_ID),
|
||||
{ body: commands },
|
||||
);
|
||||
}
|
||||
let data;
|
||||
if (process.env.GUILD_ID === 'production') {
|
||||
data = await rest.put(
|
||||
Routes.applicationCommands(process.env.DISCORD_APPLICATION_ID),
|
||||
{ body: commands },
|
||||
);
|
||||
} else {
|
||||
data = await rest.put(
|
||||
Routes.applicationGuildCommands(process.env.DISCORD_APPLICATION_ID, process.env.GUILD_ID),
|
||||
{ body: commands },
|
||||
);
|
||||
}
|
||||
|
||||
console.log(`Successfully reloaded ${data.length} application (/) commands.`);
|
||||
} catch (error) {
|
||||
console.error(error);
|
||||
}
|
||||
})();
|
||||
console.log(`Successfully reloaded ${data.length} application (/) commands.`);
|
||||
} catch (error) {
|
||||
console.error(error);
|
||||
}
|
||||
})();
|
||||
};
|
||||
|
@@ -1,9 +1,9 @@
|
||||
const { EmbedBuilder } = require('discord.js');
|
||||
|
||||
const simpleEmbed = (value) => {
|
||||
return new EmbedBuilder()
|
||||
.setColor(process.env.EMBED_COLOR)
|
||||
.setDescription(value);
|
||||
return new EmbedBuilder()
|
||||
.setColor(process.env.EMBED_COLOR)
|
||||
.setDescription(value);
|
||||
};
|
||||
|
||||
module.exports = { simpleEmbed };
|
||||
|
56
discordbot/functions/models.js
Normal file
56
discordbot/functions/models.js
Normal file
@@ -0,0 +1,56 @@
|
||||
const { sequelize } = require('../index');
|
||||
const Sequelize = require('sequelize');
|
||||
|
||||
const Users = sequelize.define('users', {
|
||||
id: {
|
||||
type: Sequelize.STRING,
|
||||
primaryKey: true,
|
||||
unique: true,
|
||||
},
|
||||
teamId: {
|
||||
type: Sequelize.STRING,
|
||||
},
|
||||
moderator: {
|
||||
type: Sequelize.BOOLEAN,
|
||||
defaultValue: false,
|
||||
},
|
||||
admin: {
|
||||
type: Sequelize.BOOLEAN,
|
||||
defaultValue: false,
|
||||
},
|
||||
});
|
||||
|
||||
const Teams = sequelize.define('teams', {
|
||||
name: {
|
||||
type: Sequelize.STRING,
|
||||
unique: true,
|
||||
validate: {
|
||||
len: [3, 16],
|
||||
isAlphanumeric: true,
|
||||
},
|
||||
},
|
||||
color: {
|
||||
type: Sequelize.STRING,
|
||||
validate: {
|
||||
is: /^#?([A-Fa-f0-9]{6}|[A-Fa-f0-9]{3})$/,
|
||||
},
|
||||
},
|
||||
});
|
||||
|
||||
const Minecraft = sequelize.define('minecraft', {
|
||||
uuid: {
|
||||
type: Sequelize.UUID,
|
||||
unique: true,
|
||||
primaryKey: true,
|
||||
},
|
||||
whitelisted: {
|
||||
type: Sequelize.BOOLEAN,
|
||||
defaultValue: false,
|
||||
},
|
||||
code: {
|
||||
type: Sequelize.STRING,
|
||||
unique: true,
|
||||
},
|
||||
});
|
||||
|
||||
module.exports = { Users, Teams, Minecraft };
|
Reference in New Issue
Block a user