Moved from Enmap/SQLite to MongoDB
This commit is contained in:
parent
7d1ca165b7
commit
606c1ea1dc
11 changed files with 214 additions and 112 deletions
|
@ -1,4 +1,4 @@
|
|||
const database = require("../utils/database.js");
|
||||
const Guild = require("../utils/database.js");
|
||||
const logger = require("../utils/logger.js");
|
||||
const misc = require("../utils/misc.js");
|
||||
const client = require("../utils/client.js");
|
||||
|
@ -6,6 +6,10 @@ const client = require("../utils/client.js");
|
|||
// run when the bot is added to a guild
|
||||
module.exports = async (guild) => {
|
||||
logger.log("info", `[GUILD JOIN] ${guild.name} (${guild.id}) added the bot. Owner: ${client.users.get(guild.ownerID).username}#${client.users.get(guild.ownerID).discriminator} (${guild.ownerID})`);
|
||||
database.settings.set(guild.id, misc.defaults);
|
||||
database.tags.set(guild.id, misc.tagDefaults);
|
||||
const guildDB = new Guild({
|
||||
id: guild.id,
|
||||
tags: misc.tagDefaults,
|
||||
prefix: "&"
|
||||
});
|
||||
await guildDB.save();
|
||||
};
|
||||
|
|
|
@ -1,9 +1,6 @@
|
|||
const database = require("../utils/database.js");
|
||||
const logger = require("../utils/logger.js");
|
||||
|
||||
// run when the bot is removed from a guild
|
||||
module.exports = async (guild) => {
|
||||
logger.log(`[GUILD LEAVE] ${guild.name} (${guild.id}) removed the bot.`);
|
||||
database.settings.delete(guild.id);
|
||||
database.tags.delete(guild.id);
|
||||
};
|
||||
|
|
|
@ -12,7 +12,7 @@ module.exports = async (message) => {
|
|||
|
||||
// prefix can be a mention or a set of special characters
|
||||
const prefixMention = new RegExp(`^<@!?${client.user.id}> `);
|
||||
const guildConf = database.settings.ensure(message.channel.guild.id, misc.defaults);
|
||||
const guildConf = (await database.find({ id: message.channel.guild.id }).exec())[0];
|
||||
const prefix = prefixMention.test(message.content) ? message.content.match(prefixMention)[0] : guildConf.prefix;
|
||||
|
||||
// ignore other stuff
|
||||
|
|
|
@ -7,10 +7,18 @@ const misc = require("../utils/misc.js");
|
|||
// run when ready
|
||||
module.exports = async () => {
|
||||
// make sure settings/tags exist
|
||||
client.guilds.forEach(guild => {
|
||||
database.settings.ensure(guild.id, misc.defaults);
|
||||
database.tags.ensure(guild.id, misc.tagDefaults);
|
||||
});
|
||||
for (const guild of client.guilds) {
|
||||
const guildDB = (await database.find({ id: guild.id }).exec())[0];
|
||||
if (!guildDB) {
|
||||
console.log(`Registering database entry for ${guild.id}...`);
|
||||
const newGuild = new database({
|
||||
id: guild.id,
|
||||
tags: misc.tagDefaults,
|
||||
prefix: "&"
|
||||
});
|
||||
await newGuild.save();
|
||||
}
|
||||
}
|
||||
|
||||
// set activity (a.k.a. the gamer code)
|
||||
(async function activityChanger() {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue