Add removal of data on startup for guilds deleted during downtime
This commit is contained in:
parent
6013b0dcbf
commit
c48c443854
|
@ -52,7 +52,10 @@ function doGuildIteration() {
|
|||
function parseLinksInGuilds() {
|
||||
const promises = [];
|
||||
client.guildDataModel.find().then(guildDatas =>
|
||||
guildDatas.forEach(guildData => promises.push(guildData.cachePastPostedLinks(client.guilds.get(guildData.guildID)))));
|
||||
guildDatas.forEach(guildData => {
|
||||
if (client.guilds.get(guildData.guildID))
|
||||
promises.push(guildData.cachePastPostedLinks(client.guilds.get(guildData.guildID)));
|
||||
}));
|
||||
|
||||
return Promise.all(promises);
|
||||
}
|
|
@ -35,20 +35,11 @@ module.exports = class Client extends Discord.Client {
|
|||
process.on("uncaughtException", err => this._onUnhandledException(this, err));
|
||||
}
|
||||
|
||||
bootstrap() {
|
||||
Camo.connect("nedb://guilds-data").then(db => {
|
||||
neDB = db;
|
||||
|
||||
this.emit("beforeLogin");
|
||||
this.login(this._token);
|
||||
});
|
||||
}
|
||||
|
||||
_onReady() {
|
||||
this.user.setGame(InternalConfig.website.replace(/^https?:\/\//, ""));
|
||||
CoreUtil.dateLog(`Registered bot ${this.user.username}`);
|
||||
|
||||
new CronJob(InternalConfig.dbCompactionSchedule, () => compactCollections(), null, true);
|
||||
this.removeDeletedGuilds();
|
||||
}
|
||||
|
||||
_onMessage(message) {
|
||||
|
@ -80,6 +71,24 @@ module.exports = class Client extends Discord.Client {
|
|||
setTimeout(() => client.login(client._token), InternalConfig.reconnectTimeout);
|
||||
});
|
||||
}
|
||||
|
||||
bootstrap() {
|
||||
Camo.connect("nedb://guilds-data").then(db => {
|
||||
neDB = db;
|
||||
new CronJob(InternalConfig.dbCompactionSchedule, compactCollections, null, true);
|
||||
|
||||
this.emit("beforeLogin");
|
||||
this.login(this._token);
|
||||
});
|
||||
}
|
||||
|
||||
removeDeletedGuilds() {
|
||||
this.guildDataModel.find().then(guildDatas => {
|
||||
for (let guildData of guildDatas)
|
||||
if (!this.guilds.get(guildData.guildID))
|
||||
guildData.delete();
|
||||
});
|
||||
}
|
||||
};
|
||||
|
||||
function compactCollections() {
|
||||
|
|
Loading…
Reference in a new issue