Merge pull request #25 from VermiumSifell/main

fix a non critical error
This commit is contained in:
Axel Olausson Holtenäs 2022-03-14 18:05:14 +01:00 committed by GitHub
commit 25fe5528a1
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -48,91 +48,93 @@ module.exports = {
{ new: true, upsert: true }
);
// If message length is below guild minimum length
if (message.content.length < guild.credits.minimumLength) return;
if (guild.credits && guild.points) {
// If message length is below guild minimum length
if (message.content.length < guild.credits.minimumLength) return;
// Needs to be updated for multi-guild to function properly
// if (config.credits.excludedChannels.includes(message.channel.id)) return;
// Needs to be updated for multi-guild to function properly
// if (config.credits.excludedChannels.includes(message.channel.id)) return;
// Check if user has a timeout
const isTimeout = await timeouts.findOne({
guildId: message.guild.id,
userId: message.author.id,
timeoutId: 1,
});
// If user is not on timeout
if (!isTimeout) {
// Add credits to user
await credits
.findOneAndUpdate(
{ userId: message.author.id, guildId: message.guild.id },
{ $inc: { balance: guild.credits.rate } },
{ new: true, upsert: true }
)
// If successful
.then(async () => {
// Send debug message
logger.debug(
`Guild: ${message.guild.id} Credits added to user: ${message.author.id}`
);
})
// If error
.catch(async (err) => {
// Send error message
await logger.error(err);
});
// Add points to user
await experiences
.findOneAndUpdate(
{ userId: message.author.id, guildId: message.guild.id },
{ $inc: { points: guild.points.rate } },
{ new: true, upsert: true }
)
// If successful
.then(async () => {
// Send debug message
logger.debug(
`Guild: ${message.guild.id} Points added to user: ${message.author.id}`
);
})
// If error
.catch(async (err) => {
// Send error message
await logger.error(err);
});
// Create a timeout for the user
await timeouts.create({
// Check if user has a timeout
const isTimeout = await timeouts.findOne({
guildId: message.guild.id,
userId: message.author.id,
timeoutId: 1,
});
setTimeout(async () => {
// Send debug message
await logger.debug(
`Guild: ${message.guild.id} User: ${
message.author.id
} has not talked within last ${
guild.credits.timeout / 1000
} seconds, credits can be given`
);
// If user is not on timeout
if (!isTimeout) {
// Add credits to user
await credits
.findOneAndUpdate(
{ userId: message.author.id, guildId: message.guild.id },
{ $inc: { balance: guild.credits.rate } },
{ new: true, upsert: true }
)
// When timeout is out, remove it from the database
await timeouts.deleteOne({
// If successful
.then(async () => {
// Send debug message
logger.debug(
`Guild: ${message.guild.id} Credits added to user: ${message.author.id}`
);
})
// If error
.catch(async (err) => {
// Send error message
await logger.error(err);
});
// Add points to user
await experiences
.findOneAndUpdate(
{ userId: message.author.id, guildId: message.guild.id },
{ $inc: { points: guild.points.rate } },
{ new: true, upsert: true }
)
// If successful
.then(async () => {
// Send debug message
logger.debug(
`Guild: ${message.guild.id} Points added to user: ${message.author.id}`
);
})
// If error
.catch(async (err) => {
// Send error message
await logger.error(err);
});
// Create a timeout for the user
await timeouts.create({
guildId: message.guild.id,
userId: message.author.id,
timeoutId: 1,
});
}, guild.credits.timeout);
setTimeout(async () => {
// Send debug message
await logger.debug(
`Guild: ${message.guild.id} User: ${
message.author.id
} has not talked within last ${
guild.credits.timeout / 1000
} seconds, credits can be given`
);
// When timeout is out, remove it from the database
await timeouts.deleteOne({
guildId: message.guild.id,
userId: message.author.id,
timeoutId: 1,
});
}, guild.credits.timeout);
}
} else {
// Sned debug message
// Send debug message
await logger.debug(
`Guild: ${message.guild.id} User: ${
message.author.id