️ remove shop roles if rMember or rRole not found

This commit is contained in:
Axel Olausson Holtenäs 2022-04-17 23:05:13 +02:00
parent c38b515f33
commit a2e5f1545a
No known key found for this signature in database
GPG key ID: 7BF6826B76382CBA

View file

@ -57,25 +57,25 @@ export default async (client: Client) => {
if (!rRole) {
logger.error(`Role ${roleId} not found for shop role ${roleId}.`);
return;
}
if (!rMember) {
logger.error(`Member ${userId} not found for shop role ${roleId}.`);
return;
}
if (new Date() > nextPayment) {
await shopRoleSchema
.deleteOne({
userId,
roleId,
guildId,
})
.then(async () => {
logger.verbose(
`Shop role ${roleId} is due for payment. Withdrawing credits from user ${userId}.`
`Shop role document ${roleId} has been deleted from user ${userId}.`
);
const { pricePerHour } = guildData.shop.roles;
if (userData.credits < pricePerHour) {
})
.catch(async (error) => {
logger.error(
`User ${userId} does not have enough credits to pay for shop role ${roleId}.`
`Error deleting shop role document ${roleId} from user ${userId}.`,
error
);
});
return;
}
if (!rMember) {
logger.error(`Member ${userId} not found for shop role ${roleId}.`);
@ -99,6 +99,23 @@ export default async (client: Client) => {
return;
}
if (new Date() > nextPayment) {
logger.verbose(
`Shop role ${roleId} is due for payment. Withdrawing credits from user ${userId}.`
);
const { pricePerHour } = guildData.shop.roles;
if (userData.credits < pricePerHour) {
logger.error(
`User ${userId} does not have enough credits to pay for shop role ${roleId}.`
);
if (!rMember) {
logger.error(`Member ${userId} not found for shop role ${roleId}.`);
return;
}
rMember.roles.remove(roleId);
return;