13.0.0 invoice features + configuration
This commit is contained in:
7 files changed
+418
-13
No files matched your search
@@ -175,6 +175,7 @@ class QuarksBot extends Client {
|
||||
dispatcherRole: null,
|
||||
onlyOfficersSearch: false,
|
||||
casinoMultiplier: 2,
|
||||
canIgnoreInvoices: true,
|
||||
}
|
||||
}
|
||||
this.dbo.collection("guilds").insertOne(guild, function(err, res) {
|
||||
@@ -199,6 +200,7 @@ class QuarksBot extends Client {
|
||||
onlyOfficersSearch: guild.server.onlyOfficersSearch,
|
||||
botAdmin: guild.server.botAdmin,
|
||||
casinoMultiplier: guild.server.casinoMultiplier,
|
||||
canIgnoreInvoices: guild.server.canIgnoreInvoices,
|
||||
}
|
||||
return guildData;
|
||||
}
|
||||
|
||||
@@ -0,0 +1,43 @@
|
||||
const mongoose = require('mongoose');
|
||||
|
||||
let invoiceSchema = mongoose.Schema({
|
||||
invoiceDB: {
|
||||
userID: String,
|
||||
guilds: {},
|
||||
}
|
||||
});
|
||||
|
||||
invoiceSchema.methods.createInvoiceDB = function (userID, guildID) {
|
||||
this.invoiceDB.userID = userID;
|
||||
this.invoiceDB.guilds = {};
|
||||
this.invoiceDB.guilds[guildID] = { invoices: [] };
|
||||
};
|
||||
|
||||
/*
|
||||
This function is to add a new guild specific invoice list to an already existing
|
||||
invoiceDB document
|
||||
or
|
||||
can be used to reset a data back to default
|
||||
*/
|
||||
async function addInvoiceList(guilds, guildID, userID, client) {
|
||||
let updatedGuilds = guilds;
|
||||
updatedGuilds[guildID] = { invoices: [] };
|
||||
|
||||
await client.dbo.collection("invoices").updateOne({"invoiceDB.userID":userID}, {$set: {"invoiceDB.guilds": updatedGuilds}}, function(err, res) {
|
||||
if (err) return false
|
||||
})
|
||||
return true
|
||||
}
|
||||
|
||||
async function addInvoice(guildID, userID, invoice, client) {
|
||||
await client.dbo.collection("invoices").updateOne({"invoiceDB.userID": userID}, {$push: {[`invoiceDB.guilds.${guildID}.invoices`]: invoice}}, function(err, res) {
|
||||
if (err) return false
|
||||
})
|
||||
return true
|
||||
}
|
||||
|
||||
module.exports = {
|
||||
Invoice: mongoose.model('Invoice', invoiceSchema),
|
||||
addInvoiceList: addInvoiceList,
|
||||
addInvoice: addInvoice,
|
||||
};
|
||||
Reference in new issue
Block a user