diff --git a/src/commands/credits/addons/balance.js b/src/commands/credits/addons/balance.js index a52446f..a917e2c 100644 --- a/src/commands/credits/addons/balance.js +++ b/src/commands/credits/addons/balance.js @@ -8,9 +8,13 @@ module.exports = async (interaction) => { try { const user = await interaction.options.getUser('user'); + console.log(interaction.member.guild.id); + await credits .findOne({ userId: user ? user.id : interaction.user.id, guildId: interaction.member.guild.id }) .then(async (data) => { + console.log(data); + if (!data) { const embed = { title: 'Balance', diff --git a/src/commands/credits/addons/settings.js b/src/commands/credits/addons/settings.js index 285246c..6650db2 100644 --- a/src/commands/credits/addons/settings.js +++ b/src/commands/credits/addons/settings.js @@ -9,6 +9,7 @@ module.exports = async (interaction) => { const url = await interaction.options.getString('url'); const token = await interaction.options.getString('token'); const rate = await interaction.options.getNumber('rate'); + const timeout = await interaction.options.getNumber('timeout'); const minimumLength = await interaction.options.getNumber('minimum-length'); const guild = await guilds.findOne({ guildId: interaction.member.guild.id }); @@ -17,6 +18,7 @@ module.exports = async (interaction) => { guild.credits.url = url !== null ? url : guild.credits.url; guild.credits.token = token !== null ? token : guild.credits.token; guild.credits.rate = rate !== null ? rate : guild.credits.rate; + guild.credits.timeout = timeout !== null ? timeout : guild.credits.timeout; // eslint-disable-next-line max-len guild.credits.minimumLength = minimumLength !== null ? minimumLength : guild.credits.minimumLength; @@ -25,7 +27,7 @@ module.exports = async (interaction) => { title: 'Credits', description: 'Following settings is set', color: config.colors.success, - fields: [{ name: 'Status', value: `${guild.credits.status}`, inline: true }, { name: 'URL', value: `${guild.credits.url}`, inline: true }, { name: 'Token', value: `${guild.credits.token}` }, { name: 'Rate', value: `${guild.credits.rate}`, inline: true }, { name: 'Minimum Length', value: `${guild.credits.minimumLength}`, inline: true }], + fields: [{ name: 'Status', value: `${guild.credits.status}`, inline: true }, { name: 'URL', value: `${guild.credits.url}`, inline: true }, { name: 'Token', value: `${guild.credits.token}` }, { name: 'Rate', value: `${guild.credits.rate}`, inline: true }, { name: 'Minimum Length', value: `${guild.credits.minimumLength}`, inline: true }, { name: 'Timeout', value: `${guild.credits.timeout}`, inline: true }], timestamp: new Date(), footer: { iconURL: config.footer.icon, text: config.footer.text }, }; diff --git a/src/commands/credits/index.js b/src/commands/credits/index.js index bee2b97..755cff3 100644 --- a/src/commands/credits/index.js +++ b/src/commands/credits/index.js @@ -91,7 +91,10 @@ module.exports = { .setDescription('Credits rate.')) .addNumberOption((option) => option .setName('minimum-length') - .setDescription('Minimum length for credits.'))), + .setDescription('Minimum length for credits.')) + .addNumberOption((option) => option + .setName('timeout') + .setDescription('Timeout between credits (milliseconds).'))), async execute(interaction) { const guild = await guilds.findOne({ guildId: interaction.member.guild.id }); diff --git a/src/helpers/database/models/guildSchema.js b/src/helpers/database/models/guildSchema.js index e05bcee..a44aeef 100644 --- a/src/helpers/database/models/guildSchema.js +++ b/src/helpers/database/models/guildSchema.js @@ -25,6 +25,9 @@ const guildSchema = new mongoose.Schema( minimumLength: { type: mongoose.SchemaTypes.Number, default: 5, }, + timeout: { + type: mongoose.SchemaTypes.Number, default: 5000, + }, }, }, { timestamps: true },