mirror of
https://github.com/ION606/selmerBot.git
synced 2026-05-14 21:26:54 +00:00
69 lines
1.6 KiB
JavaScript
69 lines
1.6 KiB
JavaScript
const fs = require('fs');
|
|
const { Client } = require('discord.js');
|
|
|
|
function mapToObj(map){
|
|
const obj = {}
|
|
for (let [k,v] of map) {
|
|
obj[k] = v
|
|
}
|
|
return obj
|
|
}
|
|
|
|
|
|
function objToMap(obj) {
|
|
const m = new Map();
|
|
for (i in obj) {
|
|
m.set(i, obj[i]);
|
|
}
|
|
return m;
|
|
}
|
|
|
|
|
|
async function backupLists(bot, IDM) {
|
|
try {
|
|
var backups = {}
|
|
backups.locked = mapToObj(bot.lockedChannels);
|
|
const bts = JSON.stringify({ "backups": backups });
|
|
|
|
if (IDM) {
|
|
fs.writeFile('commands/admin/backup.json', bts, 'utf8', (err) => {
|
|
// error checking
|
|
if(err) throw err;
|
|
|
|
console.log("New data added: " + bts);
|
|
process.exit(0);
|
|
});
|
|
} else {
|
|
process.env.backupLists = bts;
|
|
process.exit(0);
|
|
}
|
|
} catch (err) {
|
|
console.error(err);
|
|
exit(-1);
|
|
}
|
|
}
|
|
|
|
/**
|
|
* @param {Client} bot
|
|
* @param {Boolean} IDM
|
|
*/
|
|
async function loadBotBackups(bot, IDM) {
|
|
try {
|
|
if (IDM) {
|
|
const botBackups = require('../admin/backup.json').backups;
|
|
bot.lockedChannels = objToMap(botBackups.locked);
|
|
} else {
|
|
bot.lockedChannels = objToMap(JSON.parse(process.env.backupLists.locked));
|
|
}
|
|
|
|
// bot.user.setActivity("RESTARTING BOT, PLEASE STAND BY.mp3", { type: "LISTENING" }); // User is....undefined????
|
|
} catch (err) {
|
|
console.error(err);
|
|
bot.lockedChannels = new Map();
|
|
const a = new Map();
|
|
}
|
|
}
|
|
|
|
|
|
module.exports = { backupLists, loadBotBackups }
|